mmc: Fixed a problem with old sd or mmc that do not support High speed
authorJean-Jacques Hiblot <jjhiblot@ti.com>
Thu, 30 Nov 2017 16:43:56 +0000 (17:43 +0100)
committerJaehoon Chung <jh80.chung@samsung.com>
Fri, 12 Jan 2018 09:11:04 +0000 (18:11 +0900)
As the legacy modes were not added to the list of supported modes, old
cards that do not support other modes could not be used.

Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
Reviewed-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
drivers/mmc/mmc.c

index 9b5c982578c928d5ce3e9b13cb01c217bb61537c..c1f8851ab2f3ef84a1b9cf1680b5638e00528464 100644 (file)
@@ -818,7 +818,7 @@ static int mmc_get_capabilities(struct mmc *mmc)
        u8 *ext_csd = mmc->ext_csd;
        char cardtype;
 
-       mmc->card_caps = MMC_MODE_1BIT;
+       mmc->card_caps = MMC_MODE_1BIT | MMC_CAP(MMC_LEGACY);
 
        if (mmc_host_is_spi(mmc))
                return 0;
@@ -1171,7 +1171,7 @@ static int sd_get_capabilities(struct mmc *mmc)
        int timeout;
        u32 sd3_bus_mode;
 
-       mmc->card_caps = MMC_MODE_1BIT;
+       mmc->card_caps = MMC_MODE_1BIT | MMC_CAP(SD_LEGACY);
 
        if (mmc_host_is_spi(mmc))
                return 0;