]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ArmVirtPkg/XenAcpiPlatformDxe/XenAcpiPlatformDxe.c
ArmVirtPkg/FdtClientDxe: report address and size cell count directly
[mirror_edk2.git] / ArmVirtPkg / XenAcpiPlatformDxe / XenAcpiPlatformDxe.c
index 37aea806283e1bd873a36fa896081ff6612dc659..203946f97bf812c514fee1805eb38b9b60b30f9b 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,13 +60,16 @@ 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