diff options
Diffstat (limited to 'drivers/mmc/host/tmio_mmc.c')
-rw-r--r-- | drivers/mmc/host/tmio_mmc.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/mmc/host/tmio_mmc.c b/drivers/mmc/host/tmio_mmc.c index 8860d4d2bc22..1900abb04236 100644 --- a/drivers/mmc/host/tmio_mmc.c +++ b/drivers/mmc/host/tmio_mmc.c | |||
@@ -62,6 +62,7 @@ static int tmio_mmc_probe(struct platform_device *pdev) | |||
62 | const struct mfd_cell *cell = mfd_get_cell(pdev); | 62 | const struct mfd_cell *cell = mfd_get_cell(pdev); |
63 | struct tmio_mmc_data *pdata; | 63 | struct tmio_mmc_data *pdata; |
64 | struct tmio_mmc_host *host; | 64 | struct tmio_mmc_host *host; |
65 | struct resource *res; | ||
65 | int ret = -EINVAL, irq; | 66 | int ret = -EINVAL, irq; |
66 | 67 | ||
67 | if (pdev->num_resources != 2) | 68 | if (pdev->num_resources != 2) |
@@ -84,6 +85,14 @@ static int tmio_mmc_probe(struct platform_device *pdev) | |||
84 | goto out; | 85 | goto out; |
85 | } | 86 | } |
86 | 87 | ||
88 | res = platform_get_resource(pdev, IORESOURCE_MEM, 0); | ||
89 | if (!res) | ||
90 | return -EINVAL; | ||
91 | |||
92 | /* SD control register space size is 0x200, 0x400 for bus_shift=1 */ | ||
93 | pdata->bus_shift = resource_size(res) >> 10; | ||
94 | pdata->flags |= TMIO_MMC_HAVE_HIGH_REG; | ||
95 | |||
87 | ret = tmio_mmc_host_probe(&host, pdev, pdata); | 96 | ret = tmio_mmc_host_probe(&host, pdev, pdata); |
88 | if (ret) | 97 | if (ret) |
89 | goto cell_disable; | 98 | goto cell_disable; |