mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-08 03:40:35 +09:00
mmc: sd: When resuming, try a little harder to init the card
Signed-off-by: San Mehat <san@android.com>
This commit is contained in:
committed by
Arve Hjønnevåg
parent
79677ac693
commit
d4322f4552
@@ -1106,12 +1106,31 @@ static int mmc_sd_suspend(struct mmc_host *host)
|
||||
static int mmc_sd_resume(struct mmc_host *host)
|
||||
{
|
||||
int err;
|
||||
#ifdef CONFIG_MMC_PARANOID_SD_INIT
|
||||
int retries;
|
||||
#endif
|
||||
|
||||
BUG_ON(!host);
|
||||
BUG_ON(!host->card);
|
||||
|
||||
mmc_claim_host(host);
|
||||
#ifdef CONFIG_MMC_PARANOID_SD_INIT
|
||||
retries = 5;
|
||||
while (retries) {
|
||||
err = mmc_sd_init_card(host, host->ocr, host->card);
|
||||
|
||||
if (err) {
|
||||
printk(KERN_ERR "%s: Re-init card rc = %d (retries = %d)\n",
|
||||
mmc_hostname(host), err, retries);
|
||||
mdelay(5);
|
||||
retries--;
|
||||
continue;
|
||||
}
|
||||
break;
|
||||
}
|
||||
#else
|
||||
err = mmc_sd_init_card(host, host->ocr, host->card);
|
||||
#endif
|
||||
mmc_release_host(host);
|
||||
|
||||
return err;
|
||||
|
||||
Reference in New Issue
Block a user