]> git.proxmox.com Git - mirror_edk2.git/commitdiff
ArmPkg/ArmLib: add ArmReadHcr to enable read-modify-write of HCR
authorCohen, Eugene <eugene@hp.com>
Mon, 7 Mar 2016 15:16:27 +0000 (15:16 +0000)
committerArd Biesheuvel <ard.biesheuvel@linaro.org>
Wed, 16 Mar 2016 11:19:25 +0000 (12:19 +0100)
Add ArmReadHcr() to ArmLib to enable read-modify-write of the HCR system
register.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eugene Cohen <eugene@hp.com>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
ArmPkg/Include/Chipset/AArch64.h
ArmPkg/Library/ArmLib/AArch64/AArch64Support.S

index e53605f641fe2466d762e322e37a03d6eb698b6c..aa6a7e0a00dc9f89e58bce48e8faf842c50613fe 100644 (file)
@@ -203,6 +203,11 @@ ArmWriteHcr (
   IN UINTN Hcr\r
   );\r
 \r
+UINTN\r
+ArmReadHcr (\r
+  VOID\r
+  );\r
+\r
 UINTN\r
 ArmReadCurrentEL (\r
   VOID\r
index db21f73f0ed7ee3b8740cf1abd69325235228aff..1a3023b794878f91ace57b24b7d0d88f377a7faf 100644 (file)
@@ -54,6 +54,7 @@ GCC_ASM_EXPORT (ArmIsArchTimerImplemented)
 GCC_ASM_EXPORT (ArmReadIdPfr0)\r
 GCC_ASM_EXPORT (ArmReadIdPfr1)\r
 GCC_ASM_EXPORT (ArmWriteHcr)\r
+GCC_ASM_EXPORT (ArmReadHcr)\r
 GCC_ASM_EXPORT (ArmReadCurrentEL)\r
 \r
 .set CTRL_M_BIT,      (1 << 0)\r
@@ -470,6 +471,11 @@ ASM_PFX(ArmWriteHcr):
   msr   hcr_el2, x0        // Write the passed HCR value\r
   ret\r
 \r
+// UINTN ArmReadHcr(VOID)\r
+ASM_PFX(ArmReadHcr):\r
+  mrs   x0, hcr_el2\r
+  ret\r
+\r
 // UINTN ArmReadCurrentEL(VOID)\r
 ASM_PFX(ArmReadCurrentEL):\r
   mrs   x0, CurrentEL\r