diff options
| author | Richard Henderson <richard.henderson@linaro.org> | 2025-09-25 17:11:33 -0700 |
|---|---|---|
| committer | Peter Maydell <peter.maydell@linaro.org> | 2025-10-07 11:26:10 +0100 |
| commit | 663f9c253eb31d4deacacf5b9de70bfa4674371f (patch) | |
| tree | 8841743a3c1de1869147961f4ce66f9630d556af /target/arm/ptw.c | |
| parent | a0f1bb0dfeb2c8cd806349aa5938d9aab6ef1d61 (diff) | |
| download | focaccia-qemu-663f9c253eb31d4deacacf5b9de70bfa4674371f.tar.gz focaccia-qemu-663f9c253eb31d4deacacf5b9de70bfa4674371f.zip | |
target/arm: Implement APPSAA
This bit allows all spaces to access memory above PPS. Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> Message-id: 20250926001134.295547-10-richard.henderson@linaro.org Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'target/arm/ptw.c')
| -rw-r--r-- | target/arm/ptw.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/target/arm/ptw.c b/target/arm/ptw.c index 236c3a9569..e03657f309 100644 --- a/target/arm/ptw.c +++ b/target/arm/ptw.c @@ -408,9 +408,10 @@ static bool granule_protection_check(CPUARMState *env, uint64_t paddress, * GPC Priority 3: Secure, Realm or Root address exceeds PPS. * R_CPDSB: A NonSecure physical address input exceeding PPS * does not experience any fault. + * R_PBPSH: Other address spaces have fault suppressed by APPSAA. */ if (paddress & ~pps_mask) { - if (pspace == ARMSS_NonSecure) { + if (pspace == ARMSS_NonSecure || FIELD_EX64(gpccr, GPCCR, APPSAA)) { return true; } goto fault_fail; |