target/arm: translate NS bit in page-walks

588c6dd113b27b8db393c7264297b9d33261692e
This commit is contained in:
Rémi Denis-Courmont 2021-03-04 14:25:11 -05:00 committed by Lioncash
parent 6f57520b1d
commit 07ebb7f7ba

View file

@ -10154,6 +10154,18 @@ static hwaddr S1_ptw_translate(CPUARMState *env, ARMMMUIdx mmu_idx,
fi->s1ptw = true; fi->s1ptw = true;
return ~0; return ~0;
} }
if (arm_is_secure_below_el3(env)) {
/* Check if page table walk is to secure or non-secure PA space. */
if (*is_secure) {
*is_secure = !(env->cp15.vstcr_el2.raw_tcr & VSTCR_SW);
} else {
*is_secure = !(env->cp15.vtcr_el2.raw_tcr & VTCR_NSW);
}
} else {
assert(!*is_secure);
}
addr = s2pa; addr = s2pa;
} }
return addr; return addr;