unicorn/qemu/target/arm
Peter Maydell c390c07ae0
hw/intc/armv7m_nvic: Implement cache ID registers
M profile cores have a similar setup for cache ID registers
to A profile:
* Cache Level ID Register (CLIDR) is a fixed value
* Cache Type Register (CTR) is a fixed value
* Cache Size ID Registers (CCSIDR) are a bank of registers;
which one you see is selected by the Cache Size Selection
Register (CSSELR)

The only difference is that they're in the NVIC memory mapped
register space rather than being coprocessor registers.
Implement the M profile view of them.

Since neither Cortex-M3 nor Cortex-M4 implement caches,
we don't need to update their init functions and can leave
the ctr/clidr/ccsidr[] fields in their ARMCPU structs at zero.
Newer cores (like the Cortex-M33) will want to be able to
set these ID registers to non-zero values, though.

Backports commit 43bbce7fbef22adf687dd84934fd0b2f8df807a8 from qemu
2018-03-08 09:35:53 -05:00
..
arm-powerctl.c
arm-powerctl.h
arm_ldst.h
cpu-qom.h
cpu.c hw/intc/armv7m_nvic: Don't hardcode M profile ID registers in NVIC 2018-03-08 09:34:37 -05:00
cpu.h hw/intc/armv7m_nvic: Implement cache ID registers 2018-03-08 09:35:53 -05:00
cpu64.c target/arm: enable user-mode SHA-3, SM3, SM4 and SHA-512 instruction support 2018-03-07 08:58:43 -05:00
crypto_helper.c target/arm: implement SM4 instructions 2018-03-07 08:57:53 -05:00
helper-a64.c target/arm: Fix stlxp for aarch64_be 2018-03-06 08:48:12 -05:00
helper-a64.h
helper.c target/arm: Enforce access to ZCR_EL at translation 2018-03-08 09:17:33 -05:00
helper.h target/arm: implement SM4 instructions 2018-03-07 08:57:53 -05:00
internals.h target/arm: Enforce access to ZCR_EL at translation 2018-03-08 09:17:33 -05:00
iwmmxt_helper.c
kvm-consts.h
Makefile.objs
neon_helper.c target/arm: Use pointers in neon zip/uzp helpers 2018-03-06 10:17:51 -05:00
op_addsub.h
op_helper.c accel/tcg: add size paremeter in tlb_fill() 2018-03-06 10:56:34 -05:00
psci.c fix WFI/WFE length in syndrome register 2018-03-05 11:21:51 -05:00
translate-a64.c target/arm: Handle SVE registers when using clear_vec_high 2018-03-08 09:32:33 -05:00
translate.c target/arm/translate.c: Fix missing 'break' for TT insns 2018-03-07 11:45:39 -05:00
translate.h target/arm: Add SVE state to TB->FLAGS 2018-03-07 11:44:32 -05:00
unicorn.h
unicorn_aarch64.c unicorn/aarch64: Use qemu-provided helpers for accessing VFP/NEON/SIMD registers 2018-03-07 11:25:41 -05:00
unicorn_arm.c unicorn/aarch64: Use qemu-provided helpers for accessing VFP/NEON/SIMD registers 2018-03-07 11:25:41 -05:00