[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-arm] [PATCH 05/13] arm: Don't clear ARM_FEATURE_PMSA for no-mpu co
From: |
Peter Maydell |
Subject: |
[Qemu-arm] [PATCH 05/13] arm: Don't clear ARM_FEATURE_PMSA for no-mpu configs |
Date: |
Tue, 25 Apr 2017 13:07:02 +0100 |
Fix the handling of QOM properties for PMSA CPUs with no MPU:
Allow no-MPU to be specified by either:
* has-mpu = false
* pmsav7_dregion = 0
and make setting one imply the other. Don't clear the PMSA
feature bit in this situation.
Signed-off-by: Peter Maydell <address@hidden>
---
target/arm/cpu.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/target/arm/cpu.c b/target/arm/cpu.c
index f17e279..8e57498 100644
--- a/target/arm/cpu.c
+++ b/target/arm/cpu.c
@@ -757,8 +757,14 @@ static void arm_cpu_realizefn(DeviceState *dev, Error
**errp)
cpu->id_pfr1 &= ~0xf000;
}
+ /* MPU can be configured out of a PMSA CPU either by setting has-mpu
+ * to false or by setting pmsav7-dregion to 0.
+ */
if (!cpu->has_mpu) {
- unset_feature(ARM_FEATURE_PMSA);
+ cpu->pmsav7_dregion = 0;
+ }
+ if (cpu->pmsav7_dregion == 0) {
+ cpu->has_mpu = false;
}
if (arm_feature(env, ARM_FEATURE_PMSA) &&
--
2.7.4
- [Qemu-arm] [PATCH 00/13] armv7m: Implement MPU support, Peter Maydell, 2017/04/25
- [Qemu-arm] [PATCH 06/13] arm: Don't let no-MPU PMSA cores write to SCTLR.M, Peter Maydell, 2017/04/25
- [Qemu-arm] [PATCH 08/13] armv7m: Improve "-d mmu" tracing for PMSAv7 MPU, Peter Maydell, 2017/04/25
- [Qemu-arm] [PATCH 13/13] arm: Implement HFNMIENA support for M profile MPU, Peter Maydell, 2017/04/25
- [Qemu-arm] [PATCH 11/13] armv7m: Classify faults as MemManage or BusFault, Peter Maydell, 2017/04/25
- [Qemu-arm] [PATCH 10/13] arm: All M profile cores are PMSA, Peter Maydell, 2017/04/25
- [Qemu-arm] [PATCH 03/13] arm: Use different ARMMMUIdx values for M profile, Peter Maydell, 2017/04/25
- [Qemu-arm] [PATCH 05/13] arm: Don't clear ARM_FEATURE_PMSA for no-mpu configs,
Peter Maydell <=
- [Qemu-arm] [PATCH 02/13] arm: Add support for M profile CPUs having different MMU index semantics, Peter Maydell, 2017/04/25
- [Qemu-arm] [PATCH 01/13] arm: Use the mmu_idx we're passed in arm_cpu_do_unaligned_access(), Peter Maydell, 2017/04/25
- [Qemu-arm] [PATCH 04/13] arm: Clean up handling of no-MPU PMSA CPUs, Peter Maydell, 2017/04/25
- [Qemu-arm] [PATCH 09/13] armv7m: Implement M profile default memory map, Peter Maydell, 2017/04/25
- [Qemu-arm] [PATCH 07/13] arm: Remove unnecessary check on cpu->pmsav7_dregion, Peter Maydell, 2017/04/25
- [Qemu-arm] [PATCH 12/13] arm: add MPU support to M profile CPUs, Peter Maydell, 2017/04/25