• P
    Correct CPACR reset value for v7 cores · 5deac39c
    Peter Maydell 提交于
    In commit f0aff255 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: NCédric Le Goater <clg@kaod.org>
    Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
    Tested-by: NCédric Le Goater <clg@kaod.org>
    Message-id: 20180522173713.26282-1-peter.maydell@linaro.org
    5deac39c
helper.c 441.1 KB