[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-ppc] [PULL 3/6] target/ppc: Implement TIDR
From: |
David Gibson |
Subject: |
[Qemu-ppc] [PULL 3/6] target/ppc: Implement TIDR |
Date: |
Wed, 9 Aug 2017 17:03:54 +1000 |
This adds a trivial implementation of the TIDR register added in
POWER9. This isn't particularly important to qemu directly - it's
used by accelerator modules that we don't emulate.
However, since qemu isn't aware of it, its state is not synchronized
with KVM and therefore not migrated, which can be a problem.
Signed-off-by: David Gibson <address@hidden>
Reviewed-by: Cédric Le Goater <address@hidden>
Reviewed-by: Greg Kurz <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>
---
target/ppc/cpu.h | 1 +
target/ppc/translate_init.c | 5 +++++
2 files changed, 6 insertions(+)
diff --git a/target/ppc/cpu.h b/target/ppc/cpu.h
index 6ee2a26a96..f6e5413fad 100644
--- a/target/ppc/cpu.h
+++ b/target/ppc/cpu.h
@@ -1451,6 +1451,7 @@ void ppc_compat_add_property(Object *obj, const char
*name,
#define SPR_TEXASR (0x082)
#define SPR_TEXASRU (0x083)
#define SPR_UCTRL (0x088)
+#define SPR_TIDR (0x090)
#define SPR_MPC_CMPA (0x090)
#define SPR_MPC_CMPB (0x091)
#define SPR_MPC_CMPC (0x092)
diff --git a/target/ppc/translate_init.c b/target/ppc/translate_init.c
index 01723bdfec..94800cd29d 100644
--- a/target/ppc/translate_init.c
+++ b/target/ppc/translate_init.c
@@ -8841,6 +8841,11 @@ static void init_proc_POWER9(CPUPPCState *env)
gen_spr_power8_book4(env);
gen_spr_power8_rpr(env);
+ /* POWER9 Specific registers */
+ spr_register_kvm(env, SPR_TIDR, "TIDR", NULL, NULL,
+ spr_read_generic, spr_write_generic,
+ KVM_REG_PPC_TIDR, 0);
+
/* env variables */
#if !defined(CONFIG_USER_ONLY)
env->slb_nr = 32;
--
2.13.4
- [Qemu-ppc] [PULL 0/6] ppc patch queue 2017-08-09, David Gibson, 2017/08/09
- [Qemu-ppc] [PULL 3/6] target/ppc: Implement TIDR,
David Gibson <=
- [Qemu-ppc] [PULL 1/6] booke206: fix MAS update on tlb miss, David Gibson, 2017/08/09
- [Qemu-ppc] [PULL 5/6] spapr_drc: abort if object_property_add_child() fails, David Gibson, 2017/08/09
- [Qemu-ppc] [PULL 6/6] spapr: Fix bug in h_signal_sys_reset(), David Gibson, 2017/08/09
- [Qemu-ppc] [PULL 4/6] target/ppc: Add stub implementation of the PSSCR, David Gibson, 2017/08/09
- [Qemu-ppc] [PULL 2/6] ppc: fix double-free in cpu_post_load(), David Gibson, 2017/08/09
- Re: [Qemu-ppc] [PULL 0/6] ppc patch queue 2017-08-09, Peter Maydell, 2017/08/10