UINT32 IccSre;\r
FDT_CLIENT_PROTOCOL *FdtClient;\r
CONST UINT64 *Reg;\r
- UINT32 RegElemSize, RegSize;\r
+ UINT32 RegSize;\r
+ UINTN AddressCells, SizeCells;\r
UINTN GicRevision;\r
EFI_STATUS Status;\r
UINT64 DistBase, CpuBase, RedistBase;\r
+ RETURN_STATUS PcdStatus;\r
\r
Status = gBS->LocateProtocol (&gFdtClientProtocolGuid, NULL,\r
(VOID **)&FdtClient);\r
\r
GicRevision = 2;\r
Status = FdtClient->FindCompatibleNodeReg (FdtClient, "arm,cortex-a15-gic",\r
- (CONST VOID **)&Reg, &RegElemSize, &RegSize);\r
+ (CONST VOID **)&Reg, &AddressCells, &SizeCells,\r
+ &RegSize);\r
if (Status == EFI_NOT_FOUND) {\r
GicRevision = 3;\r
Status = FdtClient->FindCompatibleNodeReg (FdtClient, "arm,gic-v3",\r
- (CONST VOID **)&Reg, &RegElemSize, &RegSize);\r
+ (CONST VOID **)&Reg, &AddressCells, &SizeCells,\r
+ &RegSize);\r
}\r
if (EFI_ERROR (Status)) {\r
return Status;\r
\r
// RegProp[0..1] == { GICD base, GICD size }\r
DistBase = SwapBytes64 (Reg[0]);\r
- ASSERT (DistBase < MAX_UINT32);\r
+ ASSERT (DistBase < MAX_UINTN);\r
\r
// RegProp[2..3] == { GICR base, GICR size }\r
RedistBase = SwapBytes64 (Reg[2]);\r
- ASSERT (RedistBase < MAX_UINT32);\r
+ ASSERT (RedistBase < MAX_UINTN);\r
\r
- PcdSet64 (PcdGicDistributorBase, DistBase);\r
- PcdSet64 (PcdGicRedistributorsBase, RedistBase);\r
+ PcdStatus = PcdSet64S (PcdGicDistributorBase, DistBase);\r
+ ASSERT_RETURN_ERROR (PcdStatus);\r
+ PcdStatus = PcdSet64S (PcdGicRedistributorsBase, RedistBase);\r
+ ASSERT_RETURN_ERROR (PcdStatus);\r
\r
DEBUG ((EFI_D_INFO, "Found GIC v3 (re)distributor @ 0x%Lx (0x%Lx)\n",\r
DistBase, RedistBase));\r
\r
DistBase = SwapBytes64 (Reg[0]);\r
CpuBase = SwapBytes64 (Reg[2]);\r
- ASSERT (DistBase < MAX_UINT32);\r
- ASSERT (CpuBase < MAX_UINT32);\r
+ ASSERT (DistBase < MAX_UINTN);\r
+ ASSERT (CpuBase < MAX_UINTN);\r
\r
- PcdSet64 (PcdGicDistributorBase, DistBase);\r
- PcdSet64 (PcdGicInterruptInterfaceBase, CpuBase);\r
+ PcdStatus = PcdSet64S (PcdGicDistributorBase, DistBase);\r
+ ASSERT_RETURN_ERROR (PcdStatus);\r
+ PcdStatus = PcdSet64S (PcdGicInterruptInterfaceBase, CpuBase);\r
+ ASSERT_RETURN_ERROR (PcdStatus);\r
\r
DEBUG ((EFI_D_INFO, "Found GIC @ 0x%Lx/0x%Lx\n", DistBase, CpuBase));\r
\r