qemu/target-arm
Fabian Aggeler f0aff25570 target-arm: implement CPACR register logic for ARMv7
In ARMv7 the CPACR register allows to control access rights to
coprocessor 0-13 interfaces. Bits corresponding to unimplemented
coprocessors should be RAZ/WI. Bits ASEDIS, D32DIS, TRCDIS are
UNK/SBZP if VFP is not implemented and RAO/WI in some cases.
Treating TRCDIS as RAZ/WI since we neither implement a trace
macrocell nor a CP14 interface to the trace macrocell registers.

Since CPACR bits for VFP/Neon access are honoured with the CPACR_FPEN
bit in the TB flags, flushing the TLB is not necessary anymore.

Signed-off-by: Fabian Aggeler <aggelerf@ethz.ch>
Message-id: 1400532968-30668-1-git-send-email-aggelerf@ethz.ch
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2014-05-27 17:09:49 +01:00
..
Makefile.objs target-arm: A64: add stubs for a64 specific helpers 2013-12-17 19:42:32 +00:00
arm-semi.c cpu: Move opaque field from CPU_COMMON to CPUState 2014-03-13 19:20:47 +01:00
cpu-qom.h target-arm: Dump 32-bit CPU state if 64 bit CPU is in AArch32 2014-04-17 21:34:06 +01:00
cpu.c target-arm: Fix segfault on startup when KVM enabled 2014-05-27 13:55:39 +01:00
cpu.h target-arm: Implement CBAR for Cortex-A57 2014-04-17 21:34:06 +01:00
cpu64.c target-arm: Dump 32-bit CPU state if 64 bit CPU is in AArch32 2014-04-17 21:34:06 +01:00
crypto_helper.c target-arm: add support for v8 AES instructions 2013-12-17 19:42:25 +00:00
gdbstub.c cpu: Introduce CPUClass::gdb_{read,write}_register() 2013-07-27 00:04:17 +02:00
gdbstub64.c target-arm/gdbstub64.c: remove useless 'break' statement. 2014-04-17 21:34:06 +01:00
helper-a64.c target-arm: Implement AArch64 EL1 exception handling 2014-04-17 21:34:04 +01:00
helper-a64.h target-arm: A64: Implement FCVTXN 2014-03-17 16:31:53 +00:00
helper.c target-arm: implement CPACR register logic for ARMv7 2014-05-27 17:09:49 +01:00
helper.h target-arm: Implement AArch64 EL1 exception handling 2014-04-17 21:34:04 +01:00
internals.h target-arm: Move arm_log_exception() into internals.h 2014-04-17 21:34:04 +01:00
iwmmxt_helper.c misc: Use new rotate functions 2013-09-25 21:23:05 +02:00
kvm-consts.h target-arm/kvm-consts.h: Define QEMU constants for known KVM CPUs 2014-02-20 10:35:50 +00:00
kvm-stub.c target-arm: Initialize cpreg list from KVM when using KVM 2013-06-25 18:16:10 +01:00
kvm.c arm: vgic device control api support 2014-02-26 17:20:00 +00:00
kvm32.c kvm: reset state from the CPU's reset method 2014-05-13 13:12:40 +02:00
kvm64.c kvm: reset state from the CPU's reset method 2014-05-13 13:12:40 +02:00
kvm_arm.h kvm: reset state from the CPU's reset method 2014-05-13 13:12:40 +02:00
machine.c savevm: Remove all the unneeded version_minimum_id_old (arm) 2014-05-13 16:09:35 +01:00
neon_helper.c target-arm: A64: Add saturating accumulate ops (USQADD/SUQADD) 2014-03-18 23:10:06 +00:00
op_addsub.h Correct spelling of licensed 2011-07-23 11:26:12 -05:00
op_helper.c target-arm: Correct a comment refering to EL0 2014-05-01 15:24:46 +01:00
translate-a64.c target-arm: A64: Handle blr lr 2014-05-01 15:24:45 +01:00
translate.c arm: translate.c: Fix smlald Instruction 2014-04-17 21:34:07 +01:00
translate.h target-arm: Dump 32-bit CPU state if 64 bit CPU is in AArch32 2014-04-17 21:34:06 +01:00