diff options
author | David Gibson | 2016-11-10 04:37:38 +0100 |
---|---|---|
committer | David Gibson | 2017-01-31 00:10:14 +0100 |
commit | f6f242c7578fbedcdb53a14d4b057a7059b8dd1d (patch) | |
tree | 073ca40777358eab78a72c8fea13bcfdcd21268a /target/ppc/cpu.h | |
parent | pseries: Rewrite CAS PVR compatibility logic (diff) | |
download | qemu-f6f242c7578fbedcdb53a14d4b057a7059b8dd1d.tar.gz qemu-f6f242c7578fbedcdb53a14d4b057a7059b8dd1d.tar.xz qemu-f6f242c7578fbedcdb53a14d4b057a7059b8dd1d.zip |
ppc: Add ppc_set_compat_all()
Once a compatiblity mode is negotiated with the guest,
h_client_architecture_support() uses run_on_cpu() to update each CPU to
the new mode. We're going to want this logic somewhere else shortly,
so make a helper function to do this global update.
We put it in target-ppc/compat.c - it makes as much sense at the CPU level
as it does at the machine level. We also move the cpu_synchronize_state()
into ppc_set_compat(), since it doesn't really make any sense to call that
without synchronizing state.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Diffstat (limited to 'target/ppc/cpu.h')
-rw-r--r-- | target/ppc/cpu.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/target/ppc/cpu.h b/target/ppc/cpu.h index 22842ddd35..4d72d75e83 100644 --- a/target/ppc/cpu.h +++ b/target/ppc/cpu.h @@ -1326,6 +1326,9 @@ static inline int cpu_mmu_index (CPUPPCState *env, bool ifetch) bool ppc_check_compat(PowerPCCPU *cpu, uint32_t compat_pvr, uint32_t min_compat_pvr, uint32_t max_compat_pvr); void ppc_set_compat(PowerPCCPU *cpu, uint32_t compat_pvr, Error **errp); +#if !defined(CONFIG_USER_ONLY) +void ppc_set_compat_all(uint32_t compat_pvr, Error **errp); +#endif int ppc_compat_max_threads(PowerPCCPU *cpu); #endif /* defined(TARGET_PPC64) */ |