sdio_reset sends a CMD52 to reset the sdio card.  This is
highly recommended for sdio cards being reinitialized.  Since
we do not know if the card is being reinitialized we just send
the command.  SD/eMMC cards are supposed to ignore the CMD
before the CMD0.  Document why we are doing this.

Signed-off-by: Philip Rakity <[email protected]>
---
 drivers/mmc/core/core.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c
index 34a7e8c..d9fb0d3 100644
--- a/drivers/mmc/core/core.c
+++ b/drivers/mmc/core/core.c
@@ -1494,6 +1494,12 @@ static int mmc_rescan_try_freq(struct mmc_host *host, 
unsigned freq)
                mmc_hostname(host), __func__, host->f_init);
 #endif
        mmc_power_up(host);
+
+       /*
+        * sdio_reset sends CMD52 to reset card.  Since we do not know
+        * if the card is being re-initialzed just send it.  CMD52
+        * should be ignored by SD/eMMC cards
+        */
        sdio_reset(host);
        mmc_go_idle(host);
 
-- 
1.7.0.4


--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to