diff mbox series

Revert "mmc: davinci: drop struct davinci_mmc_plat"

Message ID 20200103181707.6779-1-trini@konsulko.com
State Accepted
Commit 797eee36a160c563a52fdb77dfceac13e83de47c
Delegated to: Tom Rini
Headers show
Series Revert "mmc: davinci: drop struct davinci_mmc_plat" | expand

Commit Message

Tom Rini Jan. 3, 2020, 6:17 p.m. UTC
Adam Ford reports that this change breaks booting on da850-evm and
Bartosz Golaszewski agrees that with the impending release we should
revert the change for now.  With that noted:

This reverts commit 21a4d80a710c79053ac1deaa65ff9b69e6c031d4.

Cc: Adam Ford <aford173@gmail.com>
Cc: Bartosz Golaszewski <brgl@bgdev.pl>
Signed-off-by: Tom Rini <trini@konsulko.com>
---
 drivers/mmc/davinci_mmc.c | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

Comments

Tom Rini Jan. 5, 2020, 1:36 p.m. UTC | #1
On Fri, Jan 03, 2020 at 01:17:07PM -0500, Tom Rini wrote:

> Adam Ford reports that this change breaks booting on da850-evm and
> Bartosz Golaszewski agrees that with the impending release we should
> revert the change for now.  With that noted:
> 
> This reverts commit 21a4d80a710c79053ac1deaa65ff9b69e6c031d4.
> 
> Cc: Bartosz Golaszewski <brgl@bgdev.pl>
> Tested-by: Adam Ford <aford173@gmail.com>
> Signed-off-by: Tom Rini <trini@konsulko.com>

Applied to u-boot/master, thanks!
diff mbox series

Patch

diff --git a/drivers/mmc/davinci_mmc.c b/drivers/mmc/davinci_mmc.c
index c3f7b57665d3..ef5cd4e7234f 100644
--- a/drivers/mmc/davinci_mmc.c
+++ b/drivers/mmc/davinci_mmc.c
@@ -32,6 +32,10 @@  struct davinci_mmc_priv {
 	uint input_clk;		/* Input clock to MMC controller */
 	struct gpio_desc cd_gpio;       /* Card Detect GPIO */
 	struct gpio_desc wp_gpio;       /* Write Protect GPIO */
+};
+
+struct davinci_mmc_plat
+{
 	struct mmc_config cfg;
 	struct mmc mmc;
 };
@@ -480,8 +484,9 @@  int davinci_mmc_init(bd_t *bis, struct davinci_mmc *host)
 static int davinci_mmc_probe(struct udevice *dev)
 {
 	struct mmc_uclass_priv *upriv = dev_get_uclass_priv(dev);
+	struct davinci_mmc_plat *plat = dev_get_platdata(dev);
 	struct davinci_mmc_priv *priv = dev_get_priv(dev);
-	struct mmc_config *cfg = &priv->cfg;
+ 	struct mmc_config *cfg = &plat->cfg;
 #ifdef CONFIG_SPL_BUILD
 	int ret;
 #endif
@@ -502,7 +507,7 @@  static int davinci_mmc_probe(struct udevice *dev)
 	gpio_request_by_name(dev, "wp-gpios", 0, &priv->wp_gpio, GPIOD_IS_IN);
 #endif
 
-	upriv->mmc = &priv->mmc;
+	upriv->mmc = &plat->mmc;
 
 #ifdef CONFIG_SPL_BUILD
 	/*
@@ -513,7 +518,7 @@  static int davinci_mmc_probe(struct udevice *dev)
 	 * support in SPL, hence the hard-coded base register address.
 	 */
 	priv->reg_base = (struct davinci_mmc_regs *)DAVINCI_MMC_SD0_BASE;
-	ret = mmc_bind(dev, &priv->mmc, &priv->cfg);
+	ret = mmc_bind(dev, &plat->mmc, &plat->cfg);
 	if (ret)
 		return ret;
 #endif
@@ -523,9 +528,9 @@  static int davinci_mmc_probe(struct udevice *dev)
 
 static int davinci_mmc_bind(struct udevice *dev)
 {
-	struct davinci_mmc_priv *priv = dev_get_priv(dev);
+	struct davinci_mmc_plat *plat = dev_get_platdata(dev);
 
-	return mmc_bind(dev, &priv->mmc, &priv->cfg);
+	return mmc_bind(dev, &plat->mmc, &plat->cfg);
 }
 
 static const struct udevice_id davinci_mmc_ids[] = {
@@ -542,6 +547,7 @@  U_BOOT_DRIVER(davinci_mmc_drv) = {
 #endif
 	.probe = davinci_mmc_probe,
 	.ops = &davinci_mmc_ops,
+	.platdata_auto_alloc_size = sizeof(struct davinci_mmc_plat),
 	.priv_auto_alloc_size = sizeof(struct davinci_mmc_priv),
 };
 #endif