summaryrefslogtreecommitdiff
path: root/drivers/mmc
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/mmc')
-rw-r--r--drivers/mmc/matsushita-common.c3
-rw-r--r--drivers/mmc/matsushita-common.h2
-rw-r--r--drivers/mmc/renesas-sdhi.c9
-rw-r--r--drivers/mmc/uniphier-sd.c7
4 files changed, 16 insertions, 5 deletions
diff --git a/drivers/mmc/matsushita-common.c b/drivers/mmc/matsushita-common.c
index 9f7f47c86b4..0b0cbaf9e17 100644
--- a/drivers/mmc/matsushita-common.c
+++ b/drivers/mmc/matsushita-common.c
@@ -653,12 +653,11 @@ int matsu_sd_bind(struct udevice *dev)
return mmc_bind(dev, &plat->mmc, &plat->cfg);
}
-int matsu_sd_probe(struct udevice *dev)
+int matsu_sd_probe(struct udevice *dev, u32 quirks)
{
struct matsu_sd_plat *plat = dev_get_platdata(dev);
struct matsu_sd_priv *priv = dev_get_priv(dev);
struct mmc_uclass_priv *upriv = dev_get_uclass_priv(dev);
- const u32 quirks = dev_get_driver_data(dev);
fdt_addr_t base;
struct clk clk;
int ret;
diff --git a/drivers/mmc/matsushita-common.h b/drivers/mmc/matsushita-common.h
index c1b28a0128f..a03d8f97e56 100644
--- a/drivers/mmc/matsushita-common.h
+++ b/drivers/mmc/matsushita-common.h
@@ -132,6 +132,6 @@ int matsu_sd_set_ios(struct udevice *dev);
int matsu_sd_get_cd(struct udevice *dev);
int matsu_sd_bind(struct udevice *dev);
-int matsu_sd_probe(struct udevice *dev);
+int matsu_sd_probe(struct udevice *dev, u32 quirks);
#endif /* __MATSUSHITA_COMMON_H__ */
diff --git a/drivers/mmc/renesas-sdhi.c b/drivers/mmc/renesas-sdhi.c
index 9b388b3ab0a..d6b3bfbadc7 100644
--- a/drivers/mmc/renesas-sdhi.c
+++ b/drivers/mmc/renesas-sdhi.c
@@ -38,12 +38,19 @@ static const struct udevice_id renesas_sdhi_match[] = {
{ /* sentinel */ }
};
+static int renesas_sdhi_probe(struct udevice *dev)
+{
+ u32 quirks = dev_get_driver_data(dev);
+
+ return matsu_sd_probe(dev, quirks);
+}
+
U_BOOT_DRIVER(renesas_sdhi) = {
.name = "renesas-sdhi",
.id = UCLASS_MMC,
.of_match = renesas_sdhi_match,
.bind = matsu_sd_bind,
- .probe = matsu_sd_probe,
+ .probe = renesas_sdhi_probe,
.priv_auto_alloc_size = sizeof(struct matsu_sd_priv),
.platdata_auto_alloc_size = sizeof(struct matsu_sd_plat),
.ops = &renesas_sdhi_ops,
diff --git a/drivers/mmc/uniphier-sd.c b/drivers/mmc/uniphier-sd.c
index 72f0d467582..42eb9c2c84e 100644
--- a/drivers/mmc/uniphier-sd.c
+++ b/drivers/mmc/uniphier-sd.c
@@ -30,12 +30,17 @@ static const struct udevice_id uniphier_sd_match[] = {
{ /* sentinel */ }
};
+static int uniphier_sd_probe(struct udevice *dev)
+{
+ return matsu_sd_probe(dev, 0);
+}
+
U_BOOT_DRIVER(uniphier_mmc) = {
.name = "uniphier-mmc",
.id = UCLASS_MMC,
.of_match = uniphier_sd_match,
.bind = matsu_sd_bind,
- .probe = matsu_sd_probe,
+ .probe = uniphier_sd_probe,
.priv_auto_alloc_size = sizeof(struct matsu_sd_priv),
.platdata_auto_alloc_size = sizeof(struct matsu_sd_plat),
.ops = &uniphier_sd_ops,