[PATCH v2 1/1] arm64: dts: ti: k3-am654-base-board: Add power-off delay for proper MMC power cycle

From: Judith Mendez

Date: Wed Sep 09 2026 - 15:06:56 EST


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 boot stages. When MMC driver later 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 causes MMC init failure with "unable to select a mode"
signature.

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@xxxxxx>
---
Changes since v1:
- Fixup commit header and description
---
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