From: "Aditya Angadi" <aditya.angadi@arm.com>
To: devel@edk2.groups.io
Cc: Leif Lindholm <leif@nuviainc.com>,
Ard Biesheuvel <ard.biesheuvel@arm.com>,
Sami Mujawar <sami.mujawar@arm.com>,
Thomas Abraham <thomas.abraham@arm.com>,
Vijayenthiran Subramaniam <vijayenthiran.subramaniam@arm.com>,
Aditya Angadi <aditya.angadi@arm.com>
Subject: [PATCH][edk2-platforms 1/5] Platform/ARM/SgiPkg: Use PCD for base addresses
Date: Fri, 18 Dec 2020 19:37:22 +0530 [thread overview]
Message-ID: <20201218140726.23670-2-aditya.angadi@arm.com> (raw)
In-Reply-To: <20201218140726.23670-1-aditya.angadi@arm.com>
Certain base addresses have been specified using macros. But the
upcoming derivative platforms that have to be supported under the
SgiPkg have changes in some of those base addresses and so these
macros are not applicable on those upcoming platforms.
So convert the affected macros into PCDs and let the platform
description file choose the appropriate set of PCDs that is
applicable for the platform. In addition to this, use the PCDs
to replace existing uses of the macros that have been converted
into PCDs.
Signed-off-by: Aditya Angadi <aditya.angadi@arm.com>
---
Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl | 2 +-
Platform/ARM/SgiPkg/Include/SgiPlatform.h | 32 -------------
Platform/ARM/SgiPkg/Library/NorFlashLib/NorFlashLib.c | 12 ++---
Platform/ARM/SgiPkg/Library/NorFlashLib/NorFlashLib.inf | 7 ++-
Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLib.inf | 9 ++++
Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLibMem.c | 34 +++++++-------
Platform/ARM/SgiPkg/RdE1Edge/RdE1Edge.dsc | 1 +
Platform/ARM/SgiPkg/RdN1Edge/RdN1Edge.dsc | 1 +
Platform/ARM/SgiPkg/RdN1EdgeX2/RdN1EdgeX2.dsc | 1 +
Platform/ARM/SgiPkg/RdV1/RdV1.dsc | 1 +
Platform/ARM/SgiPkg/RdV1Mc/RdV1Mc.dsc | 1 +
Platform/ARM/SgiPkg/Sgi575/Sgi575.dsc | 1 +
Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc | 49 ++++++++++++++++++++
Platform/ARM/SgiPkg/SgiPlatform.dec | 5 ++
Platform/ARM/SgiPkg/SgiPlatform.dsc.inc | 20 --------
15 files changed, 100 insertions(+), 76 deletions(-)
diff --git a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
index 458a711cfd31..55a8ed04d5aa 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
+++ b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
@@ -25,7 +25,7 @@ DefinitionBlock ("SsdtRosTable.aml", "SSDT", 1, "ARMLTD", "ARMSGI",
FixedPcdGet64 (PcdSerialDbgRegisterBase),
0x1000
)
- Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive) { 147 }
+ Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive) { FixedPcdGet32 (PL011UartInterrupt) }
})
}
diff --git a/Platform/ARM/SgiPkg/Include/SgiPlatform.h b/Platform/ARM/SgiPkg/Include/SgiPlatform.h
index f5174c12b89a..d6ab585cce80 100644
--- a/Platform/ARM/SgiPkg/Include/SgiPlatform.h
+++ b/Platform/ARM/SgiPkg/Include/SgiPlatform.h
@@ -13,26 +13,6 @@
// Platform Memory Map
************************************************************************************/
-// Expansion AXI - SMC Chip Select 0
-#define SGI_EXP_SMC_CS0_BASE 0x08000000
-#define SGI_EXP_SMC_CS0_SZ SIZE_64MB
-
-// Expansion AXI - SMC Chip Select 1
-#define SGI_EXP_SMC_CS1_BASE 0x0C000000
-#define SGI_EXP_SMC_CS1_SZ SIZE_64MB
-
-// Expansion AXI - SMSC 91C111 (Ethernet)
-#define SGI_EXP_SMSC91X_BASE 0x18000000
-#define SGI_EXP_SMSC91X_SZ SIZE_64MB
-
-// Expansion AXI - System peripherals
-#define SGI_EXP_SYS_PERIPH_BASE 0x1C000000
-#define SGI_EXP_SYS_PERIPH_SZ SIZE_2MB
-
-// Base address of system peripherals
-#define SGI_EXP_SYSPH_SYSTEM_REGISTERS 0x1C010000
-#define SGI_EXP_SYSPH_VIRTIO_BLOCK_BASE 0x1C130000
-
// Sub System Peripherals - UART0
#define SGI_SUBSYS_UART0_BASE 0x2A400000
#define SGI_SUBSYS_UART0_SZ 0x00010000
@@ -45,18 +25,6 @@
#define SGI_SUBSYS_GENERIC_WDOG_BASE 0x2A440000
#define SGI_SUBSYS_GENERIC_WDOG_SZ SIZE_128KB
-// Expansion AXI - Platform Peripherals - HDLCD1
-#define SGI_EXP_PLAT_PERIPH_HDLCD1_BASE 0x7FF60000
-#define SGI_EXP_PLAT_PERIPH_HDLCD1_SZ SIZE_64KB
-
-// Expansion AXI - Platform Peripherals - UART0
-#define SGI_EXP_PLAT_PERIPH_UART0_BASE 0x7FF70000
-#define SGI_EXP_PLAT_PERIPH_UART0_SZ SIZE_64KB
-
-// Expansion AXI - Platform Peripherals - UART1
-#define SGI_EXP_PLAT_PERIPH_UART1_BASE 0x7FF80000
-#define SGI_EXP_PLAT_PERIPH_UART1_SZ SIZE_64KB
-
// Register offsets into the System Registers Block
#define SGI_SYSPH_SYS_REG_FLASH 0x4C
#define SGI_SYSPH_SYS_REG_FLASH_RWEN 0x1
diff --git a/Platform/ARM/SgiPkg/Library/NorFlashLib/NorFlashLib.c b/Platform/ARM/SgiPkg/Library/NorFlashLib/NorFlashLib.c
index e3bf2726b557..b5dfae28d10a 100644
--- a/Platform/ARM/SgiPkg/Library/NorFlashLib/NorFlashLib.c
+++ b/Platform/ARM/SgiPkg/Library/NorFlashLib/NorFlashLib.c
@@ -1,6 +1,6 @@
/** @file
- Copyright (c) 2018, ARM Ltd. All rights reserved.
+ Copyright (c) 2020, ARM Ltd. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
@@ -14,14 +14,14 @@
STATIC NOR_FLASH_DESCRIPTION mNorFlashDevices[] = {
{
- SGI_EXP_SMC_CS0_BASE,
- SGI_EXP_SMC_CS0_BASE,
+ FixedPcdGet64 (PcdSmcCs0Base),
+ FixedPcdGet64 (PcdSmcCs0Base),
SIZE_256KB * 256,
SIZE_256KB,
},
{
- SGI_EXP_SMC_CS1_BASE,
- SGI_EXP_SMC_CS1_BASE,
+ FixedPcdGet64 (PcdSmcCs1Base),
+ FixedPcdGet64 (PcdSmcCs1Base),
SIZE_256KB * 256,
SIZE_256KB,
},
@@ -34,7 +34,7 @@ NorFlashPlatformInitialization (
{
UINT64 SysRegFlash;
- SysRegFlash = SGI_EXP_SYSPH_SYSTEM_REGISTERS + SGI_SYSPH_SYS_REG_FLASH;
+ SysRegFlash = FixedPcdGet64 (PcdSysPeriphSysRegBase) + SGI_SYSPH_SYS_REG_FLASH;
MmioOr32 (SysRegFlash, SGI_SYSPH_SYS_REG_FLASH_RWEN);
return EFI_SUCCESS;
}
diff --git a/Platform/ARM/SgiPkg/Library/NorFlashLib/NorFlashLib.inf b/Platform/ARM/SgiPkg/Library/NorFlashLib/NorFlashLib.inf
index a1439c10d1fa..74486eacd009 100644
--- a/Platform/ARM/SgiPkg/Library/NorFlashLib/NorFlashLib.inf
+++ b/Platform/ARM/SgiPkg/Library/NorFlashLib/NorFlashLib.inf
@@ -1,6 +1,6 @@
#/** @file
#
-# Copyright (c) 2018, ARM Ltd. All rights reserved.
+# Copyright (c) 2020, ARM Ltd. All rights reserved.
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
@@ -26,3 +26,8 @@ [LibraryClasses]
BaseLib
DebugLib
IoLib
+
+[FixedPcd]
+ gArmSgiTokenSpaceGuid.PcdSysPeriphSysRegBase
+ gArmSgiTokenSpaceGuid.PcdSmcCs0Base
+ gArmSgiTokenSpaceGuid.PcdSmcCs1Base
diff --git a/Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLib.inf b/Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLib.inf
index 464a7cde4513..2ed0ff1fb62e 100644
--- a/Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLib.inf
+++ b/Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLib.inf
@@ -19,6 +19,7 @@ [Packages]
MdeModulePkg/MdeModulePkg.dec
MdePkg/MdePkg.dec
Platform/ARM/SgiPkg/SgiPlatform.dec
+ Platform/ARM/VExpressPkg/ArmVExpressPkg.dec
StandaloneMmPkg/StandaloneMmPkg.dec
[LibraryClasses]
@@ -39,6 +40,7 @@ [Sources.AARCH64]
[FixedPcd]
gArmPlatformTokenSpaceGuid.PcdClusterCount
gArmPlatformTokenSpaceGuid.PcdCoreCount
+ gArmPlatformTokenSpaceGuid.PcdArmHdLcdBase
gArmSgiTokenSpaceGuid.PcdDramBlock2Base
gArmSgiTokenSpaceGuid.PcdDramBlock2Size
@@ -63,8 +65,15 @@ [FixedPcd]
gArmTokenSpaceGuid.PcdMmBufferBase
gArmTokenSpaceGuid.PcdMmBufferSize
+ gArmSgiTokenSpaceGuid.PcdSmcCs0Base
+ gArmSgiTokenSpaceGuid.PcdSmcCs1Base
+ gArmSgiTokenSpaceGuid.PcdSysPeriphBase
+
+ gArmVExpressTokenSpaceGuid.PcdLan91xDxeBaseAddress
gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
+ gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64
+ gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase
[Guids]
gArmSgiPlatformIdDescriptorGuid
diff --git a/Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLibMem.c b/Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLibMem.c
index e30819c5cd55..ecca91e0f51b 100644
--- a/Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLibMem.c
+++ b/Platform/ARM/SgiPkg/Library/PlatformLib/PlatformLibMem.c
@@ -106,27 +106,29 @@ ArmPlatformGetVirtualMemoryMap (
}
// Expansion AXI - SMC Chip Select 0 (NOR Flash)
- VirtualMemoryTable[Index].PhysicalBase = SGI_EXP_SMC_CS0_BASE;
- VirtualMemoryTable[Index].VirtualBase = SGI_EXP_SMC_CS0_BASE;
+ VirtualMemoryTable[Index].PhysicalBase = FixedPcdGet64 (PcdSmcCs0Base);
+ VirtualMemoryTable[Index].VirtualBase = FixedPcdGet64 (PcdSmcCs0Base);
VirtualMemoryTable[Index].Length = SIZE_64MB;
VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
// Expansion AXI - SMC Chip Select 1 (NOR Flash)
- VirtualMemoryTable[++Index].PhysicalBase = SGI_EXP_SMC_CS1_BASE;
- VirtualMemoryTable[Index].VirtualBase = SGI_EXP_SMC_CS1_BASE;
+ VirtualMemoryTable[++Index].PhysicalBase = FixedPcdGet64 (PcdSmcCs1Base);
+ VirtualMemoryTable[Index].VirtualBase = FixedPcdGet64 (PcdSmcCs1Base);
VirtualMemoryTable[Index].Length = SIZE_64MB;
VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
+#if defined (EDK2_ENABLE_SMSC_91X)
// Expansion AXI - SMSC 91X (Ethernet)
- VirtualMemoryTable[++Index].PhysicalBase = SGI_EXP_SMSC91X_BASE;
- VirtualMemoryTable[Index].VirtualBase = SGI_EXP_SMSC91X_BASE;
- VirtualMemoryTable[Index].Length = SGI_EXP_SMSC91X_SZ;
+ VirtualMemoryTable[++Index].PhysicalBase = FixedPcdGet32 (PcdLan91xDxeBaseAddress);
+ VirtualMemoryTable[Index].VirtualBase = FixedPcdGet32 (PcdLan91xDxeBaseAddress);
+ VirtualMemoryTable[Index].Length = SIZE_64MB;
VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
+#endif
// Expansion AXI - System Peripherals
- VirtualMemoryTable[++Index].PhysicalBase = SGI_EXP_SYS_PERIPH_BASE;
- VirtualMemoryTable[Index].VirtualBase = SGI_EXP_SYS_PERIPH_BASE;
- VirtualMemoryTable[Index].Length = SGI_EXP_SYS_PERIPH_SZ;
+ VirtualMemoryTable[++Index].PhysicalBase = FixedPcdGet64 (PcdSysPeriphBase);
+ VirtualMemoryTable[Index].VirtualBase = FixedPcdGet64 (PcdSysPeriphBase);
+ VirtualMemoryTable[Index].Length = SIZE_32MB;
VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
// Sub System Peripherals - Generic Watchdog
@@ -142,15 +144,15 @@ ArmPlatformGetVirtualMemoryMap (
VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
// Expansion AXI - Platform Peripherals - HDLCD1
- VirtualMemoryTable[++Index].PhysicalBase = SGI_EXP_PLAT_PERIPH_HDLCD1_BASE;
- VirtualMemoryTable[Index].VirtualBase = SGI_EXP_PLAT_PERIPH_HDLCD1_BASE;
- VirtualMemoryTable[Index].Length = SGI_EXP_PLAT_PERIPH_HDLCD1_SZ;
+ VirtualMemoryTable[++Index].PhysicalBase = FixedPcdGet32 (PcdArmHdLcdBase);
+ VirtualMemoryTable[Index].VirtualBase = FixedPcdGet32 (PcdArmHdLcdBase);
+ VirtualMemoryTable[Index].Length = SIZE_64KB;
VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
// Expansion AXI - Platform Peripherals - UART1
- VirtualMemoryTable[++Index].PhysicalBase = SGI_EXP_PLAT_PERIPH_UART1_BASE;
- VirtualMemoryTable[Index].VirtualBase = SGI_EXP_PLAT_PERIPH_UART1_BASE;
- VirtualMemoryTable[Index].Length = SGI_EXP_PLAT_PERIPH_UART1_SZ;
+ VirtualMemoryTable[++Index].PhysicalBase = FixedPcdGet64 (PcdSerialRegisterBase);
+ VirtualMemoryTable[Index].VirtualBase = FixedPcdGet64 (PcdSerialRegisterBase);
+ VirtualMemoryTable[Index].Length = SIZE_64KB;
VirtualMemoryTable[Index].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
// DDR - (2GB - 16MB)
diff --git a/Platform/ARM/SgiPkg/RdE1Edge/RdE1Edge.dsc b/Platform/ARM/SgiPkg/RdE1Edge/RdE1Edge.dsc
index a108b4eab0d8..26ab7e6ef6b8 100644
--- a/Platform/ARM/SgiPkg/RdE1Edge/RdE1Edge.dsc
+++ b/Platform/ARM/SgiPkg/RdE1Edge/RdE1Edge.dsc
@@ -24,6 +24,7 @@ [Defines]
# include common definitions from SgiPlatform.dsc
!include Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
+!include Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc
################################################################################
#
diff --git a/Platform/ARM/SgiPkg/RdN1Edge/RdN1Edge.dsc b/Platform/ARM/SgiPkg/RdN1Edge/RdN1Edge.dsc
index a59a6c5b8f3a..7d397438bfff 100644
--- a/Platform/ARM/SgiPkg/RdN1Edge/RdN1Edge.dsc
+++ b/Platform/ARM/SgiPkg/RdN1Edge/RdN1Edge.dsc
@@ -24,6 +24,7 @@ [Defines]
# include common definitions from SgiPlatform.dsc
!include Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
+!include Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc
################################################################################
#
diff --git a/Platform/ARM/SgiPkg/RdN1EdgeX2/RdN1EdgeX2.dsc b/Platform/ARM/SgiPkg/RdN1EdgeX2/RdN1EdgeX2.dsc
index 1cb41d119e3e..5c87a0ca9b3c 100644
--- a/Platform/ARM/SgiPkg/RdN1EdgeX2/RdN1EdgeX2.dsc
+++ b/Platform/ARM/SgiPkg/RdN1EdgeX2/RdN1EdgeX2.dsc
@@ -24,6 +24,7 @@ [Defines]
# include common definitions from SgiPlatform.dsc
!include Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
+!include Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc
################################################################################
#
diff --git a/Platform/ARM/SgiPkg/RdV1/RdV1.dsc b/Platform/ARM/SgiPkg/RdV1/RdV1.dsc
index 223f4815c122..e8ee0e8769a8 100644
--- a/Platform/ARM/SgiPkg/RdV1/RdV1.dsc
+++ b/Platform/ARM/SgiPkg/RdV1/RdV1.dsc
@@ -24,6 +24,7 @@ [Defines]
# include common definitions from SgiPlatform.dsc
!include Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
+!include Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc
################################################################################
#
diff --git a/Platform/ARM/SgiPkg/RdV1Mc/RdV1Mc.dsc b/Platform/ARM/SgiPkg/RdV1Mc/RdV1Mc.dsc
index f138d4c43885..c2fcc0df4571 100644
--- a/Platform/ARM/SgiPkg/RdV1Mc/RdV1Mc.dsc
+++ b/Platform/ARM/SgiPkg/RdV1Mc/RdV1Mc.dsc
@@ -24,6 +24,7 @@ [Defines]
# include common definitions from SgiPlatform.dsc
!include Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
+!include Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc
################################################################################
#
diff --git a/Platform/ARM/SgiPkg/Sgi575/Sgi575.dsc b/Platform/ARM/SgiPkg/Sgi575/Sgi575.dsc
index 60e2a88bb591..a8675368415b 100644
--- a/Platform/ARM/SgiPkg/Sgi575/Sgi575.dsc
+++ b/Platform/ARM/SgiPkg/Sgi575/Sgi575.dsc
@@ -24,6 +24,7 @@ [Defines]
# include common definitions from SgiPlatform.dsc
!include Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
+!include Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc
################################################################################
#
diff --git a/Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc b/Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc
new file mode 100644
index 000000000000..2549c3129b0f
--- /dev/null
+++ b/Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc
@@ -0,0 +1,49 @@
+#
+# Copyright (c) 2020, ARM Limited. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+#
+
+[PcdsFixedAtBuild.common]
+ # System Peripherals
+ gArmSgiTokenSpaceGuid.PcdSmcCs0Base|0x08000000
+ gArmSgiTokenSpaceGuid.PcdSmcCs1Base|0x0C000000
+ gArmSgiTokenSpaceGuid.PcdSysPeriphBase|0x1C000000
+ gArmSgiTokenSpaceGuid.PcdSysPeriphSysRegBase|0x1C010000
+
+ # Non-Volatile variable storage
+ gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0x0C000000
+ gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64|0x0D400000
+ gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64|0x0E800000
+
+ # PL011 - Serial Terminal
+ gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x7FF80000
+
+ # PL370 - HDLCD1
+ gArmPlatformTokenSpaceGuid.PcdArmHdLcdBase|0x7FF60000
+
+ # PL011 - Serial Debug UART
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase|0x7FF80000
+ gArmPlatformTokenSpaceGuid.PL011UartInterrupt|147
+
+ # PL031 RealTimeClock
+ gArmPlatformTokenSpaceGuid.PcdPL031RtcBase|0x1C170000
+
+ # Virtio Disk
+ gArmSgiTokenSpaceGuid.PcdVirtioBlkBaseAddress|0x1C130000
+ gArmSgiTokenSpaceGuid.PcdVirtioBlkSize|0x10000
+ gArmSgiTokenSpaceGuid.PcdVirtioBlkInterrupt|202
+
+ # Ethernet
+!ifdef EDK2_ENABLE_SMSC_91X
+ gArmVExpressTokenSpaceGuid.PcdLan91xDxeBaseAddress|0x18000000
+!endif
+ gArmSgiTokenSpaceGuid.PcdVirtioNetBaseAddress|0x1C150000
+ gArmSgiTokenSpaceGuid.PcdVirtioNetInterrupt|204
+
+ # PCIe
+ gArmTokenSpaceGuid.PcdPciMmio32Base|0x70000000
+ gArmTokenSpaceGuid.PcdPciMmio32Size|0x07800000
+ gArmTokenSpaceGuid.PcdPciMmio64Base|0x5000000000
+ gArmTokenSpaceGuid.PcdPciMmio64Size|0x3000000000
+ gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x60000000
diff --git a/Platform/ARM/SgiPkg/SgiPlatform.dec b/Platform/ARM/SgiPkg/SgiPlatform.dec
index dac7fdc308b1..3f0d38a013f2 100644
--- a/Platform/ARM/SgiPkg/SgiPlatform.dec
+++ b/Platform/ARM/SgiPkg/SgiPlatform.dec
@@ -52,5 +52,10 @@ [PcdsFixedAtBuild]
# GIC
gArmSgiTokenSpaceGuid.PcdGicSize|0|UINT64|0x0000000A
+ gArmSgiTokenSpaceGuid.PcdSmcCs0Base|0|UINT64|0x0000000C
+ gArmSgiTokenSpaceGuid.PcdSmcCs1Base|0|UINT64|0x0000000D
+ gArmSgiTokenSpaceGuid.PcdSysPeriphBase|0x00000000|UINT64|0x0000000E
+ gArmSgiTokenSpaceGuid.PcdSysPeriphSysRegBase|0x0|UINT64|0x0000000F
+
[Ppis]
gNtFwConfigDtInfoPpiGuid = { 0x6f606eb3, 0x9123, 0x4e15, { 0xa8, 0x9b, 0x0f, 0xac, 0x66, 0xef, 0xd0, 0x17 } }
diff --git a/Platform/ARM/SgiPkg/SgiPlatform.dsc.inc b/Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
index f5f9f144eee9..2beab1f07278 100644
--- a/Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
+++ b/Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
@@ -93,11 +93,8 @@ [PcdsFixedAtBuild.common]
gArmSgiTokenSpaceGuid.PcdDramBlock2Size|0x180000000
# NV Storage PCDs. Use base of 0x08000000 for NOR0, 0xC0000000 for NOR 1
- gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase|0x0C000000
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize|0x01400000
- gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0x0D400000
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize|0x01400000
- gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0x0E800000
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize|0x01400000
# Stacks for MPCores in Normal World
@@ -117,17 +114,11 @@ [PcdsFixedAtBuild.common]
gArmTokenSpaceGuid.PcdPciIoBase|0x0
gArmTokenSpaceGuid.PcdPciIoSize|0x00800000
gArmTokenSpaceGuid.PcdPciIoTranslation|0x77800000
- gArmTokenSpaceGuid.PcdPciMmio32Base|0x70000000
- gArmTokenSpaceGuid.PcdPciMmio32Size|0x07800000
gArmTokenSpaceGuid.PcdPciMmio32Translation|0x0
- gArmTokenSpaceGuid.PcdPciMmio64Base|0x500000000
- gArmTokenSpaceGuid.PcdPciMmio64Size|0x300000000
gArmTokenSpaceGuid.PcdPciMmio64Translation|0x0
- gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x60000000
gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|24
## PL011 - Serial Terminal
- gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x7FF80000
gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|115200
gEfiMdePkgTokenSpaceGuid.PcdUartDefaultReceiveFifoDepth|0
gArmPlatformTokenSpaceGuid.PL011UartInteger|4
@@ -137,13 +128,9 @@ [PcdsFixedAtBuild.common]
gArmPlatformTokenSpaceGuid.PcdArmHdLcdBase|0x7FF60000
## PL011 - Serial Debug UART
- gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase|0x7FF80000
gArmPlatformTokenSpaceGuid.PcdSerialDbgUartClkInHz|7372800
gArmPlatformTokenSpaceGuid.PcdSerialDbgUartBaudRate|115200
- gArmPlatformTokenSpaceGuid.PL011UartInterrupt|147
- ## PL031 RealTimeClock
- gArmPlatformTokenSpaceGuid.PcdPL031RtcBase|0x1C170000
# List of Device Paths that support BootMonFs
gArmBootMonFsTokenSpaceGuid.PcdBootMonFsSupportedDevicePaths|L"VenHw(93E34C7E-B50E-11DF-9223-2443DFD72085,00)"
@@ -157,17 +144,10 @@ [PcdsFixedAtBuild.common]
gEmbeddedTokenSpaceGuid.PcdTimerPeriod|1000
# Virtio Disk
- gArmSgiTokenSpaceGuid.PcdVirtioBlkBaseAddress|0x1c130000
gArmSgiTokenSpaceGuid.PcdVirtioBlkSize|0x10000
- gArmSgiTokenSpaceGuid.PcdVirtioBlkInterrupt|202
# Ethernet / Virtio Network
-!ifdef EDK2_ENABLE_SMSC_91X
- gArmVExpressTokenSpaceGuid.PcdLan91xDxeBaseAddress|0x18000000
-!endif
- gArmSgiTokenSpaceGuid.PcdVirtioNetBaseAddress|0x1c150000
gArmSgiTokenSpaceGuid.PcdVirtioNetSize|0x10000
- gArmSgiTokenSpaceGuid.PcdVirtioNetInterrupt|204
#
# Set the base address and size of the buffer used
--
2.17.1
next prev parent reply other threads:[~2020-12-18 14:07 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-12-18 14:07 [PATCH][edk2-platforms 0/5] Add support for RD-N2 platform Aditya Angadi
2020-12-18 14:07 ` Aditya Angadi [this message]
2020-12-18 14:07 ` [PATCH][edk2-platforms 2/5] Platform/ARM/SgiPkg: remove the use of SMSC Lan91x controller Aditya Angadi
2020-12-18 14:07 ` [PATCH][edk2-platforms 3/5] Platform/ARM/SgiPkg: Define base address PCD for derivative platforms Aditya Angadi
2020-12-18 14:07 ` [PATCH][edk2-platforms 4/5] Platform/ARM/SgiPkg: Add ACPI tables for RD-N2 platform Aditya Angadi
2020-12-18 14:07 ` [PATCH][edk2-platforms 5/5] Platform/ARM/SgiPkg: Add initial support " Aditya Angadi
2021-01-04 17:48 ` [PATCH][edk2-platforms 0/5] Add " Ard Biesheuvel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201218140726.23670-2-aditya.angadi@arm.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox