Make arm_current_pl() to return PL3 in secure privileged mode.
Signed-off-by: Sergey Fedorov <[email protected]>
---
target-arm/cpu.h | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/target-arm/cpu.h b/target-arm/cpu.h
index a00c86f..1b03450 100644
--- a/target-arm/cpu.h
+++ b/target-arm/cpu.h
@@ -622,9 +622,11 @@ static inline int arm_current_pl(CPUARMState *env)
{
if ((env->uncached_cpsr & 0x1f) == ARM_CPU_MODE_USR) {
return 0;
+ } else if (arm_is_secure(env)) {
+ return 3;
}
- /* We don't currently implement the Virtualization or TrustZone
- * extensions, so PL2 and PL3 don't exist for us.
+ /* We don't currently implement the Virtualization extensions, so PL2 don't
+ * exist for us.
*/
return 1;
}
--
1.7.9.5