HACK: mmc: core: fixes not send_status after switch timing
authorxiaoyao <xiaoyao@rock-chips.com>
Sat, 8 Oct 2016 03:03:56 +0000 (11:03 +0800)
committerHuang, Tao <huangtao@rock-chips.com>
Mon, 10 Oct 2016 13:08:27 +0000 (21:08 +0800)
Fixes 3527e5709 (HACK: mmc: core: fix switching ... ...)
Change-Id: Id46840452e4bc87efb93e785cd8bbac5f708552d
Signed-off-by: xiaoyao <xiaoyao@rock-chips.com>
drivers/mmc/core/mmc.c

index 9531caa125bb4349e6fd61d6ef214fe6639d0148..b867f66a19aae7a4feb9b5fde7032aa05766e83c 100644 (file)
@@ -1008,13 +1008,9 @@ static int mmc_select_hs(struct mmc_card *card)
                           EXT_CSD_HS_TIMING, EXT_CSD_TIMING_HS,
                           card->ext_csd.generic_cmd6_time,
                           true, false, true);
-       if (!err) {
+       if (!err)
                mmc_set_timing(card->host, MMC_TIMING_MMC_HS);
 
-               mmc_set_clock(card->host, card->ext_csd.hs_max_dtr);
-               err = mmc_switch_status(card);
-       }
-
        if (err)
                pr_warn("%s: switch to high-speed failed, err:%d\n",
                        mmc_hostname(card->host), err);
@@ -1379,15 +1375,6 @@ static int mmc_select_hs200(struct mmc_card *card)
                        goto err;
                old_timing = host->ios.timing;
                mmc_set_timing(host, MMC_TIMING_MMC_HS200);
-
-               mmc_set_clock(host, card->ext_csd.hs200_max_dtr);
-               err = mmc_switch_status(card);
-               /*
-                * mmc_select_timing() assumes timing has not changed if
-                * it is a switch error.
-                */
-               if (err == -EBADMSG)
-                       mmc_set_timing(host, old_timing);
        }
 err:
        if (err) {