Hi, The sixth version of the patchset applies minor correction in the last patch and also simplifies the BoardDesc library callbacks. There is no unnecessary allocation now.
Patches are available in the github: https://github.com/MarvellEmbeddedProcessors/edk2-open-platform/commits/xenon-upstream-r20181119 Generic driver patches with fixes and extended SdMmcOverride protocol: https://github.com/MarvellEmbeddedProcessors/edk2-open-platform/commits/sdmmc-override-upstream-r20181109 I'm looking forward to the comments and remarks. Best regards, Marcin Changelog: v5->v6: * 3,4,5 - pass the pointer to the static table directly instead of the copy allocation * 6/8 - remove freeing SdMmc board description structure in NonDiscoverableDevicesDxe, as from now on the static table will be used * 8/8 - change SdMmcOverride protocol comment to '#PRODUCES' - s/Controler/Controller/ - remove freeing board description structure v4->v5: * 1,2,6/8 - add Ard's RB * 2,3,4,5 - change parameters to OUT - assign count only after allocation is successful * 7/8 & 8/8 - split driver rework patches into two steps v3->v4: * 1/7: - add Ard's RB * 2/7: - use local enum definition for SlotType in order not to include MdeModulePkg private header * 7/7: - rework capability handling, without using the structure defined in the MdeModulePkg header v2->v3 * 1/7: - rename NotifyPhase parameter to PhaseData * 7/7: - rename NotifyPhase parameter to PhaseData - update UHS_MODE_SEL only for HS200/HS400 in XenonSdMmcHcUhsSignaling - use local macros for standard SDHC registers in order not to include private MdeModulePkg header v1 -> v2 * 1/7 and 7/7 - adjust to modified SdMmcOverride NotifyPhase and Capability routines Marcin Wojtas (2): Silicon/SynQuacer/PlatformDxe: adjust to updated SdMmcOverride Marvell/Drivers: XenonDxe: Remove SdMmcPciHcDxe files Tomasz Michalec (6): Marvell/Library: ArmadaBoardDescLib: Extend SDMMC information SolidRun/Armada80x0McBin: Introduce board description library Marvell/Armada70x0Db: Introduce board description library Marvell/Armada80x0Db: Introduce board description library Marvell/Drivers: MvBoardDesc: Extend information for SdMmc Marvell/Drivers: XenonDxe: Switch to use generic SdMmcPciHcDxe Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc | 3 +- Platform/Marvell/Armada70x0Db/Armada70x0Db.dsc | 3 + Platform/Marvell/Armada80x0Db/Armada80x0Db.dsc | 3 + Platform/SolidRun/Armada80x0McBin/Armada80x0McBin.dsc | 3 + Silicon/Marvell/Armada7k8k/Armada7k8k.fdf | 3 +- Platform/Marvell/Armada70x0Db/Armada70x0DbBoardDescLib/Armada70x0DbBoardDescLib.inf | 34 + Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoardDescLib.inf | 34 + Platform/SolidRun/Armada80x0McBin/Armada80x0McBinBoardDescLib/Armada80x0McBinBoardDescLib.inf | 34 + Silicon/Marvell/Drivers/BoardDesc/MvBoardDescDxe.inf | 1 + Silicon/Marvell/Drivers/SdMmc/XenonDxe/{SdMmcPciHcDxe.inf => XenonDxe.inf} | 33 +- Silicon/Marvell/Drivers/SdMmc/XenonDxe/SdMmcPciHcDxe.h | 791 -------- Silicon/Marvell/Drivers/SdMmc/XenonDxe/SdMmcPciHci.h | 550 ------ Silicon/Marvell/Drivers/SdMmc/XenonDxe/XenonPciHci.h | 151 ++ Silicon/Marvell/Drivers/SdMmc/XenonDxe/XenonSdMmcOverride.h | 53 + Silicon/Marvell/Drivers/SdMmc/XenonDxe/XenonSdhci.h | 131 +- Silicon/Marvell/Include/Library/ArmadaBoardDescLib.h | 21 +- Platform/Marvell/Armada70x0Db/Armada70x0DbBoardDescLib/Armada70x0DbBoardDescLib.c | 60 + Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoardDescLib.c | 60 + Platform/SolidRun/Armada80x0McBin/Armada80x0McBinBoardDescLib/Armada80x0McBinBoardDescLib.c | 60 + Silicon/Marvell/Drivers/BoardDesc/MvBoardDescDxe.c | 24 +- Silicon/Marvell/Drivers/NonDiscoverableDxe/NonDiscoverableDxe.c | 1 - Silicon/Marvell/Drivers/SdMmc/XenonDxe/ComponentName.c | 211 --- Silicon/Marvell/Drivers/SdMmc/XenonDxe/EmmcDevice.c | 1164 ------------ Silicon/Marvell/Drivers/SdMmc/XenonDxe/SdDevice.c | 1190 ------------ Silicon/Marvell/Drivers/SdMmc/XenonDxe/SdMmcPciHcDxe.c | 1320 -------------- Silicon/Marvell/Drivers/SdMmc/XenonDxe/SdMmcPciHci.c | 1928 -------------------- Silicon/Marvell/Drivers/SdMmc/XenonDxe/XenonPciHci.c | 321 ++++ Silicon/Marvell/Drivers/SdMmc/XenonDxe/XenonSdMmcOverride.c | 429 +++++ Silicon/Marvell/Drivers/SdMmc/XenonDxe/XenonSdhci.c | 408 +++-- Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/Emmc.c | 9 +- Silicon/Marvell/Drivers/SdMmc/XenonDxe/SdMmcPciHcDxe.uni | 23 - Silicon/Marvell/Drivers/SdMmc/XenonDxe/SdMmcPciHcDxeExtra.uni | 19 - 32 files changed, 1691 insertions(+), 7384 deletions(-) create mode 100644 Platform/Marvell/Armada70x0Db/Armada70x0DbBoardDescLib/Armada70x0DbBoardDescLib.inf create mode 100644 Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoardDescLib.inf create mode 100644 Platform/SolidRun/Armada80x0McBin/Armada80x0McBinBoardDescLib/Armada80x0McBinBoardDescLib.inf rename Silicon/Marvell/Drivers/SdMmc/XenonDxe/{SdMmcPciHcDxe.inf => XenonDxe.inf} (65%) delete mode 100644 Silicon/Marvell/Drivers/SdMmc/XenonDxe/SdMmcPciHcDxe.h delete mode 100644 Silicon/Marvell/Drivers/SdMmc/XenonDxe/SdMmcPciHci.h create mode 100644 Silicon/Marvell/Drivers/SdMmc/XenonDxe/XenonPciHci.h create mode 100644 Silicon/Marvell/Drivers/SdMmc/XenonDxe/XenonSdMmcOverride.h create mode 100644 Platform/Marvell/Armada70x0Db/Armada70x0DbBoardDescLib/Armada70x0DbBoardDescLib.c create mode 100644 Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoardDescLib.c create mode 100644 Platform/SolidRun/Armada80x0McBin/Armada80x0McBinBoardDescLib/Armada80x0McBinBoardDescLib.c delete mode 100644 Silicon/Marvell/Drivers/SdMmc/XenonDxe/ComponentName.c delete mode 100755 Silicon/Marvell/Drivers/SdMmc/XenonDxe/EmmcDevice.c delete mode 100644 Silicon/Marvell/Drivers/SdMmc/XenonDxe/SdDevice.c delete mode 100644 Silicon/Marvell/Drivers/SdMmc/XenonDxe/SdMmcPciHcDxe.c delete mode 100644 Silicon/Marvell/Drivers/SdMmc/XenonDxe/SdMmcPciHci.c create mode 100644 Silicon/Marvell/Drivers/SdMmc/XenonDxe/XenonPciHci.c create mode 100644 Silicon/Marvell/Drivers/SdMmc/XenonDxe/XenonSdMmcOverride.c delete mode 100644 Silicon/Marvell/Drivers/SdMmc/XenonDxe/SdMmcPciHcDxe.uni delete mode 100644 Silicon/Marvell/Drivers/SdMmc/XenonDxe/SdMmcPciHcDxeExtra.uni -- 2.7.4 _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

