]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
mmc: mxs-mmc: copy wp_gpio in struct mxs_mmc_host
authorShawn Guo <shawn.guo@linaro.org>
Sun, 6 May 2012 05:33:40 +0000 (13:33 +0800)
committerShawn Guo <shawn.guo@linaro.org>
Sun, 13 May 2012 00:05:58 +0000 (08:05 +0800)
Copy wp_gpio from platform_data into struct mxs_mmc_host, so that
the use of platform_data can be limited in probe function, which
will ease the device tree probe.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Chris Ball <cjb@laptop.org>
drivers/mmc/host/mxs-mmc.c

index 202d0966b673c5b778bf867b75fa60bb2497a2b0..76232dd277c96398548eab399262460120a21174 100644 (file)
@@ -160,21 +160,17 @@ struct mxs_mmc_host {
        unsigned char                   bus_width;
        spinlock_t                      lock;
        int                             sdio_irq_en;
+       int                             wp_gpio;
 };
 
 static int mxs_mmc_get_ro(struct mmc_host *mmc)
 {
        struct mxs_mmc_host *host = mmc_priv(mmc);
-       struct mxs_mmc_platform_data *pdata =
-               mmc_dev(host->mmc)->platform_data;
 
-       if (!pdata)
-               return -EFAULT;
-
-       if (!gpio_is_valid(pdata->wp_gpio))
+       if (!gpio_is_valid(host->wp_gpio))
                return -EINVAL;
 
-       return gpio_get_value(pdata->wp_gpio);
+       return gpio_get_value(host->wp_gpio);
 }
 
 static int mxs_mmc_get_cd(struct mmc_host *mmc)
@@ -758,6 +754,7 @@ static int mxs_mmc_probe(struct platform_device *pdev)
                        mmc->caps |= MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA;
                if (pdata->flags & SLOTF_4_BIT_CAPABLE)
                        mmc->caps |= MMC_CAP_4_BIT_DATA;
+               host->wp_gpio = pdata->wp_gpio;
        }
 
        mmc->f_min = 400000;