mirror of https://gitee.com/openkylin/qemu.git
target-ppc: Use #define for max slb entries
Instead of opencoding 64 use MAX_SLB_ENTRIES. We don't update the kernel header here. Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> Signed-off-by: Alexander Graf <agraf@suse.de>
This commit is contained in:
parent
2f4d0f5990
commit
d83af16786
|
@ -405,6 +405,7 @@ struct ppc_slb_t {
|
|||
uint64_t vsid;
|
||||
};
|
||||
|
||||
#define MAX_SLB_ENTRIES 64
|
||||
#define SEGMENT_SHIFT_256M 28
|
||||
#define SEGMENT_MASK_256M (~((1ULL << SEGMENT_SHIFT_256M) - 1))
|
||||
|
||||
|
@ -949,7 +950,7 @@ struct CPUPPCState {
|
|||
#if !defined(CONFIG_USER_ONLY)
|
||||
#if defined(TARGET_PPC64)
|
||||
/* PowerPC 64 SLB area */
|
||||
ppc_slb_t slb[64];
|
||||
ppc_slb_t slb[MAX_SLB_ENTRIES];
|
||||
int32_t slb_nr;
|
||||
#endif
|
||||
/* segment registers */
|
||||
|
|
|
@ -818,7 +818,7 @@ int kvm_arch_put_registers(CPUState *cs, int level)
|
|||
|
||||
/* Sync SLB */
|
||||
#ifdef TARGET_PPC64
|
||||
for (i = 0; i < 64; i++) {
|
||||
for (i = 0; i < ARRAY_SIZE(env->slb); i++) {
|
||||
sregs.u.s.ppc64.slb[i].slbe = env->slb[i].esid;
|
||||
sregs.u.s.ppc64.slb[i].slbv = env->slb[i].vsid;
|
||||
}
|
||||
|
@ -1040,7 +1040,7 @@ int kvm_arch_get_registers(CPUState *cs)
|
|||
* back in.
|
||||
*/
|
||||
memset(env->slb, 0, sizeof(env->slb));
|
||||
for (i = 0; i < 64; i++) {
|
||||
for (i = 0; i < ARRAY_SIZE(env->slb); i++) {
|
||||
target_ulong rb = sregs.u.s.ppc64.slb[i].slbe;
|
||||
target_ulong rs = sregs.u.s.ppc64.slb[i].slbv;
|
||||
/*
|
||||
|
|
|
@ -312,7 +312,7 @@ static const VMStateDescription vmstate_slb = {
|
|||
.minimum_version_id_old = 1,
|
||||
.fields = (VMStateField []) {
|
||||
VMSTATE_INT32_EQUAL(env.slb_nr, PowerPCCPU),
|
||||
VMSTATE_SLB_ARRAY(env.slb, PowerPCCPU, 64),
|
||||
VMSTATE_SLB_ARRAY(env.slb, PowerPCCPU, MAX_SLB_ENTRIES),
|
||||
VMSTATE_END_OF_LIST()
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue