diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2012-06-20 11:57:18 +0000 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2012-06-20 12:08:22 +0000 |
commit | 2771db274193420b82f988b995282820631cdd99 (patch) | |
tree | 98f6bf77cbe19bdd7b84e14441f8f39e4c458cbd /target-arm/cpu.c | |
parent | 34f9052967b2495c524560906023dbebf6556b5d (diff) | |
download | qemu-2771db274193420b82f988b995282820631cdd99.zip qemu-2771db274193420b82f988b995282820631cdd99.tar.gz qemu-2771db274193420b82f988b995282820631cdd99.tar.bz2 |
target-arm: Convert cp15 crn=1 registers
Convert the cp15 crn=1 registers to the new scheme.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'target-arm/cpu.c')
-rw-r--r-- | target-arm/cpu.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/target-arm/cpu.c b/target-arm/cpu.c index c03db20..d84db53 100644 --- a/target-arm/cpu.c +++ b/target-arm/cpu.c @@ -77,7 +77,6 @@ static void arm_cpu_reset(CPUState *s) env->vfp.xregs[ARM_VFP_MVFR0] = cpu->mvfr0; env->vfp.xregs[ARM_VFP_MVFR1] = cpu->mvfr1; env->cp15.c0_cachetype = cpu->ctr; - env->cp15.c1_sys = cpu->reset_sctlr; env->cp15.c0_c1[0] = cpu->id_pfr0; env->cp15.c0_c1[1] = cpu->id_pfr1; env->cp15.c0_c1[2] = cpu->id_dfr0; @@ -252,6 +251,7 @@ static void arm1026_initfn(Object *obj) cpu->reset_fpsid = 0x410110a0; cpu->ctr = 0x1dd20d2; cpu->reset_sctlr = 0x00090078; + cpu->reset_auxcr = 1; { /* The 1026 had an IFAR at c6,c0,0,1 rather than the ARMv6 c6,c0,0,2 */ ARMCPRegInfo ifar = { @@ -297,6 +297,7 @@ static void arm1136_r2_initfn(Object *obj) cpu->id_isar2 = 0x11231111; cpu->id_isar3 = 0x01102131; cpu->id_isar4 = 0x141; + cpu->reset_auxcr = 7; } static void arm1136_initfn(Object *obj) @@ -326,6 +327,7 @@ static void arm1136_initfn(Object *obj) cpu->id_isar2 = 0x11231111; cpu->id_isar3 = 0x01102131; cpu->id_isar4 = 0x141; + cpu->reset_auxcr = 7; } static void arm1176_initfn(Object *obj) @@ -355,6 +357,7 @@ static void arm1176_initfn(Object *obj) cpu->id_isar2 = 0x11231121; cpu->id_isar3 = 0x01102131; cpu->id_isar4 = 0x01141; + cpu->reset_auxcr = 7; } static void arm11mpcore_initfn(Object *obj) @@ -381,6 +384,7 @@ static void arm11mpcore_initfn(Object *obj) cpu->id_isar2 = 0x11221011; cpu->id_isar3 = 0x01102131; cpu->id_isar4 = 0x141; + cpu->reset_auxcr = 1; } static void cortex_m3_initfn(Object *obj) @@ -430,6 +434,7 @@ static void cortex_a8_initfn(Object *obj) cpu->ccsidr[0] = 0xe007e01a; /* 16k L1 dcache. */ cpu->ccsidr[1] = 0x2007e01a; /* 16k L1 icache. */ cpu->ccsidr[2] = 0xf0000000; /* No L2 icache. */ + cpu->reset_auxcr = 2; define_arm_cp_regs(cpu, cortexa8_cp_reginfo); } |