mirror of https://github.com/acidanthera/audk.git
ArmVirtPkg: record GIC revision in dynamic PCD
In order to allow a ArmGicArchLib to be implemented that returns the supported GIC revision based on the device tree, add handling to VirtFdtDxe to record the GIC revision at DT parsing time. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org> Tested-by: Leif Lindholm <leif.lindholm@linaro.org> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18101 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
f94522c823
commit
ae26410e28
|
@ -68,6 +68,11 @@
|
||||||
gArmVirtTokenSpaceGuid.PcdFwCfgSelectorAddress|0x0|UINT64|0x00000004
|
gArmVirtTokenSpaceGuid.PcdFwCfgSelectorAddress|0x0|UINT64|0x00000004
|
||||||
gArmVirtTokenSpaceGuid.PcdFwCfgDataAddress|0x0|UINT64|0x00000005
|
gArmVirtTokenSpaceGuid.PcdFwCfgDataAddress|0x0|UINT64|0x00000005
|
||||||
|
|
||||||
|
#
|
||||||
|
# Supported GIC revision (2, 3, ...)
|
||||||
|
#
|
||||||
|
gArmVirtTokenSpaceGuid.PcdArmGicRevision|0x0|UINT32|0x00000008
|
||||||
|
|
||||||
[PcdsFeatureFlag]
|
[PcdsFeatureFlag]
|
||||||
#
|
#
|
||||||
# "Map PCI MMIO as Cached"
|
# "Map PCI MMIO as Cached"
|
||||||
|
|
|
@ -205,6 +205,7 @@
|
||||||
gArmTokenSpaceGuid.PcdGicDistributorBase|0x0
|
gArmTokenSpaceGuid.PcdGicDistributorBase|0x0
|
||||||
gArmTokenSpaceGuid.PcdGicRedistributorsBase|0x0
|
gArmTokenSpaceGuid.PcdGicRedistributorsBase|0x0
|
||||||
gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase|0x0
|
gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase|0x0
|
||||||
|
gArmVirtTokenSpaceGuid.PcdArmGicRevision|0x0
|
||||||
|
|
||||||
## PL031 RealTimeClock
|
## PL031 RealTimeClock
|
||||||
gArmPlatformTokenSpaceGuid.PcdPL031RtcBase|0x0
|
gArmPlatformTokenSpaceGuid.PcdPL031RtcBase|0x0
|
||||||
|
|
|
@ -127,6 +127,7 @@
|
||||||
gArmTokenSpaceGuid.PcdGicDistributorBase|0x0
|
gArmTokenSpaceGuid.PcdGicDistributorBase|0x0
|
||||||
gArmTokenSpaceGuid.PcdGicRedistributorsBase|0x0
|
gArmTokenSpaceGuid.PcdGicRedistributorsBase|0x0
|
||||||
gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase|0x0
|
gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase|0x0
|
||||||
|
gArmVirtTokenSpaceGuid.PcdArmGicRevision|0x0
|
||||||
|
|
||||||
## PL031 RealTimeClock
|
## PL031 RealTimeClock
|
||||||
gArmPlatformTokenSpaceGuid.PcdPL031RtcBase|0x0
|
gArmPlatformTokenSpaceGuid.PcdPL031RtcBase|0x0
|
||||||
|
|
|
@ -441,6 +441,7 @@ InitializeVirtFdtDxe (
|
||||||
|
|
||||||
PcdSet32 (PcdGicDistributorBase, (UINT32)DistBase);
|
PcdSet32 (PcdGicDistributorBase, (UINT32)DistBase);
|
||||||
PcdSet32 (PcdGicInterruptInterfaceBase, (UINT32)CpuBase);
|
PcdSet32 (PcdGicInterruptInterfaceBase, (UINT32)CpuBase);
|
||||||
|
PcdSet32 (PcdArmGicRevision, 2);
|
||||||
|
|
||||||
DEBUG ((EFI_D_INFO, "Found GIC @ 0x%Lx/0x%Lx\n", DistBase, CpuBase));
|
DEBUG ((EFI_D_INFO, "Found GIC @ 0x%Lx/0x%Lx\n", DistBase, CpuBase));
|
||||||
break;
|
break;
|
||||||
|
@ -470,6 +471,7 @@ InitializeVirtFdtDxe (
|
||||||
|
|
||||||
PcdSet32 (PcdGicDistributorBase, (UINT32)DistBase);
|
PcdSet32 (PcdGicDistributorBase, (UINT32)DistBase);
|
||||||
PcdSet32 (PcdGicRedistributorsBase, (UINT32)RedistBase);
|
PcdSet32 (PcdGicRedistributorsBase, (UINT32)RedistBase);
|
||||||
|
PcdSet32 (PcdArmGicRevision, 3);
|
||||||
|
|
||||||
DEBUG ((EFI_D_INFO, "Found GIC v3 (re)distributor @ 0x%Lx (0x%Lx)\n",
|
DEBUG ((EFI_D_INFO, "Found GIC v3 (re)distributor @ 0x%Lx (0x%Lx)\n",
|
||||||
DistBase, RedistBase));
|
DistBase, RedistBase));
|
||||||
|
|
|
@ -53,6 +53,7 @@
|
||||||
gArmVirtTokenSpaceGuid.PcdArmPsciMethod
|
gArmVirtTokenSpaceGuid.PcdArmPsciMethod
|
||||||
gArmVirtTokenSpaceGuid.PcdFwCfgSelectorAddress
|
gArmVirtTokenSpaceGuid.PcdFwCfgSelectorAddress
|
||||||
gArmVirtTokenSpaceGuid.PcdFwCfgDataAddress
|
gArmVirtTokenSpaceGuid.PcdFwCfgDataAddress
|
||||||
|
gArmVirtTokenSpaceGuid.PcdArmGicRevision
|
||||||
gArmTokenSpaceGuid.PcdGicDistributorBase
|
gArmTokenSpaceGuid.PcdGicDistributorBase
|
||||||
gArmTokenSpaceGuid.PcdGicRedistributorsBase
|
gArmTokenSpaceGuid.PcdGicRedistributorsBase
|
||||||
gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase
|
gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase
|
||||||
|
|
Loading…
Reference in New Issue