diff options
author | Jessica Clarke <jrtc27@jrtc27.com> | 2024-11-06 21:01:07 +0000 |
---|---|---|
committer | mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> | 2024-11-14 06:25:27 +0000 |
commit | 6f07aeb49c2d94e460cbd3f36b8cfa81355c825f (patch) | |
tree | 814fc6c80abfff6ec1025c99095d88eec8f5a29e /ArmPlatformPkg | |
parent | 3299c36ba181b1e7d23987f94cad688e2ea67223 (diff) | |
download | edk2-6f07aeb49c2d94e460cbd3f36b8cfa81355c825f.tar.gz edk2-6f07aeb49c2d94e460cbd3f36b8cfa81355c825f.tar.bz2 edk2-6f07aeb49c2d94e460cbd3f36b8cfa81355c825f.zip |
ArmPlatformPkg: Document that we don't support HCR_EL2.E2H being set
The existing code here predates its existence as it's assuming that
CPTR_EL2 has the traditional layout rather than being like CPACR_EL1
(likely also true elsewhere for other registers), and the UEFI spec has
nothing to say on the matter. One assumes the intent is that if you're
in EL2 you're in EL2 proper, and it would be very strange to enter EDK2
with E2H set. Document this existing assumption.
Signed-off-by: Jessica Clarke <jrtc27@jrtc27.com>
Diffstat (limited to 'ArmPlatformPkg')
-rw-r--r-- | ArmPlatformPkg/Sec/AArch64/Helper.S | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/ArmPlatformPkg/Sec/AArch64/Helper.S b/ArmPlatformPkg/Sec/AArch64/Helper.S index c784c4a1cd..121f99838c 100644 --- a/ArmPlatformPkg/Sec/AArch64/Helper.S +++ b/ArmPlatformPkg/Sec/AArch64/Helper.S @@ -28,6 +28,8 @@ ASM_FUNC(SetupExceptionLevel2) orr x0, x0, #(1 << 5) // Enable EL2 SError and Abort
msr hcr_el2, x0 // Write back our settings
+ // NB: We assume that we have not been entered on VHE systems with
+ // HCR_EL2.E2H set.
msr cptr_el2, xzr // Disable copro traps to EL2
// Enable Timer access for non-secure EL1 and EL0
|