qemu-patch-raspberry4/target
Peter Maydell 5deac39cd9 Correct CPACR reset value for v7 cores
In commit f0aff25570 we made cpacr_write() enforce that some CPACR
bits are RAZ/WI and some are RAO/WI for ARMv7 cores. Unfortunately
we forgot to also update the register's reset value. The effect
was that (a) a guest that read CPACR on reset would not see ones in
the RAO bits, and (b) if you did a migration before the guest did
a write to the CPACR then the migration would fail because the
destination would enforce the RAO bits and then complain that they
didn't match the zero value from the source.

Implement reset for the CPACR using a custom reset function
that just calls cpacr_write(), to avoid having to duplicate
the logic for which bits are RAO.

This bug would affect migration for TCG CPUs which are ARMv7
with VFP but without one of Neon or VFPv3.

Reported-by: Cédric Le Goater <clg@kaod.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Tested-by: Cédric Le Goater <clg@kaod.org>
Message-id: 20180522173713.26282-1-peter.maydell@linaro.org
2018-05-31 14:50:52 +01:00
..
alpha target/alpha: Honor CPU_DUMP_FPU 2018-05-18 14:52:38 -07:00
arm Correct CPACR reset value for v7 cores 2018-05-31 14:50:52 +01:00
cris * Don't silently truncate extremely long words in the command line 2018-05-14 09:55:09 +01:00
hppa fpu/softfloat: Specialize on snan_bit_is_one 2018-05-17 15:27:15 -07:00
i386 x86/cpu: use standard-headers/asm-x86.kvm_para.h 2018-05-23 03:14:41 +03:00
lm32 lm32: take BQL before writing IP/IM register 2018-05-21 13:37:12 +02:00
m68k tcg: fix s/compliment/complement/ typos 2018-05-20 08:25:23 +03:00
microblaze target-microblaze: Consolidate MMU enabled checks 2018-05-29 09:35:15 +02:00
mips trivial patches for 2018-05-20 2018-05-21 10:50:32 +01:00
moxie icount: fix cpu_restore_state_from_tb for non-tb-exit cases 2018-04-11 09:05:22 +10:00
nios2 cpu: get rid of unused cpu_init() defines 2018-03-19 14:10:36 -03:00
openrisc target/openrisc: Merge disas_openrisc_insn 2018-05-14 14:58:08 -07:00
ppc ppc: Rename 2.13 machines to 3.0 2018-05-29 11:28:46 +01:00
riscv target/riscv: Honor CPU_DUMP_FPU 2018-05-18 14:52:38 -07:00
s390x target/s390x: Honor CPU_DUMP_FPU 2018-05-18 14:52:38 -07:00
sh4 fpu/softfloat: Specialize on snan_bit_is_one 2018-05-17 15:27:15 -07:00
sparc target/sparc: Honor CPU_DUMP_FPU 2018-05-18 14:52:38 -07:00
tilegx target/tilegx: avoid integer overflow in next_page PC check 2018-05-09 10:12:21 -07:00
tricore icount: fix cpu_restore_state_from_tb for non-tb-exit cases 2018-04-11 09:05:22 +10:00
unicore32 target/unicore32: Honor CPU_DUMP_FPU 2018-05-18 14:52:38 -07:00
xtensa trivial patches for 2018-05-20 2018-05-21 10:50:32 +01:00