mirror of https://github.com/acidanthera/audk.git
ArmPkg/AArch64Mmu: use correct AP[] bits in ArmClearMemoryRegionReadOnly
The function ArmClearMemoryRegionReadOnly() was supposed to undo the effect of ArmSetMemoryRegionReadOnly(), but instead, it sets the permissions to EL0-no access, EL1-read-only. Since the EL0 bit should be 1 to align with EL2/3 (where the bit is SBO), use TT_AP_RW_RW instead, which makes the entry read-write for EL0 when executing at EL1, and read-write for all other levels. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
This commit is contained in:
parent
1b02a38329
commit
b5d89de167
|
@ -558,7 +558,7 @@ ArmClearMemoryRegionReadOnly (
|
||||||
return SetMemoryRegionAttribute (
|
return SetMemoryRegionAttribute (
|
||||||
BaseAddress,
|
BaseAddress,
|
||||||
Length,
|
Length,
|
||||||
TT_AP_NO_RO,
|
TT_AP_RW_RW,
|
||||||
~(TT_ADDRESS_MASK_BLOCK_ENTRY | TT_AP_MASK));
|
~(TT_ADDRESS_MASK_BLOCK_ENTRY | TT_AP_MASK));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue