diff --git a/target/linux/rockchip/patches-5.4/108-rfc-mmc-core-set-initial-signal-voltage-on-power-off.patch b/target/linux/rockchip/patches-5.4/108-mmc-core-set-initial-signal-voltage-on-power-off.patch similarity index 59% rename from target/linux/rockchip/patches-5.4/108-rfc-mmc-core-set-initial-signal-voltage-on-power-off.patch rename to target/linux/rockchip/patches-5.4/108-mmc-core-set-initial-signal-voltage-on-power-off.patch index 4370734dd7..6435cb4b01 100644 --- a/target/linux/rockchip/patches-5.4/108-rfc-mmc-core-set-initial-signal-voltage-on-power-off.patch +++ b/target/linux/rockchip/patches-5.4/108-mmc-core-set-initial-signal-voltage-on-power-off.patch @@ -1,6 +1,7 @@ -Subject: [RFC] mmc: core: set initial signal voltage on power off -Date: Sun, 17 Feb 2019 22:14:38 +0000 -Message-ID: +From 0d329112c709d6cfedf0fffb19f0cc6b19043f6b Mon Sep 17 00:00:00 2001 +From: Jonas Karlman +Date: Wed, 20 Feb 2019 07:38:34 +0000 +Subject: [PATCH] mmc: core: set initial signal voltage on power off Some boards have SD card connectors where the power rail cannot be switched off by the driver. If the card has not been power cycled, it may still be @@ -16,26 +17,19 @@ I am sending this as a RFC because I have no insights into SD/MMC subsystem, this change fix a re-boot issue on my boards and does not break emmc/sdio. Is this an acceptable workaround? Any advice is appreciated. -Signed-off-by: Jonas Karlman +Signed-off-by: Jonas Karlman --- - drivers/mmc/core/core.c | 8 ++++++++ - 1 file changed, 8 insertions(+) + drivers/mmc/core/core.c | 2 ++ + 1 file changed, 2 insertions(+) --- a/drivers/mmc/core/core.c +++ b/drivers/mmc/core/core.c -@@ -1684,6 +1684,14 @@ void mmc_power_off(struct mmc_host *host) - if (host->ios.power_mode == MMC_POWER_OFF) - return; +@@ -1686,6 +1686,8 @@ void mmc_power_off(struct mmc_host *host) + + mmc_pwrseq_power_off(host); + mmc_set_initial_signal_voltage(host); + -+ /* -+ * This delay should be sufficient to allow the power supply -+ * to reach the minimum voltage. -+ */ -+ mmc_delay(host->ios.power_delay_ms); -+ - mmc_pwrseq_power_off(host); - host->ios.clock = 0; - + host->ios.vdd = 0; +