]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ArmVirtPkg/XenAcpiPlatformDxe/XenAcpiPlatformDxe.c
MdeModulePkg/PciBus: Change switch-case to if-else to fix EBC build
[mirror_edk2.git] / ArmVirtPkg / XenAcpiPlatformDxe / XenAcpiPlatformDxe.c
index 37aea806283e1bd873a36fa896081ff6612dc659..49f9b5d2822aac9f115a6def055296343509bbb7 100644 (file)
@@ -45,7 +45,8 @@ GetXenArmAcpiRsdp (
   EFI_STATUS                                     Status;\r
   FDT_CLIENT_PROTOCOL                            *FdtClient;\r
   CONST UINT64                                   *Reg;\r
-  UINT32                                         RegElemSize, RegSize;\r
+  UINT32                                         RegSize;\r
+  UINTN                                          AddressCells, SizeCells;\r
   UINT64                                         RegBase;\r
   UINT8                                          Sum;\r
 \r
@@ -59,17 +60,21 @@ GetXenArmAcpiRsdp (
   ASSERT_EFI_ERROR (Status);\r
 \r
   Status = FdtClient->FindCompatibleNodeReg (FdtClient, "xen,guest-acpi",\r
-                        (CONST VOID **)&Reg, &RegElemSize, &RegSize);\r
+                        (CONST VOID **)&Reg, &AddressCells, &SizeCells,\r
+                        &RegSize);\r
   if (EFI_ERROR (Status)) {\r
     DEBUG ((EFI_D_WARN, "%a: No 'xen,guest-acpi' compatible DT node found\n",\r
       __FUNCTION__));\r
     return EFI_NOT_FOUND;\r
   }\r
 \r
+  ASSERT (AddressCells == 2);\r
+  ASSERT (SizeCells == 2);\r
   ASSERT (RegSize == 2 * sizeof (UINT64));\r
 \r
   RegBase = SwapBytes64(Reg[0]);\r
-  RsdpStructurePtr = (EFI_ACPI_2_0_ROOT_SYSTEM_DESCRIPTION_POINTER *)RegBase;\r
+  RsdpStructurePtr =\r
+    (EFI_ACPI_2_0_ROOT_SYSTEM_DESCRIPTION_POINTER *)(UINTN)RegBase;\r
 \r
   if (RsdpStructurePtr && RsdpStructurePtr->Revision >= 2) {\r
     Sum = CalculateSum8 ((CONST UINT8 *)RsdpStructurePtr,\r