diff options
| -rw-r--r-- | arch/arm/mach-omap2/common.h | 1 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/omap4-common.c | 57 |
2 files changed, 0 insertions, 58 deletions
diff --git a/arch/arm/mach-omap2/common.h b/arch/arm/mach-omap2/common.h index f7644febee81..e30ef6797c63 100644 --- a/arch/arm/mach-omap2/common.h +++ b/arch/arm/mach-omap2/common.h | |||
| @@ -299,7 +299,6 @@ struct omap_sdrc_params; | |||
| 299 | extern void omap_sdrc_init(struct omap_sdrc_params *sdrc_cs0, | 299 | extern void omap_sdrc_init(struct omap_sdrc_params *sdrc_cs0, |
| 300 | struct omap_sdrc_params *sdrc_cs1); | 300 | struct omap_sdrc_params *sdrc_cs1); |
| 301 | struct omap2_hsmmc_info; | 301 | struct omap2_hsmmc_info; |
| 302 | extern int omap4_twl6030_hsmmc_init(struct omap2_hsmmc_info *controllers); | ||
| 303 | extern void omap_reserve(void); | 302 | extern void omap_reserve(void); |
| 304 | 303 | ||
| 305 | struct omap_hwmod; | 304 | struct omap_hwmod; |
diff --git a/arch/arm/mach-omap2/omap4-common.c b/arch/arm/mach-omap2/omap4-common.c index 57911430324e..b39efd46abf9 100644 --- a/arch/arm/mach-omap2/omap4-common.c +++ b/arch/arm/mach-omap2/omap4-common.c | |||
| @@ -35,7 +35,6 @@ | |||
| 35 | #include "iomap.h" | 35 | #include "iomap.h" |
| 36 | #include "common.h" | 36 | #include "common.h" |
| 37 | #include "mmc.h" | 37 | #include "mmc.h" |
| 38 | #include "hsmmc.h" | ||
| 39 | #include "prminst44xx.h" | 38 | #include "prminst44xx.h" |
| 40 | #include "prcm_mpu44xx.h" | 39 | #include "prcm_mpu44xx.h" |
| 41 | #include "omap4-sar-layout.h" | 40 | #include "omap4-sar-layout.h" |
| @@ -284,59 +283,3 @@ skip_errata_init: | |||
| 284 | omap_wakeupgen_init(); | 283 | omap_wakeupgen_init(); |
| 285 | irqchip_init(); | 284 | irqchip_init(); |
| 286 | } | 285 | } |
| 287 | |||
| 288 | #if defined(CONFIG_MMC_OMAP_HS) || defined(CONFIG_MMC_OMAP_HS_MODULE) | ||
| 289 | static int omap4_twl6030_hsmmc_late_init(struct device *dev) | ||
| 290 | { | ||
| 291 | int irq = 0; | ||
| 292 | struct platform_device *pdev = container_of(dev, | ||
| 293 | struct platform_device, dev); | ||
| 294 | struct omap_mmc_platform_data *pdata = dev->platform_data; | ||
| 295 | |||
| 296 | /* Setting MMC1 Card detect Irq */ | ||
| 297 | if (pdev->id == 0) { | ||
| 298 | irq = twl6030_mmc_card_detect_config(); | ||
| 299 | if (irq < 0) { | ||
| 300 | dev_err(dev, "%s: Error card detect config(%d)\n", | ||
| 301 | __func__, irq); | ||
| 302 | return irq; | ||
| 303 | } | ||
| 304 | pdata->slots[0].card_detect_irq = irq; | ||
| 305 | pdata->slots[0].card_detect = twl6030_mmc_card_detect; | ||
| 306 | } | ||
| 307 | return 0; | ||
| 308 | } | ||
| 309 | |||
| 310 | static __init void omap4_twl6030_hsmmc_set_late_init(struct device *dev) | ||
| 311 | { | ||
| 312 | struct omap_mmc_platform_data *pdata; | ||
| 313 | |||
| 314 | /* dev can be null if CONFIG_MMC_OMAP_HS is not set */ | ||
| 315 | if (!dev) { | ||
| 316 | pr_err("Failed %s\n", __func__); | ||
| 317 | return; | ||
| 318 | } | ||
| 319 | pdata = dev->platform_data; | ||
| 320 | pdata->init = omap4_twl6030_hsmmc_late_init; | ||
| 321 | } | ||
| 322 | |||
| 323 | int __init omap4_twl6030_hsmmc_init(struct omap2_hsmmc_info *controllers) | ||
| 324 | { | ||
| 325 | struct omap2_hsmmc_info *c; | ||
| 326 | |||
| 327 | omap_hsmmc_init(controllers); | ||
| 328 | for (c = controllers; c->mmc; c++) { | ||
| 329 | /* pdev can be null if CONFIG_MMC_OMAP_HS is not set */ | ||
| 330 | if (!c->pdev) | ||
| 331 | continue; | ||
| 332 | omap4_twl6030_hsmmc_set_late_init(&c->pdev->dev); | ||
| 333 | } | ||
| 334 | |||
| 335 | return 0; | ||
| 336 | } | ||
| 337 | #else | ||
| 338 | int __init omap4_twl6030_hsmmc_init(struct omap2_hsmmc_info *controllers) | ||
| 339 | { | ||
| 340 | return 0; | ||
| 341 | } | ||
| 342 | #endif | ||
