Hi, This patchset adds one improvement for the Synquacer controller, so that it can handle any SdMmcOverride protocol extending in future. Other than that a huge rework of the Xenon SdMmc controller is done - main changes: - Describe per-board configration using MvBoardDescLib infrastructure - Use this description in the Xenon driver and update its PHY configuration - Switch to generic EDK2 SdMmc driver and use extended SdMmcOverride protocol
Patches are available in the github: https://github.com/MarvellEmbeddedProcessors/edk2-open-platform/commits/xenon-upstream-r20180902 Generic driver patches with fixes and extended SdMmcOverride protocol: https://github.com/MarvellEmbeddedProcessors/edk2-open-platform/commits/sdmmc-override-upstream-r20180902 I'm looking forward to the comments and remarks. Best regards, Marcin Tomasz Michalec (7): Silicon/SynQuacer/PlatformDxe: Modify initialization of SdMmcOverride 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 | 84 +- Silicon/Marvell/Include/Library/ArmadaBoardDescLib.h | 17 +- Platform/Marvell/Armada70x0Db/Armada70x0DbBoardDescLib/Armada70x0DbBoardDescLib.c | 66 + Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoardDescLib.c | 66 + Platform/SolidRun/Armada80x0McBin/Armada80x0McBinBoardDescLib/Armada80x0McBinBoardDescLib.c | 66 + Silicon/Marvell/Drivers/BoardDesc/MvBoardDescDxe.c | 24 +- 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 | 455 +++++ Silicon/Marvell/Drivers/SdMmc/XenonDxe/XenonSdhci.c | 397 ++-- Silicon/Socionext/SynQuacer/Drivers/PlatformDxe/Emmc.c | 20 +- Silicon/Marvell/Drivers/SdMmc/XenonDxe/SdMmcPciHcDxe.uni | 23 - Silicon/Marvell/Drivers/SdMmc/XenonDxe/SdMmcPciHcDxeExtra.uni | 19 - 31 files changed, 1686 insertions(+), 7381 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 edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel