summaryrefslogtreecommitdiffstats
path: root/ArmVirtPkg/Library
diff options
context:
space:
mode:
authorDennis Chen <dennis.chen@arm.com>2016-09-05 19:38:20 +0800
committerArd Biesheuvel <ard.biesheuvel@linaro.org>2016-09-08 09:16:01 +0100
commit8a1f2378d74390ddfe35c70f68e0c8b03bf84089 (patch)
treea14e94339ee014e9680f2629fd80c208eea08bfd /ArmVirtPkg/Library
parentd796d33f1844deb492bc571c7f2e2b6780b92368 (diff)
downloadedk2-8a1f2378d74390ddfe35c70f68e0c8b03bf84089.tar.gz
edk2-8a1f2378d74390ddfe35c70f68e0c8b03bf84089.tar.bz2
edk2-8a1f2378d74390ddfe35c70f68e0c8b03bf84089.zip
ArmPkg ArmPlatformPkg ArmVirtPkg: ARM GICv2/v3 Base Address width fix-up
According to the ACPI 6.0/6.1 spec, the physical base address of GICC, GICD, GICR and GIC ITS is 64-bit. So change the type of the various GIC base address PCDs to 64-bit, and fix up all users. Contributed-under: TianoCore Contribution Agreement 1.0 Cc: Leif Lindholm <leif.lindholm@linaro.org> Signed-off-by: Dennis Chen <dennis.chen@arm.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Diffstat (limited to 'ArmVirtPkg/Library')
-rw-r--r--ArmVirtPkg/Library/ArmVirtGicArchLib/ArmVirtGicArchLib.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/ArmVirtPkg/Library/ArmVirtGicArchLib/ArmVirtGicArchLib.c b/ArmVirtPkg/Library/ArmVirtGicArchLib/ArmVirtGicArchLib.c
index 7ef829ff2d..a1cd2da2d4 100644
--- a/ArmVirtPkg/Library/ArmVirtGicArchLib/ArmVirtGicArchLib.c
+++ b/ArmVirtPkg/Library/ArmVirtGicArchLib/ArmVirtGicArchLib.c
@@ -82,8 +82,8 @@ ArmVirtGicArchLibConstructor (
RedistBase = SwapBytes64 (Reg[2]);
ASSERT (RedistBase < MAX_UINT32);
- PcdSet32 (PcdGicDistributorBase, (UINT32)DistBase);
- PcdSet32 (PcdGicRedistributorsBase, (UINT32)RedistBase);
+ PcdSet64 (PcdGicDistributorBase, DistBase);
+ PcdSet64 (PcdGicRedistributorsBase, RedistBase);
DEBUG ((EFI_D_INFO, "Found GIC v3 (re)distributor @ 0x%Lx (0x%Lx)\n",
DistBase, RedistBase));
@@ -117,8 +117,8 @@ ArmVirtGicArchLibConstructor (
ASSERT (DistBase < MAX_UINT32);
ASSERT (CpuBase < MAX_UINT32);
- PcdSet32 (PcdGicDistributorBase, (UINT32)DistBase);
- PcdSet32 (PcdGicInterruptInterfaceBase, (UINT32)CpuBase);
+ PcdSet64 (PcdGicDistributorBase, DistBase);
+ PcdSet64 (PcdGicInterruptInterfaceBase, CpuBase);
DEBUG ((EFI_D_INFO, "Found GIC @ 0x%Lx/0x%Lx\n", DistBase, CpuBase));