qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Alexey Kardashevskiy <aik@ozlabs.ru>
To: qemu-devel@nongnu.org
Cc: Alexey Kardashevskiy <aik@ozlabs.ru>,
	Tom Musta <tommusta@gmail.com>,
	qemu-ppc@nongnu.org, Alexander Graf <agraf@suse.de>
Subject: [Qemu-devel] [PATCH 4/9] target-ppc: Refactor init_proc_POWER8
Date: Wed, 21 May 2014 16:20:23 +1000	[thread overview]
Message-ID: <1400653228-31540-5-git-send-email-aik@ozlabs.ru> (raw)
In-Reply-To: <1400653228-31540-1-git-send-email-aik@ozlabs.ru>

This duplicates code of init_proc_POWER7() in init_proc_POWER8() as
there will be registers implemented in POWER7 and missing in POWER8
so we need separate init functions for POWER7 and POWER8.

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
---
 target-ppc/translate_init.c | 27 ++++++++++++++++++++++++---
 1 file changed, 24 insertions(+), 3 deletions(-)

diff --git a/target-ppc/translate_init.c b/target-ppc/translate_init.c
index b92b447..3c37e93 100644
--- a/target-ppc/translate_init.c
+++ b/target-ppc/translate_init.c
@@ -7953,10 +7953,31 @@ POWERPC_FAMILY(POWER7P)(ObjectClass *oc, void *data)
 
 static void init_proc_POWER8(CPUPPCState *env)
 {
-    /* inherit P7 */
-    init_proc_POWER7(env);
+    gen_spr_ne_601(env);
+    gen_spr_7xx(env);
+    /* Time base */
+    gen_tbl(env);
+    gen_spr_book3s_ids(env);
+    gen_spr_book3s_common(env);
+    gen_spr_amr(env);
+    gen_spr_book3s_vr(env);
+    gen_spr_book3s_lpar(env);
+    gen_spr_book3s_purr(env);
+    gen_spr_book3s_debug(env);
+    gen_spr_book3s_pmu(env);
+#if !defined(CONFIG_USER_ONLY)
+    env->slb_nr = 32;
+#endif /* !CONFIG_USER_ONLY */
+    init_excp_POWER7(env);
+    env->dcache_line_size = 128;
+    env->icache_line_size = 128;
+
+    /* Allocate hardware IRQ controller */
+    ppcPOWER7_irq_init(env);
+    /* Can't find information on what this should be on reset.  This
+     * value is the one used by 74xx processors. */
+    vscr_init(env, 0x00010000);
 
-    /* P8 supports the TAR */
     spr_register(env, SPR_TAR, "TAR",
                  &spr_read_generic, &spr_write_generic,
                  &spr_read_generic, &spr_write_generic,
-- 
1.9.rc0

  parent reply	other threads:[~2014-05-21  6:21 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-21  6:20 [Qemu-devel] [PATCH 0/9] POWER8 patches Alexey Kardashevskiy
2014-05-21  6:20 ` [Qemu-devel] [PATCH 1/9] target-ppc: Rename MMCR0/1 contants Alexey Kardashevskiy
2014-05-21 16:55   ` Tom Musta
2014-05-22  2:53     ` Alexey Kardashevskiy
2014-05-21  6:20 ` [Qemu-devel] [PATCH 2/9] target-ppc: Refactor init_proc_POWER7 Alexey Kardashevskiy
2014-05-21 10:44   ` Alexander Graf
2014-05-21 12:30     ` Alexey Kardashevskiy
2014-05-21 13:23       ` Alexander Graf
2014-05-22  3:59         ` Alexey Kardashevskiy
2014-05-22  7:08           ` Alexander Graf
2014-05-21  6:20 ` [Qemu-devel] [PATCH 3/9] target-ppc: Add POWER7 SPRs Alexey Kardashevskiy
2014-05-21 17:17   ` Tom Musta
2014-05-21  6:20 ` Alexey Kardashevskiy [this message]
2014-05-21 17:22   ` [Qemu-devel] [PATCH 4/9] target-ppc: Refactor init_proc_POWER8 Tom Musta
2014-05-21  6:20 ` [Qemu-devel] [PATCH 5/9] target-ppc: Add POWER8 SPRs Alexey Kardashevskiy
2014-05-21 10:47   ` Alexander Graf
2014-05-21 18:08   ` Tom Musta
2014-05-21  6:20 ` [Qemu-devel] [PATCH 6/9] target-ppc: Enable PPR and VRSAVE SPRs migration Alexey Kardashevskiy
2014-05-21 10:53   ` Alexander Graf
2014-05-21  6:20 ` [Qemu-devel] [PATCH 7/9] KVM: target-ppc: Enable transactional state migration Alexey Kardashevskiy
2014-05-21 18:11   ` Tom Musta
2014-05-22  2:50     ` Alexey Kardashevskiy
2014-05-22 11:39       ` Tom Musta
2014-05-21  6:20 ` [Qemu-devel] [PATCH 8/9] spapr_hcall: Split h_set_mode() Alexey Kardashevskiy
2014-05-21  6:20 ` [Qemu-devel] [PATCH 9/9] spapr_hcall: Add address-translation-mode-on-interrupt resource in H_SET_MODE Alexey Kardashevskiy
2014-05-21 11:44   ` Alexander Graf
2014-05-21 12:24     ` Alexey Kardashevskiy
2014-05-21 12:25       ` Alexander Graf
2014-05-21 12:26   ` [Qemu-devel] [Qemu-ppc] " Greg Kurz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1400653228-31540-5-git-send-email-aik@ozlabs.ru \
    --to=aik@ozlabs.ru \
    --cc=agraf@suse.de \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@nongnu.org \
    --cc=tommusta@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).