[PATCH] mmc: dts: am654: Add 650ms power off delay for proper MMC power cycle
Judith Mendez
jm at ti.com
Tue Sep 8 10:06:35 PDT 2026
The AM65x EVM MMC1 VDD rail discharges slowly through RC circuit.
SD spec (section 6.4.1.3) requires VDD < 0.5V for minimum 1ms during
power cycle. Measured discharge time on this board is ~632.97ms to
reach < 0.5V threshold.
During boot, MMC power cycles between boot stages. Without power off
delay, VDD doesn't fully discharge. Card retains 1.8V signaling state
from previous stages. When U-Boot initializes, card no longer asserts
S18A in ACMD41 response (already switched to 1.8V). Host misinterprets
card state and forces 1.8V anyway, falling into a bad state and causing
a boot failure.
Add power-off-delay-us = 650000 (650ms) to ensure proper VDD discharge
during power cycles, allowing card to fully reset state between boot
stages.
Signed-off-by: Judith Mendez <jm at ti.com>
---
arch/arm64/boot/dts/ti/k3-am654-base-board.dts | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm64/boot/dts/ti/k3-am654-base-board.dts b/arch/arm64/boot/dts/ti/k3-am654-base-board.dts
index ca1300e130936..edcf039ccfbd0 100644
--- a/arch/arm64/boot/dts/ti/k3-am654-base-board.dts
+++ b/arch/arm64/boot/dts/ti/k3-am654-base-board.dts
@@ -460,6 +460,7 @@ &sdhci0 {
&sdhci1 {
status = "okay";
vmmc-supply = <&vdd_mmc1_sd>;
+ power-off-delay-us = <650000>;
pinctrl-names = "default";
pinctrl-0 = <&main_mmc1_pins_default>;
ti,driver-strength-ohm = <50>;
--
2.34.1
More information about the linux-arm-kernel
mailing list