Enabling support for compilation of PciHost Bridge Library,
PciHostBridge Dxe Driver and include respective serdes functions

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Vabhav <vabhav.sha...@nxp.com>
---
 Platform/NXP/LS1043aRdbPkg/LS1043aRdbPkg.dsc | 31 ++++++++++++++++++++++++++++
 Platform/NXP/LS1043aRdbPkg/LS1043aRdbPkg.fdf |  6 ++++++
 Silicon/NXP/Chassis/Chassis.c                | 11 ++++++++++
 Silicon/NXP/Chassis/Chassis2/SerDes.h        | 11 ++++++++++
 Silicon/NXP/LS1043A/LS1043A.dsc              |  1 +
 5 files changed, 60 insertions(+)

diff --git a/Platform/NXP/LS1043aRdbPkg/LS1043aRdbPkg.dsc 
b/Platform/NXP/LS1043aRdbPkg/LS1043aRdbPkg.dsc
index 7ea791e..21f451f 100644
--- a/Platform/NXP/LS1043aRdbPkg/LS1043aRdbPkg.dsc
+++ b/Platform/NXP/LS1043aRdbPkg/LS1043aRdbPkg.dsc
@@ -54,6 +54,11 @@
   #
   MmcLib|edk2-platforms/Platform/NXP/Library/MmcLib/MmcLib.inf
 
+  #
+  # Pci Library
+  #
+  
PciHostBridgeLib|edk2-platforms/Platform/NXP/Library/PciHostBridgeLib/PciHostBridgeLib.inf
+
 [PcdsFixedAtBuild.common]
 
   #
@@ -70,6 +75,7 @@
   gNxpQoriqLsTokenSpaceGuid.PcdWdogBigEndian|TRUE
   gNxpQoriqLsTokenSpaceGuid.PcdMmcBigEndian|TRUE
   gNxpQoriqLsTokenSpaceGuid.PcdIfcBigEndian|TRUE
+  gNxpQoriqLsTokenSpaceGuid.PcdPciLutBigEndian|TRUE
 
   #
   # NV Storage PCDs.
@@ -79,6 +85,25 @@
   gNxpQoriqLsTokenSpaceGuid.PcdFlashReservedRegionBase64|0x60300000
 
   #
+  # PCIe Pcds
+  #
+  gNxpQoriqLsTokenSpaceGuid.PcdPciExp1SysAddr|0x03400000
+  gNxpQoriqLsTokenSpaceGuid.PcdPciExp2SysAddr|0x03500000
+  gNxpQoriqLsTokenSpaceGuid.PcdPciExp3SysAddr|0x03600000
+  gNxpQoriqLsTokenSpaceGuid.PcdKludgeMapPciMmioAsCached|FALSE
+  gNxpQoriqLsTokenSpaceGuid.PcdPciMaxPayloadFixup|FALSE
+  gNxpQoriqLsTokenSpaceGuid.PcdPciBusMin|0
+  gNxpQoriqLsTokenSpaceGuid.PcdPciBusMax|255
+  gNxpQoriqLsTokenSpaceGuid.PcdPci1Mmio64Base|0x4040000000
+  gNxpQoriqLsTokenSpaceGuid.PcdPci2Mmio64Base|0x4840000000
+  gNxpQoriqLsTokenSpaceGuid.PcdPci3Mmio64Base|0x5040000000
+  gNxpQoriqLsTokenSpaceGuid.PcdPciMmio64Size|0x0040000000
+  gNxpQoriqLsTokenSpaceGuid.PcdPciDebug|FALSE
+  gNxpQoriqLsTokenSpaceGuid.PcdPcieLutBase|0x10000
+  gNxpQoriqLsTokenSpaceGuid.PcdPcieLutDbg|0x7FC
+  gNxpQoriqLsTokenSpaceGuid.PcdPciMemOneTransaction|0x10000000
+
+  #
   # I2C controller Pcds
   #
   gNxpQoriqLsTokenSpaceGuid.PcdI2cBus|0
@@ -109,4 +134,10 @@
   EmbeddedPkg/Universal/MmcDxe/MmcDxe.inf
   edk2-platforms/Platform/NXP/Drivers/MmcHostDxe/MmcHostDxe.inf
 
+  #
+  # PCI
+  #
+  MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
+  edk2-platforms/Platform/NXP/Drivers/PciHostBridgeDxe/PciHostBridgeDxe.inf
+
  ##
diff --git a/Platform/NXP/LS1043aRdbPkg/LS1043aRdbPkg.fdf 
b/Platform/NXP/LS1043aRdbPkg/LS1043aRdbPkg.fdf
index 023480b..d462ae2 100644
--- a/Platform/NXP/LS1043aRdbPkg/LS1043aRdbPkg.fdf
+++ b/Platform/NXP/LS1043aRdbPkg/LS1043aRdbPkg.fdf
@@ -127,6 +127,12 @@ READ_LOCK_STATUS   = TRUE
   INF edk2-platforms/Platform/NXP/Drivers/NorFlashDxe/NorFlashDxe.inf
 
   #
+  # PCI
+  #
+  INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
+  INF edk2-platforms/Platform/NXP/Drivers/PciHostBridgeDxe/PciHostBridgeDxe.inf
+
+  #
   # Network modules
   #
   INF  MdeModulePkg/Universal/Network/SnpDxe/SnpDxe.inf
diff --git a/Silicon/NXP/Chassis/Chassis.c b/Silicon/NXP/Chassis/Chassis.c
index a6a77c2..2a7ecbc 100644
--- a/Silicon/NXP/Chassis/Chassis.c
+++ b/Silicon/NXP/Chassis/Chassis.c
@@ -411,3 +411,14 @@ CalculateI2cClockRate (
 
   return SocSysInfo.FreqSystemBus;
 }
+
+/**
+   Return PCI address space mask
+**/
+UINT64
+GetPciAddressSpaceMask (
+  IN  VOID
+  )
+{
+  return MAX_UINT32;
+}
diff --git a/Silicon/NXP/Chassis/Chassis2/SerDes.h 
b/Silicon/NXP/Chassis/Chassis2/SerDes.h
index 9fc60d3..fb2e728 100644
--- a/Silicon/NXP/Chassis/Chassis2/SerDes.h
+++ b/Silicon/NXP/Chassis/Chassis2/SerDes.h
@@ -66,4 +66,15 @@ SerDesProbeLanes(
   IN VOID *Arg
   );
 
+VOID
+GetSerdesProtocolMaps(
+  OUT UINT64 *SerDes1ProtocolMapPtr
+);
+
+BOOLEAN
+IsSerDesLaneProtocolConfigured(
+  IN UINT64 SerDes1ProtocolMap,
+  IN SERDES_PROTOCOL Device
+);
+
 #endif /* __SERDES_H */
diff --git a/Silicon/NXP/LS1043A/LS1043A.dsc b/Silicon/NXP/LS1043A/LS1043A.dsc
index 024c09a..22cea54 100644
--- a/Silicon/NXP/LS1043A/LS1043A.dsc
+++ b/Silicon/NXP/LS1043A/LS1043A.dsc
@@ -76,5 +76,6 @@
   gNxpQoriqLsTokenSpaceGuid.PcdI2c2BaseAddr|0x021A0000
   gNxpQoriqLsTokenSpaceGuid.PcdI2c3BaseAddr|0x021B0000
   gNxpQoriqLsTokenSpaceGuid.PcdNumI2cController|4
+  gNxpQoriqLsTokenSpaceGuid.PcdNumPciController|3
 
 ##
-- 
1.9.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to