* [PATCH 1/6] mmc: Set PROBE_PREFER_ASYNCHRONOUS for drivers that existed in v4.4
2020-09-03 23:24 [PATCH 0/6] mmc: Set PROBE_PREFER_ASYNCHRONOUS for all host drivers Douglas Anderson
@ 2020-09-03 23:24 ` Douglas Anderson
2020-09-04 6:36 ` Wolfram Sang
2020-09-04 13:28 ` Thierry Reding
2020-09-04 21:53 ` [PATCH 0/6] mmc: Set PROBE_PREFER_ASYNCHRONOUS for all host drivers Martin Blumenstingl
2020-09-07 12:28 ` Ulf Hansson
2 siblings, 2 replies; 10+ messages in thread
From: Douglas Anderson @ 2020-09-03 23:24 UTC (permalink / raw)
To: Ulf Hansson
Cc: Alexandre Belloni, Heiko Stuebner, Geert Uytterhoeven, Yangtao Li,
H. Nikolaus Schaller, Linus Walleij, Douglas Anderson,
Paul Cercueil, Wolfram Sang, Thierry Reding, linux-arm-kernel,
Shawn Guo, Fabio Estevam, Michal Simek, Marek Vasut,
Jesper Nilsson, Florian Fainelli, Anson Huang, Aaro Koskinen,
Lee Jones, Ludovic Desroches, Krzysztof Kozlowski,
Jonathan Hunter, Jaehoon Chung, linux-rockchip, Chen-Yu Tsai,
Kukjin Kim, bcm-kernel-feedback-list, NXP Linux Team,
Pierre Ossman, linux-tegra, linux-omap, Ray Jui, Sascha Hauer,
Nicolas Ferre, Maxime Ripard, swboyd, Rui Miguel Silva,
linux-samsung-soc, linux-mediatek, Lars Persson, Ben Dooks,
Manuel Lauss, Matthias Brugger, Michał Mirosław,
Chaotian Jing, linux-arm-kernel, Peter Ujfalusi, Barry Song,
Scott Branden, Nicolas Pitre, Greg Kroah-Hartman,
Yoshihiro Shimoda, linux-mmc, Adrian Hunter, linux-kernel,
Tony Prisk, Vinod Koul, Patrice Chotard, Pengutronix Kernel Team,
Viresh Kumar, Eugen Hristev, Ricky Wu
This is like commit 3d3451124f3d ("mmc: sdhci-msm: Prefer asynchronous
probe") but applied to a whole pile of drivers. This batch converts
the drivers that appeared to be around in the v4.4 timeframe.
Signed-off-by: Douglas Anderson <dianders@chromium.org>
---
drivers/mmc/host/android-goldfish.c | 1 +
drivers/mmc/host/atmel-mci.c | 1 +
drivers/mmc/host/au1xmmc.c | 1 +
drivers/mmc/host/davinci_mmc.c | 1 +
drivers/mmc/host/dw_mmc-exynos.c | 1 +
drivers/mmc/host/dw_mmc-k3.c | 1 +
drivers/mmc/host/dw_mmc-pltfm.c | 1 +
drivers/mmc/host/dw_mmc-rockchip.c | 1 +
drivers/mmc/host/jz4740_mmc.c | 1 +
drivers/mmc/host/moxart-mmc.c | 1 +
drivers/mmc/host/mtk-sd.c | 1 +
drivers/mmc/host/mvsdio.c | 1 +
drivers/mmc/host/mxcmmc.c | 1 +
drivers/mmc/host/mxs-mmc.c | 1 +
drivers/mmc/host/omap.c | 1 +
drivers/mmc/host/omap_hsmmc.c | 1 +
drivers/mmc/host/pxamci.c | 1 +
drivers/mmc/host/rtsx_pci_sdmmc.c | 1 +
drivers/mmc/host/rtsx_usb_sdmmc.c | 1 +
drivers/mmc/host/s3cmci.c | 1 +
drivers/mmc/host/sdhci-acpi.c | 1 +
drivers/mmc/host/sdhci-bcm-kona.c | 1 +
drivers/mmc/host/sdhci-cns3xxx.c | 1 +
drivers/mmc/host/sdhci-dove.c | 1 +
drivers/mmc/host/sdhci-esdhc-imx.c | 1 +
drivers/mmc/host/sdhci-iproc.c | 1 +
drivers/mmc/host/sdhci-of-arasan.c | 1 +
drivers/mmc/host/sdhci-of-at91.c | 1 +
drivers/mmc/host/sdhci-of-esdhc.c | 1 +
drivers/mmc/host/sdhci-of-hlwd.c | 1 +
drivers/mmc/host/sdhci-pxav2.c | 1 +
drivers/mmc/host/sdhci-pxav3.c | 1 +
drivers/mmc/host/sdhci-s3c.c | 1 +
drivers/mmc/host/sdhci-sirf.c | 1 +
drivers/mmc/host/sdhci-spear.c | 1 +
drivers/mmc/host/sdhci-st.c | 1 +
drivers/mmc/host/sdhci-tegra.c | 1 +
drivers/mmc/host/sdhci_f_sdh30.c | 1 +
drivers/mmc/host/sh_mmcif.c | 1 +
drivers/mmc/host/sunxi-mmc.c | 1 +
drivers/mmc/host/tmio_mmc.c | 1 +
drivers/mmc/host/usdhi6rol0.c | 1 +
drivers/mmc/host/wbsd.c | 1 +
drivers/mmc/host/wmt-sdmmc.c | 1 +
44 files changed, 44 insertions(+)
diff --git a/drivers/mmc/host/android-goldfish.c b/drivers/mmc/host/android-goldfish.c
index ceb4924e02d0..e878fdf8f20a 100644
--- a/drivers/mmc/host/android-goldfish.c
+++ b/drivers/mmc/host/android-goldfish.c
@@ -537,6 +537,7 @@ static struct platform_driver goldfish_mmc_driver = {
.remove = goldfish_mmc_remove,
.driver = {
.name = DRIVER_NAME,
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
},
};
diff --git a/drivers/mmc/host/atmel-mci.c b/drivers/mmc/host/atmel-mci.c
index 300901415aa2..19d72eb0ec5a 100644
--- a/drivers/mmc/host/atmel-mci.c
+++ b/drivers/mmc/host/atmel-mci.c
@@ -2668,6 +2668,7 @@ static struct platform_driver atmci_driver = {
.remove = atmci_remove,
.driver = {
.name = "atmel_mci",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = of_match_ptr(atmci_dt_ids),
.pm = &atmci_dev_pm_ops,
},
diff --git a/drivers/mmc/host/au1xmmc.c b/drivers/mmc/host/au1xmmc.c
index 9bb1910268ca..bd00515fbaba 100644
--- a/drivers/mmc/host/au1xmmc.c
+++ b/drivers/mmc/host/au1xmmc.c
@@ -1189,6 +1189,7 @@ static struct platform_driver au1xmmc_driver = {
.resume = au1xmmc_resume,
.driver = {
.name = DRIVER_NAME,
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
},
};
diff --git a/drivers/mmc/host/davinci_mmc.c b/drivers/mmc/host/davinci_mmc.c
index a138e1ea6805..384e989f493a 100644
--- a/drivers/mmc/host/davinci_mmc.c
+++ b/drivers/mmc/host/davinci_mmc.c
@@ -1395,6 +1395,7 @@ static const struct dev_pm_ops davinci_mmcsd_pm = {
static struct platform_driver davinci_mmcsd_driver = {
.driver = {
.name = "davinci_mmc",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.pm = davinci_mmcsd_pm_ops,
.of_match_table = davinci_mmc_dt_ids,
},
diff --git a/drivers/mmc/host/dw_mmc-exynos.c b/drivers/mmc/host/dw_mmc-exynos.c
index 95adeee07217..0c75810812a0 100644
--- a/drivers/mmc/host/dw_mmc-exynos.c
+++ b/drivers/mmc/host/dw_mmc-exynos.c
@@ -592,6 +592,7 @@ static struct platform_driver dw_mci_exynos_pltfm_driver = {
.remove = dw_mci_exynos_remove,
.driver = {
.name = "dwmmc_exynos",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = dw_mci_exynos_match,
.pm = &dw_mci_exynos_pmops,
},
diff --git a/drivers/mmc/host/dw_mmc-k3.c b/drivers/mmc/host/dw_mmc-k3.c
index 50977ff18074..ea7e6c734394 100644
--- a/drivers/mmc/host/dw_mmc-k3.c
+++ b/drivers/mmc/host/dw_mmc-k3.c
@@ -473,6 +473,7 @@ static struct platform_driver dw_mci_k3_pltfm_driver = {
.remove = dw_mci_pltfm_remove,
.driver = {
.name = "dwmmc_k3",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = dw_mci_k3_match,
.pm = &dw_mci_k3_dev_pm_ops,
},
diff --git a/drivers/mmc/host/dw_mmc-pltfm.c b/drivers/mmc/host/dw_mmc-pltfm.c
index 7de37f524a96..73731cd3ba23 100644
--- a/drivers/mmc/host/dw_mmc-pltfm.c
+++ b/drivers/mmc/host/dw_mmc-pltfm.c
@@ -98,6 +98,7 @@ static struct platform_driver dw_mci_pltfm_driver = {
.remove = dw_mci_pltfm_remove,
.driver = {
.name = "dw_mmc",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = dw_mci_pltfm_match,
.pm = &dw_mci_pltfm_pmops,
},
diff --git a/drivers/mmc/host/dw_mmc-rockchip.c b/drivers/mmc/host/dw_mmc-rockchip.c
index d4d02134848c..753502ce3c85 100644
--- a/drivers/mmc/host/dw_mmc-rockchip.c
+++ b/drivers/mmc/host/dw_mmc-rockchip.c
@@ -383,6 +383,7 @@ static struct platform_driver dw_mci_rockchip_pltfm_driver = {
.remove = dw_mci_rockchip_remove,
.driver = {
.name = "dwmmc_rockchip",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = dw_mci_rockchip_match,
.pm = &dw_mci_rockchip_dev_pm_ops,
},
diff --git a/drivers/mmc/host/jz4740_mmc.c b/drivers/mmc/host/jz4740_mmc.c
index 21fd0939bb7b..e2a111e54097 100644
--- a/drivers/mmc/host/jz4740_mmc.c
+++ b/drivers/mmc/host/jz4740_mmc.c
@@ -1125,6 +1125,7 @@ static struct platform_driver jz4740_mmc_driver = {
.remove = jz4740_mmc_remove,
.driver = {
.name = "jz4740-mmc",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = of_match_ptr(jz4740_mmc_of_match),
.pm = pm_ptr(&jz4740_mmc_pm_ops),
},
diff --git a/drivers/mmc/host/moxart-mmc.c b/drivers/mmc/host/moxart-mmc.c
index fc6b9cf27d0b..2bfb376fddc4 100644
--- a/drivers/mmc/host/moxart-mmc.c
+++ b/drivers/mmc/host/moxart-mmc.c
@@ -717,6 +717,7 @@ static struct platform_driver moxart_mmc_driver = {
.remove = moxart_remove,
.driver = {
.name = "mmc-moxart",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = moxart_mmc_match,
},
};
diff --git a/drivers/mmc/host/mtk-sd.c b/drivers/mmc/host/mtk-sd.c
index ed2b24691b4f..691c928edab7 100644
--- a/drivers/mmc/host/mtk-sd.c
+++ b/drivers/mmc/host/mtk-sd.c
@@ -2689,6 +2689,7 @@ static struct platform_driver mt_msdc_driver = {
.remove = msdc_drv_remove,
.driver = {
.name = "mtk-msdc",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = msdc_of_ids,
.pm = &msdc_dev_pm_ops,
},
diff --git a/drivers/mmc/host/mvsdio.c b/drivers/mmc/host/mvsdio.c
index cc0752a9df6d..629efbe639c4 100644
--- a/drivers/mmc/host/mvsdio.c
+++ b/drivers/mmc/host/mvsdio.c
@@ -824,6 +824,7 @@ static struct platform_driver mvsd_driver = {
.remove = mvsd_remove,
.driver = {
.name = DRIVER_NAME,
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = mvsdio_dt_ids,
},
};
diff --git a/drivers/mmc/host/mxcmmc.c b/drivers/mmc/host/mxcmmc.c
index b3d654c688e5..12ee07285980 100644
--- a/drivers/mmc/host/mxcmmc.c
+++ b/drivers/mmc/host/mxcmmc.c
@@ -1244,6 +1244,7 @@ static struct platform_driver mxcmci_driver = {
.id_table = mxcmci_devtype,
.driver = {
.name = DRIVER_NAME,
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.pm = &mxcmci_pm_ops,
.of_match_table = mxcmci_of_match,
}
diff --git a/drivers/mmc/host/mxs-mmc.c b/drivers/mmc/host/mxs-mmc.c
index b1820def36c0..75007f61df97 100644
--- a/drivers/mmc/host/mxs-mmc.c
+++ b/drivers/mmc/host/mxs-mmc.c
@@ -726,6 +726,7 @@ static struct platform_driver mxs_mmc_driver = {
.id_table = mxs_ssp_ids,
.driver = {
.name = DRIVER_NAME,
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.pm = &mxs_mmc_pm_ops,
.of_match_table = mxs_mmc_dt_ids,
},
diff --git a/drivers/mmc/host/omap.c b/drivers/mmc/host/omap.c
index 33d7af7c7762..6aa0537f1f84 100644
--- a/drivers/mmc/host/omap.c
+++ b/drivers/mmc/host/omap.c
@@ -1504,6 +1504,7 @@ static struct platform_driver mmc_omap_driver = {
.remove = mmc_omap_remove,
.driver = {
.name = DRIVER_NAME,
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = of_match_ptr(mmc_omap_match),
},
};
diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
index 37b8740513f5..036264443646 100644
--- a/drivers/mmc/host/omap_hsmmc.c
+++ b/drivers/mmc/host/omap_hsmmc.c
@@ -2171,6 +2171,7 @@ static struct platform_driver omap_hsmmc_driver = {
.remove = omap_hsmmc_remove,
.driver = {
.name = DRIVER_NAME,
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.pm = &omap_hsmmc_dev_pm_ops,
.of_match_table = of_match_ptr(omap_mmc_of_match),
},
diff --git a/drivers/mmc/host/pxamci.c b/drivers/mmc/host/pxamci.c
index 3a9333475a2b..29f6180a0036 100644
--- a/drivers/mmc/host/pxamci.c
+++ b/drivers/mmc/host/pxamci.c
@@ -811,6 +811,7 @@ static struct platform_driver pxamci_driver = {
.remove = pxamci_remove,
.driver = {
.name = DRIVER_NAME,
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = of_match_ptr(pxa_mmc_dt_ids),
},
};
diff --git a/drivers/mmc/host/rtsx_pci_sdmmc.c b/drivers/mmc/host/rtsx_pci_sdmmc.c
index 2763a376b054..eb395e144207 100644
--- a/drivers/mmc/host/rtsx_pci_sdmmc.c
+++ b/drivers/mmc/host/rtsx_pci_sdmmc.c
@@ -1471,6 +1471,7 @@ static struct platform_driver rtsx_pci_sdmmc_driver = {
.id_table = rtsx_pci_sdmmc_ids,
.driver = {
.name = DRV_NAME_RTSX_PCI_SDMMC,
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
},
};
module_platform_driver(rtsx_pci_sdmmc_driver);
diff --git a/drivers/mmc/host/rtsx_usb_sdmmc.c b/drivers/mmc/host/rtsx_usb_sdmmc.c
index 7225d9312af8..598f49573f5d 100644
--- a/drivers/mmc/host/rtsx_usb_sdmmc.c
+++ b/drivers/mmc/host/rtsx_usb_sdmmc.c
@@ -1458,6 +1458,7 @@ static struct platform_driver rtsx_usb_sdmmc_driver = {
.id_table = rtsx_usb_sdmmc_ids,
.driver = {
.name = "rtsx_usb_sdmmc",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.pm = &rtsx_usb_sdmmc_dev_pm_ops,
},
};
diff --git a/drivers/mmc/host/s3cmci.c b/drivers/mmc/host/s3cmci.c
index a725fb1abce7..e3698aba8dd3 100644
--- a/drivers/mmc/host/s3cmci.c
+++ b/drivers/mmc/host/s3cmci.c
@@ -1804,6 +1804,7 @@ MODULE_DEVICE_TABLE(platform, s3cmci_driver_ids);
static struct platform_driver s3cmci_driver = {
.driver = {
.name = "s3c-sdi",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = s3cmci_dt_match,
},
.id_table = s3cmci_driver_ids,
diff --git a/drivers/mmc/host/sdhci-acpi.c b/drivers/mmc/host/sdhci-acpi.c
index 284cba11e279..fc41d0451f20 100644
--- a/drivers/mmc/host/sdhci-acpi.c
+++ b/drivers/mmc/host/sdhci-acpi.c
@@ -1027,6 +1027,7 @@ static const struct dev_pm_ops sdhci_acpi_pm_ops = {
static struct platform_driver sdhci_acpi_driver = {
.driver = {
.name = "sdhci-acpi",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.acpi_match_table = sdhci_acpi_ids,
.pm = &sdhci_acpi_pm_ops,
},
diff --git a/drivers/mmc/host/sdhci-bcm-kona.c b/drivers/mmc/host/sdhci-bcm-kona.c
index a6c2bd202b45..4d4aac85cc7a 100644
--- a/drivers/mmc/host/sdhci-bcm-kona.c
+++ b/drivers/mmc/host/sdhci-bcm-kona.c
@@ -324,6 +324,7 @@ static int sdhci_bcm_kona_probe(struct platform_device *pdev)
static struct platform_driver sdhci_bcm_kona_driver = {
.driver = {
.name = "sdhci-kona",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.pm = &sdhci_pltfm_pmops,
.of_match_table = sdhci_bcm_kona_of_match,
},
diff --git a/drivers/mmc/host/sdhci-cns3xxx.c b/drivers/mmc/host/sdhci-cns3xxx.c
index 811eab1b8964..2a29c7a4f308 100644
--- a/drivers/mmc/host/sdhci-cns3xxx.c
+++ b/drivers/mmc/host/sdhci-cns3xxx.c
@@ -98,6 +98,7 @@ static int sdhci_cns3xxx_probe(struct platform_device *pdev)
static struct platform_driver sdhci_cns3xxx_driver = {
.driver = {
.name = "sdhci-cns3xxx",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.pm = &sdhci_pltfm_pmops,
},
.probe = sdhci_cns3xxx_probe,
diff --git a/drivers/mmc/host/sdhci-dove.c b/drivers/mmc/host/sdhci-dove.c
index fe9da3122fe9..5e5bf82e5976 100644
--- a/drivers/mmc/host/sdhci-dove.c
+++ b/drivers/mmc/host/sdhci-dove.c
@@ -105,6 +105,7 @@ MODULE_DEVICE_TABLE(of, sdhci_dove_of_match_table);
static struct platform_driver sdhci_dove_driver = {
.driver = {
.name = "sdhci-dove",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.pm = &sdhci_pltfm_pmops,
.of_match_table = sdhci_dove_of_match_table,
},
diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c
index 325e241b5f99..6a859616dcc7 100644
--- a/drivers/mmc/host/sdhci-esdhc-imx.c
+++ b/drivers/mmc/host/sdhci-esdhc-imx.c
@@ -1925,6 +1925,7 @@ static const struct dev_pm_ops sdhci_esdhc_pmops = {
static struct platform_driver sdhci_esdhc_imx_driver = {
.driver = {
.name = "sdhci-esdhc-imx",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = imx_esdhc_dt_ids,
.pm = &sdhci_esdhc_pmops,
},
diff --git a/drivers/mmc/host/sdhci-iproc.c b/drivers/mmc/host/sdhci-iproc.c
index b540aa6faacb..c9434b461aab 100644
--- a/drivers/mmc/host/sdhci-iproc.c
+++ b/drivers/mmc/host/sdhci-iproc.c
@@ -369,6 +369,7 @@ static int sdhci_iproc_probe(struct platform_device *pdev)
static struct platform_driver sdhci_iproc_driver = {
.driver = {
.name = "sdhci-iproc",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = sdhci_iproc_of_match,
.acpi_match_table = ACPI_PTR(sdhci_iproc_acpi_ids),
.pm = &sdhci_pltfm_pmops,
diff --git a/drivers/mmc/host/sdhci-of-arasan.c b/drivers/mmc/host/sdhci-of-arasan.c
index 3aea46db2ea7..829ccef87426 100644
--- a/drivers/mmc/host/sdhci-of-arasan.c
+++ b/drivers/mmc/host/sdhci-of-arasan.c
@@ -1693,6 +1693,7 @@ static int sdhci_arasan_remove(struct platform_device *pdev)
static struct platform_driver sdhci_arasan_driver = {
.driver = {
.name = "sdhci-arasan",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = sdhci_arasan_of_match,
.pm = &sdhci_arasan_dev_pm_ops,
},
diff --git a/drivers/mmc/host/sdhci-of-at91.c b/drivers/mmc/host/sdhci-of-at91.c
index 1ece2c50042c..5564d7b23e7c 100644
--- a/drivers/mmc/host/sdhci-of-at91.c
+++ b/drivers/mmc/host/sdhci-of-at91.c
@@ -465,6 +465,7 @@ static int sdhci_at91_remove(struct platform_device *pdev)
static struct platform_driver sdhci_at91_driver = {
.driver = {
.name = "sdhci-at91",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = sdhci_at91_dt_match,
.pm = &sdhci_at91_dev_pm_ops,
},
diff --git a/drivers/mmc/host/sdhci-of-esdhc.c b/drivers/mmc/host/sdhci-of-esdhc.c
index 45881b309956..3a3340c9b8c9 100644
--- a/drivers/mmc/host/sdhci-of-esdhc.c
+++ b/drivers/mmc/host/sdhci-of-esdhc.c
@@ -1468,6 +1468,7 @@ static int sdhci_esdhc_probe(struct platform_device *pdev)
static struct platform_driver sdhci_esdhc_driver = {
.driver = {
.name = "sdhci-esdhc",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = sdhci_esdhc_of_match,
.pm = &esdhc_of_dev_pm_ops,
},
diff --git a/drivers/mmc/host/sdhci-of-hlwd.c b/drivers/mmc/host/sdhci-of-hlwd.c
index da844a39af6e..12675797b296 100644
--- a/drivers/mmc/host/sdhci-of-hlwd.c
+++ b/drivers/mmc/host/sdhci-of-hlwd.c
@@ -80,6 +80,7 @@ MODULE_DEVICE_TABLE(of, sdhci_hlwd_of_match);
static struct platform_driver sdhci_hlwd_driver = {
.driver = {
.name = "sdhci-hlwd",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = sdhci_hlwd_of_match,
.pm = &sdhci_pltfm_pmops,
},
diff --git a/drivers/mmc/host/sdhci-pxav2.c b/drivers/mmc/host/sdhci-pxav2.c
index 9282bc4b8c41..f18906b5575f 100644
--- a/drivers/mmc/host/sdhci-pxav2.c
+++ b/drivers/mmc/host/sdhci-pxav2.c
@@ -226,6 +226,7 @@ static int sdhci_pxav2_probe(struct platform_device *pdev)
static struct platform_driver sdhci_pxav2_driver = {
.driver = {
.name = "sdhci-pxav2",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = of_match_ptr(sdhci_pxav2_of_match),
.pm = &sdhci_pltfm_pmops,
},
diff --git a/drivers/mmc/host/sdhci-pxav3.c b/drivers/mmc/host/sdhci-pxav3.c
index e55037ceda73..a6d89a3f1946 100644
--- a/drivers/mmc/host/sdhci-pxav3.c
+++ b/drivers/mmc/host/sdhci-pxav3.c
@@ -567,6 +567,7 @@ static const struct dev_pm_ops sdhci_pxav3_pmops = {
static struct platform_driver sdhci_pxav3_driver = {
.driver = {
.name = "sdhci-pxav3",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = of_match_ptr(sdhci_pxav3_of_match),
.pm = &sdhci_pxav3_pmops,
},
diff --git a/drivers/mmc/host/sdhci-s3c.c b/drivers/mmc/host/sdhci-s3c.c
index 9194bb73e601..ae75bebbbfbf 100644
--- a/drivers/mmc/host/sdhci-s3c.c
+++ b/drivers/mmc/host/sdhci-s3c.c
@@ -784,6 +784,7 @@ static struct platform_driver sdhci_s3c_driver = {
.id_table = sdhci_s3c_driver_ids,
.driver = {
.name = "s3c-sdhci",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = of_match_ptr(sdhci_s3c_dt_match),
.pm = &sdhci_s3c_pmops,
},
diff --git a/drivers/mmc/host/sdhci-sirf.c b/drivers/mmc/host/sdhci-sirf.c
index f4b05dd6c20a..e9b347b3af7e 100644
--- a/drivers/mmc/host/sdhci-sirf.c
+++ b/drivers/mmc/host/sdhci-sirf.c
@@ -220,6 +220,7 @@ MODULE_DEVICE_TABLE(of, sdhci_sirf_of_match);
static struct platform_driver sdhci_sirf_driver = {
.driver = {
.name = "sdhci-sirf",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = sdhci_sirf_of_match,
.pm = &sdhci_pltfm_pmops,
},
diff --git a/drivers/mmc/host/sdhci-spear.c b/drivers/mmc/host/sdhci-spear.c
index b4b63089a4e2..d463e2fd5b1a 100644
--- a/drivers/mmc/host/sdhci-spear.c
+++ b/drivers/mmc/host/sdhci-spear.c
@@ -181,6 +181,7 @@ MODULE_DEVICE_TABLE(of, sdhci_spear_id_table);
static struct platform_driver sdhci_driver = {
.driver = {
.name = "sdhci",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.pm = &sdhci_pm_ops,
.of_match_table = of_match_ptr(sdhci_spear_id_table),
},
diff --git a/drivers/mmc/host/sdhci-st.c b/drivers/mmc/host/sdhci-st.c
index 1301cebfc3ea..4e9ff3e828ba 100644
--- a/drivers/mmc/host/sdhci-st.c
+++ b/drivers/mmc/host/sdhci-st.c
@@ -521,6 +521,7 @@ static struct platform_driver sdhci_st_driver = {
.remove = sdhci_st_remove,
.driver = {
.name = "sdhci-st",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.pm = &sdhci_st_pmops,
.of_match_table = of_match_ptr(st_sdhci_match),
},
diff --git a/drivers/mmc/host/sdhci-tegra.c b/drivers/mmc/host/sdhci-tegra.c
index 428cdc53c858..ed12aacb1c73 100644
--- a/drivers/mmc/host/sdhci-tegra.c
+++ b/drivers/mmc/host/sdhci-tegra.c
@@ -1782,6 +1782,7 @@ static SIMPLE_DEV_PM_OPS(sdhci_tegra_dev_pm_ops, sdhci_tegra_suspend,
static struct platform_driver sdhci_tegra_driver = {
.driver = {
.name = "sdhci-tegra",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = sdhci_tegra_dt_match,
.pm = &sdhci_tegra_dev_pm_ops,
},
diff --git a/drivers/mmc/host/sdhci_f_sdh30.c b/drivers/mmc/host/sdhci_f_sdh30.c
index 4625cc071b61..3f5977979cf2 100644
--- a/drivers/mmc/host/sdhci_f_sdh30.c
+++ b/drivers/mmc/host/sdhci_f_sdh30.c
@@ -219,6 +219,7 @@ MODULE_DEVICE_TABLE(acpi, f_sdh30_acpi_ids);
static struct platform_driver sdhci_f_sdh30_driver = {
.driver = {
.name = "f_sdh30",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = of_match_ptr(f_sdh30_dt_ids),
.acpi_match_table = ACPI_PTR(f_sdh30_acpi_ids),
.pm = &sdhci_pltfm_pmops,
diff --git a/drivers/mmc/host/sh_mmcif.c b/drivers/mmc/host/sh_mmcif.c
index 9f53634aa411..e5e457037235 100644
--- a/drivers/mmc/host/sh_mmcif.c
+++ b/drivers/mmc/host/sh_mmcif.c
@@ -1562,6 +1562,7 @@ static struct platform_driver sh_mmcif_driver = {
.remove = sh_mmcif_remove,
.driver = {
.name = DRIVER_NAME,
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.pm = &sh_mmcif_dev_pm_ops,
.of_match_table = sh_mmcif_of_match,
},
diff --git a/drivers/mmc/host/sunxi-mmc.c b/drivers/mmc/host/sunxi-mmc.c
index 5e95bbc51644..fc62773602ec 100644
--- a/drivers/mmc/host/sunxi-mmc.c
+++ b/drivers/mmc/host/sunxi-mmc.c
@@ -1514,6 +1514,7 @@ static const struct dev_pm_ops sunxi_mmc_pm_ops = {
static struct platform_driver sunxi_mmc_driver = {
.driver = {
.name = "sunxi-mmc",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = of_match_ptr(sunxi_mmc_of_match),
.pm = &sunxi_mmc_pm_ops,
},
diff --git a/drivers/mmc/host/tmio_mmc.c b/drivers/mmc/host/tmio_mmc.c
index 757c90160ae4..d2d3b8df1bbe 100644
--- a/drivers/mmc/host/tmio_mmc.c
+++ b/drivers/mmc/host/tmio_mmc.c
@@ -213,6 +213,7 @@ static const struct dev_pm_ops tmio_mmc_dev_pm_ops = {
static struct platform_driver tmio_mmc_driver = {
.driver = {
.name = "tmio-mmc",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.pm = &tmio_mmc_dev_pm_ops,
},
.probe = tmio_mmc_probe,
diff --git a/drivers/mmc/host/usdhi6rol0.c b/drivers/mmc/host/usdhi6rol0.c
index 369b8dee2e3d..f644f7035f16 100644
--- a/drivers/mmc/host/usdhi6rol0.c
+++ b/drivers/mmc/host/usdhi6rol0.c
@@ -1890,6 +1890,7 @@ static struct platform_driver usdhi6_driver = {
.remove = usdhi6_remove,
.driver = {
.name = "usdhi6rol0",
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.of_match_table = usdhi6_of_match,
},
};
diff --git a/drivers/mmc/host/wbsd.c b/drivers/mmc/host/wbsd.c
index 67f917d6ecd3..cd63ea865b77 100644
--- a/drivers/mmc/host/wbsd.c
+++ b/drivers/mmc/host/wbsd.c
@@ -1905,6 +1905,7 @@ static struct platform_driver wbsd_driver = {
.resume = wbsd_platform_resume,
.driver = {
.name = DRIVER_NAME,
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
},
};
diff --git a/drivers/mmc/host/wmt-sdmmc.c b/drivers/mmc/host/wmt-sdmmc.c
index 2c4ba1fa4bbf..cf10949fb0ac 100644
--- a/drivers/mmc/host/wmt-sdmmc.c
+++ b/drivers/mmc/host/wmt-sdmmc.c
@@ -990,6 +990,7 @@ static struct platform_driver wmt_mci_driver = {
.remove = wmt_mci_remove,
.driver = {
.name = DRIVER_NAME,
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
.pm = wmt_mci_pm_ops,
.of_match_table = wmt_mci_dt_ids,
},
--
2.28.0.526.ge36021eeef-goog
_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek
^ permalink raw reply related [flat|nested] 10+ messages in thread* Re: [PATCH 0/6] mmc: Set PROBE_PREFER_ASYNCHRONOUS for all host drivers
2020-09-03 23:24 [PATCH 0/6] mmc: Set PROBE_PREFER_ASYNCHRONOUS for all host drivers Douglas Anderson
2020-09-03 23:24 ` [PATCH 1/6] mmc: Set PROBE_PREFER_ASYNCHRONOUS for drivers that existed in v4.4 Douglas Anderson
@ 2020-09-04 21:53 ` Martin Blumenstingl
2020-09-07 3:57 ` Anand Moon
2020-09-07 12:28 ` Ulf Hansson
2 siblings, 1 reply; 10+ messages in thread
From: Martin Blumenstingl @ 2020-09-04 21:53 UTC (permalink / raw)
To: Douglas Anderson
Cc: Heiko Stuebner, Geert Uytterhoeven, Linus Walleij, Peter Ujfalusi,
Jerome Brunet, linux-samsung-soc, Aaro Koskinen, Kevin Hilman,
Michal Simek, Ludovic Desroches, NXP Linux Team, linux-tegra,
Sascha Hauer, swboyd, Lars Persson, linux-omap, Chaotian Jing,
Scott Branden, Andrew Jeffery, Greg Kroah-Hartman,
Yoshihiro Shimoda, linux-kernel, Pengutronix Kernel Team,
Eugen Hristev, Alexandre Belloni, linux-aspeed, Yangtao Li,
Hu Ziji, Thierry Reding, Manivannan Sadhasivam, Jesper Nilsson,
Chunyan Zhang, linux-arm-kernel, Jonathan Hunter, linux-rockchip,
Kukjin Kim, Pierre Ossman, Saiyam Doshi, Maxime Ripard,
linux-rpi-kernel, linux-amlogic, linux-arm-kernel, Barry Song,
Nicolas Pitre, Patrice Chotard, Microchip Linux Driver Support,
Stefan Wahren, Christophe JAILLET, Ricky Wu,
Nicolas Saenz Julienne, Ulf Hansson, Neil Armstrong, Al Cooper,
Wolfram Sang, Fabio Estevam, Florian Fainelli, Steen Hegelund,
Krzysztof Kozlowski, Kishon Vijay Abraham I, Chen-Yu Tsai,
bcm-kernel-feedback-list, Joel Stanley, Orson Zhai, Ray Jui,
Ben Dooks, Masahiro Yamada, linux-mmc, Baolin Wang, Shawn Guo,
Andreas Färber, H. Nikolaus Schaller, Adrian Hunter,
Paul Cercueil, Lee Jones, Marek Vasut, Anson Huang, Jaehoon Chung,
Rui Miguel Silva, linux-mediatek, Manuel Lauss, Matthias Brugger,
Michał Mirosław, Angelo Dureghello, Lars Povlsen,
Nicolas Ferre, Tony Prisk, Vinod Koul, Robert Richter,
Viresh Kumar, Jun Nie
Hi Douglas,
On Fri, Sep 4, 2020 at 1:25 AM Douglas Anderson <dianders@chromium.org> wrote:
>
> As per discussion [1], it seems like it should be quite safe to turn
> on PROBE_PREFER_ASYNCHRONOUS for all sd/mmc host controllers. Let's
> give it a shot. For some discussion about this flag, see the commit
> message for commit 3d3451124f3d ("mmc: sdhci-msm: Prefer asynchronous
> probe").
can this somehow change the order in which the MMC drivers end up loading?
on Amlogic SoCs we have up to three MMC controllers, some SoCs even
use two different MMC controller IPs (and therefore two different
drivers).
so far the MMC controller naming (/dev/mmcblk* etc.) was consistent -
can that change with this patch?
apologies if this has been discussed and answered anywhere
Best regards,
Martin
_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek
^ permalink raw reply [flat|nested] 10+ messages in thread* Re: [PATCH 0/6] mmc: Set PROBE_PREFER_ASYNCHRONOUS for all host drivers
2020-09-03 23:24 [PATCH 0/6] mmc: Set PROBE_PREFER_ASYNCHRONOUS for all host drivers Douglas Anderson
2020-09-03 23:24 ` [PATCH 1/6] mmc: Set PROBE_PREFER_ASYNCHRONOUS for drivers that existed in v4.4 Douglas Anderson
2020-09-04 21:53 ` [PATCH 0/6] mmc: Set PROBE_PREFER_ASYNCHRONOUS for all host drivers Martin Blumenstingl
@ 2020-09-07 12:28 ` Ulf Hansson
2 siblings, 0 replies; 10+ messages in thread
From: Ulf Hansson @ 2020-09-07 12:28 UTC (permalink / raw)
To: Douglas Anderson
Cc: Heiko Stuebner, Geert Uytterhoeven, Linus Walleij, Peter Ujfalusi,
Jerome Brunet, linux-samsung-soc, Aaro Koskinen, Kevin Hilman,
Michal Simek, Ludovic Desroches, NXP Linux Team, linux-tegra,
Sascha Hauer, Stephen Boyd, Lars Persson, linux-omap,
Chaotian Jing, Scott Branden, Andrew Jeffery, Greg Kroah-Hartman,
Yoshihiro Shimoda, Linux Kernel Mailing List,
Pengutronix Kernel Team, Eugen Hristev, Alexandre Belloni,
linux-aspeed, Yangtao Li, Hu Ziji, Thierry Reding,
Manivannan Sadhasivam, Jesper Nilsson, Chunyan Zhang,
linux-arm-kernel, Jonathan Hunter, open list:ARM/Rockchip SoC...,
Kukjin Kim, Pierre Ossman, Saiyam Doshi, Martin Blumenstingl,
Maxime Ripard, moderated list:BROADCOM BCM2835...,
open list:ARM/Amlogic Meson..., Linux ARM, Barry Song,
Nicolas Pitre, Patrice Chotard, Microchip Linux Driver Support,
Stefan Wahren, Christophe JAILLET, Ricky Wu,
Nicolas Saenz Julienne, Neil Armstrong, Al Cooper, Wolfram Sang,
Fabio Estevam, Florian Fainelli, Steen Hegelund,
Krzysztof Kozlowski, Kishon Vijay Abraham I, Chen-Yu Tsai,
BCM Kernel Feedback, Joel Stanley, Orson Zhai, Ray Jui, Ben Dooks,
Masahiro Yamada, linux-mmc@vger.kernel.org, Baolin Wang,
Shawn Guo, Andreas Färber, H. Nikolaus Schaller,
Adrian Hunter, Paul Cercueil, Lee Jones, Marek Vasut, Anson Huang,
Jaehoon Chung, Rui Miguel Silva,
moderated list:ARM/Mediatek SoC support, Manuel Lauss,
Matthias Brugger, Michał Mirosław, Angelo Dureghello,
Lars Povlsen, Nicolas Ferre, Tony Prisk, Vinod Koul,
Robert Richter, Viresh Kumar, Jun Nie
On Fri, 4 Sep 2020 at 01:25, Douglas Anderson <dianders@chromium.org> wrote:
>
> As per discussion [1], it seems like it should be quite safe to turn
> on PROBE_PREFER_ASYNCHRONOUS for all sd/mmc host controllers. Let's
> give it a shot. For some discussion about this flag, see the commit
> message for commit 3d3451124f3d ("mmc: sdhci-msm: Prefer asynchronous
> probe").
>
> I've broken this series into chunks based on LTS kernel releases to
> attempt to make it easier if someone wanted to cherry-pick it to an
> older kernel. While these cherry-picks won't be conflict free, there
> should only be trivial context conflicts and no problems with drivers
> that are totally missing. This is a bit of a compromise between a
> 1-big patch and a many-part patch series.
>
> I have only tested this on a rk3399-kevin (sdhci-of-arasan) and a
> rk3288-veyron (dw_mmc-rockchip) device and only lightly. If this
> patch causes anyone problems those drivers should be marked with
> PROBE_FORCE_SYNCHRONOUS, debugged, and then go back to prefer
> asynchronous. Any problems are likely just a hidden bug that has been
> exposed by this change.
>
> NOTE: in theory, it'd be nice if there was a KConfig option that we
> could flip that would turn on async probe everywhere (except for those
> that opt out by adding PROBE_FORCE_SYNCHRONOUS). My hope is that by
> adding this flag in more places it will become clear that this flag is
> working reliably and easier to move over when we're ready.
>
> While coccinelle is too difficult for my feeble brain, I managed to
> whip up a pretty terrible python script to help with this. For your
> edification:
>
> import os
> import sys
> import re
>
> for filename in os.listdir("."):
> found_plat = False
> found_driver = False
> output = []
> for line in open(filename, "r").readlines():
> output.append(line)
>
> if "struct platform_driver" in line:
> found_plat = True
> if found_plat and re.search(r"\t\.driver\s*=\s*{", line):
> found_driver = True
> found_plat = False
> mo = re.search(r"(\s*)\.name(\s*)=", line)
> if found_driver and mo:
> if mo.group(2) == " ":
> space = " "
> elif mo.group(2) == "\t":
> # Best we can do
> space = " "
> elif mo.group(2).startswith("\t"):
> # Guess that removing one tab is right
> space = mo.group(2)[1:]
> else:
> # Guess it's all spaces
> space = mo.group(2)[7:] + " "
>
> output.append("%s.probe_type%s= PROBE_PREFER_ASYNCHRONOUS,\n" % (mo.group(1), space))
> found_driver = False
>
> open(filename, "w").write("".join(output))
>
> [1] https://lore.kernel.org/r/CAPDyKFq31bucJhP9hp1HSqh-qM2uNGHgDoyQpmbJf00nEf_T4Q@mail.gmail.com/
>
>
> Douglas Anderson (6):
> mmc: Set PROBE_PREFER_ASYNCHRONOUS for drivers that existed in v4.4
> mmc: Set PROBE_PREFER_ASYNCHRONOUS for drivers that existed in v4.9
> mmc: Set PROBE_PREFER_ASYNCHRONOUS for drivers that existed in v4.14
> mmc: Set PROBE_PREFER_ASYNCHRONOUS for drivers that existed in v4.19
> mmc: Set PROBE_PREFER_ASYNCHRONOUS for drivers that existed in v5.4
> mmc: Set PROBE_PREFER_ASYNCHRONOUS for drivers that are newer than 5.4
>
> drivers/mmc/host/alcor.c | 1 +
> drivers/mmc/host/android-goldfish.c | 1 +
> drivers/mmc/host/atmel-mci.c | 1 +
> drivers/mmc/host/au1xmmc.c | 1 +
> drivers/mmc/host/bcm2835.c | 1 +
> drivers/mmc/host/cavium-octeon.c | 1 +
> drivers/mmc/host/davinci_mmc.c | 1 +
> drivers/mmc/host/dw_mmc-bluefield.c | 1 +
> drivers/mmc/host/dw_mmc-exynos.c | 1 +
> drivers/mmc/host/dw_mmc-hi3798cv200.c | 1 +
> drivers/mmc/host/dw_mmc-k3.c | 1 +
> drivers/mmc/host/dw_mmc-pltfm.c | 1 +
> drivers/mmc/host/dw_mmc-rockchip.c | 1 +
> drivers/mmc/host/dw_mmc-zx.c | 1 +
> drivers/mmc/host/jz4740_mmc.c | 1 +
> drivers/mmc/host/meson-gx-mmc.c | 1 +
> drivers/mmc/host/meson-mx-sdhc-mmc.c | 1 +
> drivers/mmc/host/meson-mx-sdio.c | 1 +
> drivers/mmc/host/moxart-mmc.c | 1 +
> drivers/mmc/host/mtk-sd.c | 1 +
> drivers/mmc/host/mvsdio.c | 1 +
> drivers/mmc/host/mxcmmc.c | 1 +
> drivers/mmc/host/mxs-mmc.c | 1 +
> drivers/mmc/host/omap.c | 1 +
> drivers/mmc/host/omap_hsmmc.c | 1 +
> drivers/mmc/host/owl-mmc.c | 1 +
> drivers/mmc/host/pxamci.c | 1 +
> drivers/mmc/host/renesas_sdhi_internal_dmac.c | 1 +
> drivers/mmc/host/renesas_sdhi_sys_dmac.c | 1 +
> drivers/mmc/host/rtsx_pci_sdmmc.c | 1 +
> drivers/mmc/host/rtsx_usb_sdmmc.c | 1 +
> drivers/mmc/host/s3cmci.c | 1 +
> drivers/mmc/host/sdhci-acpi.c | 1 +
> drivers/mmc/host/sdhci-bcm-kona.c | 1 +
> drivers/mmc/host/sdhci-brcmstb.c | 1 +
> drivers/mmc/host/sdhci-cadence.c | 1 +
> drivers/mmc/host/sdhci-cns3xxx.c | 1 +
> drivers/mmc/host/sdhci-dove.c | 1 +
> drivers/mmc/host/sdhci-esdhc-imx.c | 1 +
> drivers/mmc/host/sdhci-esdhc-mcf.c | 1 +
> drivers/mmc/host/sdhci-iproc.c | 1 +
> drivers/mmc/host/sdhci-milbeaut.c | 1 +
> drivers/mmc/host/sdhci-of-arasan.c | 1 +
> drivers/mmc/host/sdhci-of-aspeed.c | 2 ++
> drivers/mmc/host/sdhci-of-at91.c | 1 +
> drivers/mmc/host/sdhci-of-dwcmshc.c | 1 +
> drivers/mmc/host/sdhci-of-esdhc.c | 1 +
> drivers/mmc/host/sdhci-of-hlwd.c | 1 +
> drivers/mmc/host/sdhci-of-sparx5.c | 1 +
> drivers/mmc/host/sdhci-omap.c | 1 +
> drivers/mmc/host/sdhci-pic32.c | 1 +
> drivers/mmc/host/sdhci-pxav2.c | 1 +
> drivers/mmc/host/sdhci-pxav3.c | 1 +
> drivers/mmc/host/sdhci-s3c.c | 1 +
> drivers/mmc/host/sdhci-sirf.c | 1 +
> drivers/mmc/host/sdhci-spear.c | 1 +
> drivers/mmc/host/sdhci-sprd.c | 1 +
> drivers/mmc/host/sdhci-st.c | 1 +
> drivers/mmc/host/sdhci-tegra.c | 1 +
> drivers/mmc/host/sdhci-xenon.c | 1 +
> drivers/mmc/host/sdhci_am654.c | 1 +
> drivers/mmc/host/sdhci_f_sdh30.c | 1 +
> drivers/mmc/host/sh_mmcif.c | 1 +
> drivers/mmc/host/sunxi-mmc.c | 1 +
> drivers/mmc/host/tmio_mmc.c | 1 +
> drivers/mmc/host/uniphier-sd.c | 1 +
> drivers/mmc/host/usdhi6rol0.c | 1 +
> drivers/mmc/host/wbsd.c | 1 +
> drivers/mmc/host/wmt-sdmmc.c | 1 +
> 69 files changed, 70 insertions(+)
>
> --
> 2.28.0.526.ge36021eeef-goog
>
An interesting idea about a patch per LTS release. I think it makes
perfect sense in this type of case.
Let's give this a shot in next and see how it goes. So, applied for
next, thanks!
Kind regards
Uffe
_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek
^ permalink raw reply [flat|nested] 10+ messages in thread