it's modified from hi3798cv200 driver, but quite a lot of code gets rewritten because of the hardware differences. Actually cv200 DWMMC core is called HIMCIV200 while mv200 DWMMC core is called HIMCIV300 in downstream. Signed-off-by: Yang Xiwen <forbidden405@xxxxxxxxxxx> --- Changes in v7: - driver: simplify tuning logic (Ulf Hansson) - bindings: fix patch order (Ulf Hansson) - Link to v6: https://lore.kernel.org/r/20240221-b4-mmc-hi3798mv200-v6-0-bc41bf6a9769@xxxxxxxxxxx Changes in v6: - apply the comments to the first patch, add their trailers - Link to v5: https://lore.kernel.org/r/20240220-b4-mmc-hi3798mv200-v5-0-f506c55f8e43@xxxxxxxxxxx Changes in v5: - pick the dependant patch: https://lore.kernel.org/all/20240215-mmc_phase-v1-1-f27644ee13e4@xxxxxxxxxxx/ to fix the bot build error. - edit the semantic meaning of hisilicon,sap-dll-reg property (Rob Herring) The suggestion is from the CRG driver side: https://lore.kernel.org/all/20240218205741.GA1561527-robh@xxxxxxxxxx/ - Link to v4: https://lore.kernel.org/r/20240217-b4-mmc-hi3798mv200-v4-0-0fdd9bd48532@xxxxxxxxxxx Changes in v4: - rename dw_mmc-hi3798 back to hi3798cv200 - Suggested by Krzysztof Kozlowski. - add r-bs to patch 1 and 2 - Reviewed by Krzysztof Kozlowski. - Link to v3: https://lore.kernel.org/r/20240217-b4-mmc-hi3798mv200-v3-0-f15464176947@xxxxxxxxxxx Changes in v3: - dw_mmc-hi3798: fix bot error (Rob Herring) - Link to v2: https://lore.kernel.org/r/20240216-b4-mmc-hi3798mv200-v2-0-010d63e6a1d5@xxxxxxxxxxx Changes in v2: - dw_mmc-hi3798mv200: use dev_err_probe() helper - Suggested by Krzysztof Kozlowski. - dw_mmc-hi3798mv200: add missing err=0; - dw_mmc-hi3798c(m)v200: remove unused MODULE_ALIAS() - Suggested by Krzysztof Kozlowski. - binding: rename the binding, a lot of tweaks suggested by Krzysztof Kozlowski. - Link to v1: https://lore.kernel.org/r/20240216-b4-mmc-hi3798mv200-v1-0-7d46db845ae6@xxxxxxxxxxx --- Yang Xiwen (5): mmc: host: mmc_of_parse_clk_phase(): Pass struct device * instead of mmc_host * mmc: dw_mmc-hi3798cv200: remove MODULE_ALIAS() dt-bindings: mmc: dw-mshc-hi3798cv200: convert to YAML dt-bindings: mmc: hisilicon,hi3798cv200-dw-mshc: add Hi3798MV200 binding mmc: dw_mmc: add support for hi3798mv200 .../bindings/mmc/hi3798cv200-dw-mshc.txt | 40 ---- .../mmc/hisilicon,hi3798cv200-dw-mshc.yaml | 97 ++++++++ drivers/mmc/core/host.c | 4 +- drivers/mmc/host/Kconfig | 9 + drivers/mmc/host/Makefile | 1 + drivers/mmc/host/dw_mmc-hi3798cv200.c | 1 - drivers/mmc/host/dw_mmc-hi3798mv200.c | 251 +++++++++++++++++++++ drivers/mmc/host/sdhci-of-aspeed.c | 2 +- include/linux/mmc/host.h | 2 +- 9 files changed, 361 insertions(+), 46 deletions(-) --- base-commit: d206a76d7d2726f3b096037f2079ce0bd3ba329b change-id: 20240121-b4-mmc-hi3798mv200-a5730edf122c Best regards, -- Yang Xiwen <forbidden405@xxxxxxxxxxx>