diff options
author | Michal Miroslaw <mirq-linux@rere.qmqm.pl> | 2010-12-02 17:38:12 -0500 |
---|---|---|
committer | Chris Ball <cjb@laptop.org> | 2011-01-08 22:48:37 -0500 |
commit | e6f29a8dc1602e170daf955233891a9130573a55 (patch) | |
tree | e63c6bae4b61e4251c5f3f25605192b9720d4bc7 /drivers | |
parent | 080bc9774b6f1e3866747b18631bad26f47c22ce (diff) |
mmc: fix detection of memory part of SD-combo card with broken SDIO
In case of failure, mmc_attach_sdio() will power off the SD bus.
Power it up and reinitialize before trying SD memory detection.
Reported-by: Sahitya Tummala <stummala@codeaurora.org>
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Reviewed-by: Chris Ball <cjb@laptop.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/mmc/core/core.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c index 241ffb28351c..97e0624eb9b6 100644 --- a/drivers/mmc/core/core.c +++ b/drivers/mmc/core/core.c | |||
@@ -1569,6 +1569,11 @@ void mmc_rescan(struct work_struct *work) | |||
1569 | * Try SDMEM (but not MMC) even if SDIO | 1569 | * Try SDMEM (but not MMC) even if SDIO |
1570 | * is broken. | 1570 | * is broken. |
1571 | */ | 1571 | */ |
1572 | mmc_power_up(host); | ||
1573 | sdio_reset(host); | ||
1574 | mmc_go_idle(host); | ||
1575 | mmc_send_if_cond(host, host->ocr_avail); | ||
1576 | |||
1572 | if (mmc_send_app_op_cond(host, 0, &ocr)) | 1577 | if (mmc_send_app_op_cond(host, 0, &ocr)) |
1573 | goto out_fail; | 1578 | goto out_fail; |
1574 | 1579 | ||