diff options
Diffstat (limited to 'drivers/mci/omap_hsmmc.c')
-rw-r--r-- | drivers/mci/omap_hsmmc.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/mci/omap_hsmmc.c b/drivers/mci/omap_hsmmc.c index 5fdf445c70..3f70e22629 100644 --- a/drivers/mci/omap_hsmmc.c +++ b/drivers/mci/omap_hsmmc.c @@ -29,7 +29,9 @@ #include <mci.h> #include <clock.h> #include <errno.h> -#include <asm/io.h> +#include <io.h> + +#include <mach/omap_hsmmc.h> struct hsmmc { unsigned char res1[0x10]; @@ -549,6 +551,7 @@ static void mmc_set_ios(struct mci_host *mci, struct device_d *dev, static int omap_mmc_probe(struct device_d *dev) { struct omap_hsmmc *hsmmc; + struct omap_hsmmc_platform_data *pdata; hsmmc = xzalloc(sizeof(*hsmmc)); @@ -564,7 +567,12 @@ static int omap_mmc_probe(struct device_d *dev) hsmmc->mci.voltages = MMC_VDD_32_33 | MMC_VDD_33_34; hsmmc->mci.f_min = 400000; - hsmmc->mci.f_max = 52000000; + + pdata = (struct omap_hsmmc_platform_data *)dev->platform_data; + if (pdata->f_max) + hsmmc->mci.f_max = pdata->f_max; + else + hsmmc->mci.f_max = 52000000; mci_register(&hsmmc->mci); |