The patch series removes PciExpressLib and enables CCIX port
as PCIe root on N1SDP.
V5:
- Split the CCIX patch, separate PCD updates and CCIX root port enablement.
- Use GET_SEG_ macro for segment detection and update logic accordingly.
V4:
- Remove PciExpressLib and use PciSegmentLib instead. More detailed explanation
is included in the patch.
V3:
- The conditional logic in GetPciExpressAddress is made simple.
- Removed few more PCD entries that were unused.
- Removed hardcoded entries.
V2:
- Removed few PCDs entries that were not used.
- Migrated to latest version edk2-platform and validated the patches.
V1:
- The PciExpressLib is updated to validate the PCIe addresses
and introducing corresponding PCD entries.
- A custom PCI Segment library is adapted from SynQuacerPciSegmentLib
and ported for N1Sdp.
- The root complex node info in PciHostBridge library is updated to
include the CCIX port information.
The changes can be seen at:
https://github.com/khasim/edk2-platforms-n1sdp/tree/n1sdp-ccix-root
Khasim Syed Mohammed (4):
Silicon/ARM/NeoverseN1Soc: Port PCI Segment Library
Silicon/ARM/NeoverseN1Soc: Update PCDs to support multiple PCI root ports
Silicon/ARM/NeoverseN1Soc: Add CCIX root complex support
Silicon/ARM/NeoverseN1Soc: Remove PciExpressLib use PciSegmentLib instead
.../AslTables/SsdtPci.asl | 8 +-
.../AslTables/SsdtRemotePci.asl | 4 +-
.../ConfigurationManager.c | 24 +-
.../ConfigurationManagerDxe.inf | 18 +-
Platform/ARM/N1Sdp/N1SdpPlatform.dec | 8 -
Platform/ARM/N1Sdp/N1SdpPlatform.dsc | 5 +-
.../PciExpressLib.c | 1589 ----------------
.../PciExpressLib.inf | 56 -
.../PciHostBridgeLib/PciHostBridgeLib.c | 71 +-
.../PciHostBridgeLib/PciHostBridgeLib.inf | 11 +-
.../Library/PciSegmentLib/PciSegmentLib.c | 1602 +++++++++++++++++
.../Library/PciSegmentLib/PciSegmentLib.inf | 38 +
.../Library/PlatformLib/PlatformLib.inf | 1 +
.../Library/PlatformLib/PlatformLibMem.c | 4 +-
Silicon/ARM/NeoverseN1Soc/NeoverseN1Soc.dec | 58 +-
15 files changed, 1785 insertions(+), 1712 deletions(-)
delete mode 100644 Silicon/ARM/NeoverseN1Soc/Library/NeoverseN1SocPciExpressLib/PciExpressLib.c
delete mode 100644 Silicon/ARM/NeoverseN1Soc/Library/NeoverseN1SocPciExpressLib/PciExpressLib.inf
create mode 100644 Silicon/ARM/NeoverseN1Soc/Library/PciSegmentLib/PciSegmentLib.c
create mode 100644 Silicon/ARM/NeoverseN1Soc/Library/PciSegmentLib/PciSegmentLib.inf
--
2.17.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#85142): https://edk2.groups.io/g/devel/message/85142
Mute This Topic: https://groups.io/mt/87890264/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-