diff options
author | Alexey Kardashevskiy <aik@ozlabs.ru> | 2013-09-27 18:05:03 +1000 |
---|---|---|
committer | Alexander Graf <agraf@suse.de> | 2013-12-20 01:57:45 +0100 |
commit | 3bc9ccc054574820190f0e6bbfd299bc2d42323d (patch) | |
tree | 72b355239e9721023bd3deadb802494ab5cc97e8 /target-ppc/cpu-qom.h | |
parent | c65f9a07a78afa3c98712f6192962ffd6babe339 (diff) | |
download | qemu-3bc9ccc054574820190f0e6bbfd299bc2d42323d.zip qemu-3bc9ccc054574820190f0e6bbfd299bc2d42323d.tar.gz qemu-3bc9ccc054574820190f0e6bbfd299bc2d42323d.tar.bz2 |
powerpc: add PVR mask support
IBM POWERPC processors encode PVR as a CPU family in higher 16 bits and
a CPU version in lower 16 bits. Since there is no significant change
in behavior between versions, there is no point to add every single CPU
version in QEMU's CPU list. Also, new CPU versions of already supported
CPU won't break the existing code.
This adds PVR value/mask support for KVM, i.e. for -cpu host option.
As CPU family class name for POWER7 is "POWER7-family", there is no need
to touch aliases.
Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Reviewed-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'target-ppc/cpu-qom.h')
-rw-r--r-- | target-ppc/cpu-qom.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/target-ppc/cpu-qom.h b/target-ppc/cpu-qom.h index 827e5dd..72b2232 100644 --- a/target-ppc/cpu-qom.h +++ b/target-ppc/cpu-qom.h @@ -54,6 +54,7 @@ typedef struct PowerPCCPUClass { void (*parent_reset)(CPUState *cpu); uint32_t pvr; + uint32_t pvr_mask; uint32_t svr; uint64_t insns_flags; uint64_t insns_flags2; @@ -99,6 +100,7 @@ static inline PowerPCCPU *ppc_env_get_cpu(CPUPPCState *env) #define ENV_OFFSET offsetof(PowerPCCPU, env) PowerPCCPUClass *ppc_cpu_class_by_pvr(uint32_t pvr); +PowerPCCPUClass *ppc_cpu_class_by_pvr_mask(uint32_t pvr); void ppc_cpu_do_interrupt(CPUState *cpu); void ppc_cpu_dump_state(CPUState *cpu, FILE *f, fprintf_function cpu_fprintf, |