]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ArmPkg/Drivers/ArmGic/ArmGicNonSecLib.c
OvmfPkg/PlatformPei: align EmuVariableNvStore at any page boundary
[mirror_edk2.git] / ArmPkg / Drivers / ArmGic / ArmGicNonSecLib.c
index e2538f1798f89be56428de3d10f0899f4e6cf6ef..f90391b716b5299a3e39934cc8b8c9ca090fd83b 100644 (file)
@@ -32,6 +32,10 @@ ArmGicEnableDistributor (
   if (Revision == ARM_GIC_ARCH_REVISION_2) {\r
     MmioWrite32 (GicDistributorBase + ARM_GIC_ICDDCR, 0x1);\r
   } else {\r
-    MmioWrite32 (GicDistributorBase + ARM_GIC_ICDDCR, 0x2);\r
+    if (MmioRead32 (GicDistributorBase + ARM_GIC_ICDDCR) & ARM_GIC_ICDDCR_ARE) {\r
+      MmioOr32 (GicDistributorBase + ARM_GIC_ICDDCR, 0x2);\r
+    } else {\r
+      MmioOr32 (GicDistributorBase + ARM_GIC_ICDDCR, 0x1);\r
+    }\r
   }\r
 }\r