Changes since v3: - Addressed all the comments from Leif. As part of the clean up that resulted from addressing the comments, some of the comments where not applicable anymore (due to fragments of code that had comments were removed during cleanup). - Included detailed description of the workarounds applied to the Neoverse N1 SoC specific PciExpressLib library. - Updated Maintainers.txt to add Silicon/ARM/ directory under ARM entry. - Picked up Leif's Reviewed-by tag for the 4th patch of this series. - Addressed all the comments from Ard.
Changes since v2: - Addressed comments from Thomas. - Renamed Silicon/ARM/N1SDP to Silicon/ARM/NeoverseN1Soc. Changes since v1: - Addressed comments from Ard. - Split the code between Silicon and Platform directories. Arm's N1SDP is a Arm v8.2-A Neoverse N1 CPU based reference design platform primariliy intended for development on Arm64 based platform. This patch series adds initial platform support for this board. The first patch in this series adds the platform libary implementation. The second patch adds a custom implementation of the PciExpressLib due to a PCIe integration issue which results in all config space accesses to non-existing BDFs resulting in a Serror (bus abort). To avoid this, the N1SDP specific PciExpressLib implementation provides a workaround for this issue. The third patch in this series adds the platform library for the PciHostBridge. The fourth patch adds the initial platform support for the N1SDP platform. The fifth patch adds Silicon/ARM/ to ARM entry in maintainers file. Deepak Pandey (4): Silicon/ARM/N1SoC: Add platform library implementation Silicon/ARM/N1SoC: Implement Neoverse N1 Soc specific PciExpressLib Silicon/ARM/N1SoC: Implement the PciHostBridgeLib library Platform/ARM/N1SDP: Add initial N1SDP platform support Pranav Madhu (1): Maintainers.txt: Add Silicon/ARM directory Silicon/ARM/NeoverseN1Soc/NeoverseN1Soc.dec | 46 + Platform/ARM/N1Sdp/N1SdpPlatform.dsc | 245 +++ Platform/ARM/N1Sdp/N1SdpPlatform.fdf | 294 ++++ Silicon/ARM/NeoverseN1Soc/Library/NeoverseN1SocPciExpressLib/PciExpressLib.inf | 56 + Silicon/ARM/NeoverseN1Soc/Library/PciHostBridgeLib/PciHostBridgeLib.inf | 49 + Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.inf | 54 + Silicon/ARM/NeoverseN1Soc/Include/NeoverseN1Soc.h | 66 + Silicon/ARM/NeoverseN1Soc/Library/NeoverseN1SocPciExpressLib/PciExpressLib.c | 1589 ++++++++++++++++++++ Silicon/ARM/NeoverseN1Soc/Library/PciHostBridgeLib/PciHostBridgeLib.c | 184 +++ Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.c | 67 + Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLibMem.c | 151 ++ Maintainers.txt | 1 + Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/AArch64/Helper.S | 84 ++ 13 files changed, 2886 insertions(+) create mode 100644 Silicon/ARM/NeoverseN1Soc/NeoverseN1Soc.dec create mode 100644 Platform/ARM/N1Sdp/N1SdpPlatform.dsc create mode 100644 Platform/ARM/N1Sdp/N1SdpPlatform.fdf create mode 100644 Silicon/ARM/NeoverseN1Soc/Library/NeoverseN1SocPciExpressLib/PciExpressLib.inf create mode 100644 Silicon/ARM/NeoverseN1Soc/Library/PciHostBridgeLib/PciHostBridgeLib.inf create mode 100644 Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.inf create mode 100644 Silicon/ARM/NeoverseN1Soc/Include/NeoverseN1Soc.h create mode 100644 Silicon/ARM/NeoverseN1Soc/Library/NeoverseN1SocPciExpressLib/PciExpressLib.c create mode 100644 Silicon/ARM/NeoverseN1Soc/Library/PciHostBridgeLib/PciHostBridgeLib.c create mode 100644 Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.c create mode 100644 Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLibMem.c create mode 100644 Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/AArch64/Helper.S -- 2.7.4 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#62792): https://edk2.groups.io/g/devel/message/62792 Mute This Topic: https://groups.io/mt/75658676/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-