Hi,
I send v5 of PciEmulation, which base on NonDiscoverablePciDeviceDxe driver: [PATCH v3 0/5] MdeModulePkg: add support for non-discoverable devices
This version addresses all comments from previous one, details can be found in the changelog.
Code is also available in the github: https://github.com/MarvellEmbeddedProcessors/edk2-open-platform/commits/opp-...
Tested on XHCI and SDHCI. New board should be available for us on Monday.
I'm looking forward to your review.
Best regards, Marcin
Changelog v4 -> v5 * Fix gMarvellTokenSpaceGuid.PcdPciEXhci * Add comments in the driver and remove outdated one * Add DEV_ENABLED macro * Replace PCI_E with PCIE prefix * Add 'm' prefix to A70x0PlatDescTemplate * Improve printing on errors
v3 -> v4 * Remove Pcd string parsing * Add HW description structure * Rewrite driver * Adjust documentation
v2 -> v3
* Use static globals for PCD-related variables * Check with 'if' in runtime if they are correct * Return error on each kind of failure * Don't use arrays of DmaTypes/DevTypes for registering NonDiscoverableDevices * Remove redundant protocols, includes, libraries * Add reviewed-by in patches 2-6
v1 -> v2
* Move to NonDiscoverablePciDeviceDxe
Jan Dąbroś (3): Platforms/Marvell: Enable PciEmulation driver for Armada70x0 platform Platforms/Marvell: Enable USB stack for Armada70x0 platform Platforms/Marvell: Enable SATA stack for Armada70x0 platform
Marcin Wojtas (3): Platforms/Marvell: Add PciEmulation driver Platforms/Marvell: Enable two xHCI ports for Armada70x0 board Platforms/Marvell: Enable SATA port for Armada70x0 board
.../Marvell/PortingGuide/PciEmulation.txt | 31 +++ Platforms/Marvell/Armada/Armada.dsc.inc | 19 ++ Platforms/Marvell/Armada/Armada70x0.dsc | 7 + Platforms/Marvell/Armada/Armada70x0.fdf | 18 ++ Platforms/Marvell/Marvell.dec | 5 + Platforms/Marvell/PciEmulation/PciEmulation.c | 230 +++++++++++++++++++++ Platforms/Marvell/PciEmulation/PciEmulation.inf | 61 ++++++ 7 files changed, 371 insertions(+) create mode 100644 Documentation/Marvell/PortingGuide/PciEmulation.txt create mode 100644 Platforms/Marvell/PciEmulation/PciEmulation.c create mode 100644 Platforms/Marvell/PciEmulation/PciEmulation.inf