mmc: core: use card->ocr when negotiating voltage setting in mmc_sdio_power_restore
authorNeilBrown <neilb@suse.de>
Wed, 12 Nov 2014 03:55:19 +0000 (14:55 +1100)
committerUlf Hansson <ulf.hansson@linaro.org>
Wed, 26 Nov 2014 13:30:58 +0000 (14:30 +0100)
As we are restoring power to a known card, it makes sense to use
the 'ocr' value known for the card rather than the generic one
for the host interface.
This matches the use of card->ocr passed to mmc_power_up in
mmc_sdio_runtime_resume  (just before mmc_sdio_power_restore is
called), and the value passed to mmc_sdio_init_card() a little
later in mmc_sdio_power_restore().

Suggested-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: NeilBrown <neilb@suse.de>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/core/sdio.c

index 2439e717655b132654fb67e9509af8d834940ee1..f0ddb0d2853645257b6c0fdc5f4bc815c299a649 100644 (file)
@@ -1035,7 +1035,7 @@ static int mmc_sdio_power_restore(struct mmc_host *host)
 
        sdio_reset(host);
        mmc_go_idle(host);
-       mmc_send_if_cond(host, host->ocr_avail);
+       mmc_send_if_cond(host, host->card->ocr);
 
        ret = mmc_send_io_op_cond(host, 0, NULL);
        if (ret)