[edk2-devel] [PATCH edk2-platforms 1/7] Platform/NXP: LX2160aRdbPkg: Add PCIe space in VirtualMemoryMap
Wasim Khan
wasim.khan at oss.nxp.com
Tue Jun 9 22:17:24 UTC 2020
From: Wasim Khan <wasim.khan at nxp.com>
Add PCIe space in VirtualMemoryMap
Signed-off-by: Wasim Khan <wasim.khan at nxp.com>
---
Silicon/NXP/LX2160A/Include/Soc.h | 8 +++++
Platform/NXP/LX2160aRdbPkg/Library/ArmPlatformLib/ArmPlatformLibMem.c | 38 +++++++++++++++++++-
2 files changed, 45 insertions(+), 1 deletion(-)
diff --git a/Silicon/NXP/LX2160A/Include/Soc.h b/Silicon/NXP/LX2160A/Include/Soc.h
index 6c745d580a6d..7e6359485aaf 100644
--- a/Silicon/NXP/LX2160A/Include/Soc.h
+++ b/Silicon/NXP/LX2160A/Include/Soc.h
@@ -26,6 +26,14 @@
#define LX2160A_FSPI0_PHYS_ADDRESS (BASE_512MB)
#define LX2160A_FSPI0_SIZE (SIZE_256MB)
+#define LX2160A_PCI1_PHYS_ADDRESS 0x8000000000
+#define LX2160A_PCI2_PHYS_ADDRESS 0x8800000000
+#define LX2160A_PCI3_PHYS_ADDRESS 0x9000000000
+#define LX2160A_PCI4_PHYS_ADDRESS 0x9800000000
+#define LX2160A_PCI5_PHYS_ADDRESS 0xa000000000
+#define LX2160A_PCI6_PHYS_ADDRESS 0xa800000000
+#define LX2160A_PCI_SIZE SIZE_32GB
+
#define LX2160A_DCFG_ADDRESS NXP_LAYERSCAPE_CHASSIS3V2_DCFG_ADDRESS
// SVR
diff --git a/Platform/NXP/LX2160aRdbPkg/Library/ArmPlatformLib/ArmPlatformLibMem.c b/Platform/NXP/LX2160aRdbPkg/Library/ArmPlatformLib/ArmPlatformLibMem.c
index 391dab265ad7..c03bc23f4a1d 100644
--- a/Platform/NXP/LX2160aRdbPkg/Library/ArmPlatformLib/ArmPlatformLibMem.c
+++ b/Platform/NXP/LX2160aRdbPkg/Library/ArmPlatformLib/ArmPlatformLibMem.c
@@ -12,7 +12,7 @@
#include <Library/MemoryAllocationLib.h>
#include <Soc.h>
-#define MAX_VIRTUAL_MEMORY_MAP_DESCRIPTORS 6
+#define MAX_VIRTUAL_MEMORY_MAP_DESCRIPTORS 12
/**
Return the Virtual Memory Map of your platform
@@ -71,6 +71,42 @@ ArmPlatformGetVirtualMemoryMap (
VirtualMemoryTable[Index].Length = LX2160A_FSPI0_SIZE;
VirtualMemoryTable[Index++].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
+ // PCIe1
+ VirtualMemoryTable[Index].PhysicalBase = LX2160A_PCI1_PHYS_ADDRESS;
+ VirtualMemoryTable[Index].VirtualBase = LX2160A_PCI1_PHYS_ADDRESS;
+ VirtualMemoryTable[Index].Length = LX2160A_PCI_SIZE;
+ VirtualMemoryTable[Index++].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
+
+ // PCIe2
+ VirtualMemoryTable[Index].PhysicalBase = LX2160A_PCI2_PHYS_ADDRESS;
+ VirtualMemoryTable[Index].VirtualBase = LX2160A_PCI2_PHYS_ADDRESS;
+ VirtualMemoryTable[Index].Length = LX2160A_PCI_SIZE;
+ VirtualMemoryTable[Index++].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
+
+ // PCIe3
+ VirtualMemoryTable[Index].PhysicalBase = LX2160A_PCI3_PHYS_ADDRESS;
+ VirtualMemoryTable[Index].VirtualBase = LX2160A_PCI3_PHYS_ADDRESS;
+ VirtualMemoryTable[Index].Length = LX2160A_PCI_SIZE;
+ VirtualMemoryTable[Index++].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
+
+ // PCIe4
+ VirtualMemoryTable[Index].PhysicalBase = LX2160A_PCI4_PHYS_ADDRESS;
+ VirtualMemoryTable[Index].VirtualBase = LX2160A_PCI4_PHYS_ADDRESS;
+ VirtualMemoryTable[Index].Length = LX2160A_PCI_SIZE;
+ VirtualMemoryTable[Index++].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
+
+ // PCIe5
+ VirtualMemoryTable[Index].PhysicalBase = LX2160A_PCI5_PHYS_ADDRESS;
+ VirtualMemoryTable[Index].VirtualBase = LX2160A_PCI5_PHYS_ADDRESS;
+ VirtualMemoryTable[Index].Length = LX2160A_PCI_SIZE;
+ VirtualMemoryTable[Index++].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
+
+ // PCIe6
+ VirtualMemoryTable[Index].PhysicalBase = LX2160A_PCI6_PHYS_ADDRESS;
+ VirtualMemoryTable[Index].VirtualBase = LX2160A_PCI6_PHYS_ADDRESS;
+ VirtualMemoryTable[Index].Length = LX2160A_PCI_SIZE;
+ VirtualMemoryTable[Index++].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE;
+
// End of Table
ZeroMem (&VirtualMemoryTable[Index], sizeof (ARM_MEMORY_REGION_DESCRIPTOR));
--
2.7.4
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#61063): https://edk2.groups.io/g/devel/message/61063
Mute This Topic: https://groups.io/mt/74793020/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-
More information about the edk2-devel-archive
mailing list