mmc: rtsx: add delay before power on
authorRicky Wu <ricky_wu@realtek.com>
Wed, 13 Jan 2021 10:57:23 +0000 (18:57 +0800)
committerUlf Hansson <ulf.hansson@linaro.org>
Mon, 1 Feb 2021 10:54:45 +0000 (11:54 +0100)
To make sure voltage is below 0.5V before power on during a power cycle,
add a delay of at least 100ms. The delays in the mmc core is not sufficient
for the rtsx pci device.

Signed-off-by: Ricky Wu <ricky_wu@realtek.com>
Link: https://lore.kernel.org/r/20210113105723.7916-1-ricky_wu@realtek.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/rtsx_pci_sdmmc.c

index 446efbb9e099f9e320243c195fa6a2368ca34042..4ca9374157348412909fb93a5e9649ea91ee235f 100644 (file)
@@ -906,6 +906,8 @@ static int sd_power_on(struct realtek_pci_sdmmc *host)
        if (host->power_state == SDMMC_POWER_ON)
                return 0;
 
+       msleep(100);
+
        rtsx_pci_init_cmd(pcr);
        rtsx_pci_add_cmd(pcr, WRITE_REG_CMD, CARD_SELECT, 0x07, SD_MOD_SEL);
        rtsx_pci_add_cmd(pcr, WRITE_REG_CMD, CARD_SHARE_MODE,