* [PATCH v2 0/3] Fix MMC pin pull configurations
@ 2026-02-23 23:37 Judith Mendez
2026-02-23 23:37 ` [PATCH v2 1/3] arm64: dts: ti: k3-am62p5-sk: Disable MMC1 internal pulls on data pins Judith Mendez
` (4 more replies)
0 siblings, 5 replies; 7+ messages in thread
From: Judith Mendez @ 2026-02-23 23:37 UTC (permalink / raw)
To: Judith Mendez, Nishanth Menon, Vignesh Raghavendra
Cc: Tero Kristo, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
linux-arm-kernel, devicetree, linux-kernel, Moteen Shah,
Andrew Davis
This series corrects MMC pin pull-up/pull-down configurations across
TI AM62L EVM, AM62P SK, & AM62 LP SK boards to properly match their
hardware design.
Most boards have external pull-ups on MMC pins, but DT configuration
was also enabling internal pulls. Having both internal and external
pulls active causes several issues:
- Unnecessary power consumption due to stronger pull resistance
- Floating pins violating SPEC recommendations
All changes are based on the respective board schematics referenced
in each patch.
Changes since v1:
- improved all commit descriptions
- removed incorrect claim: potential issues for modes with tighter
timing requirements due to mismatched pull strengths between D0 and
remaining data pins
- drop patch 2/4. While there is a host side mismatch between D0 and
D1-D7 pins, leaving internal pullup on D0 equals a stronger pull,
helping with poor board design issues and better matching D0 pullup
strength with D1-D7 after taking into account eMMC card pullups on
D1-D7 pins
- rebased against ti-k3-dts-next
Link to v1:
https://lore.kernel.org/all/20260212184246.2316659-1-jm@ti.com/
Judith Mendez (3):
arm64: dts: ti: k3-am62p5-sk: Disable MMC1 internal pulls on data pins
arm64: dts: ti: k3-am62l-evm: Disable MMC1 internal pulls on data pins
arm64: dts: ti: k3-am62-lp-sk: Enable internal pulls for MMC0 data
pins
arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts | 14 +++++++-------
arch/arm64/boot/dts/ti/k3-am62l3-evm.dts | 6 +++---
arch/arm64/boot/dts/ti/k3-am62p5-sk.dts | 6 +++---
3 files changed, 13 insertions(+), 13 deletions(-)
--
2.52.0
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2 1/3] arm64: dts: ti: k3-am62p5-sk: Disable MMC1 internal pulls on data pins
2026-02-23 23:37 [PATCH v2 0/3] Fix MMC pin pull configurations Judith Mendez
@ 2026-02-23 23:37 ` Judith Mendez
2026-02-23 23:37 ` [PATCH v2 2/3] arm64: dts: ti: k3-am62l-evm: " Judith Mendez
` (3 subsequent siblings)
4 siblings, 0 replies; 7+ messages in thread
From: Judith Mendez @ 2026-02-23 23:37 UTC (permalink / raw)
To: Judith Mendez, Nishanth Menon, Vignesh Raghavendra
Cc: Tero Kristo, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
linux-arm-kernel, devicetree, linux-kernel, Moteen Shah,
Andrew Davis
AM62P SK has external 10K pullups on MMC1 DAT1-DAT3 pins [0].
Disable internal pullups on DAT1-DAT3 so that each line has a
single pullup source:
- with both pullups enabled, the effective parallel resistance on
DAT1-3 (~8.33K) drops below the 10K minimum pullup requirement
for data lines (per SD Physical Layer Specification)
- removing internal pullups makes DAT1-3 match DAT0 10K
external pullup so its consistent and within spec
- both internal and external pullups enabled equals unnecessary power
consumption
Fixes: c00504ea42c0 ("arm64: dts: ti: k3-am62p5-sk: Updates for SK EVM")
[0] https://www.ti.com/lit/zip/SPRR487
Signed-off-by: Judith Mendez <jm@ti.com>
Reviewed-by: Moteen Shah <m-shah@ti.com>
---
arch/arm64/boot/dts/ti/k3-am62p5-sk.dts | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts b/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts
index 4f7f6f95b02ef..35baa777b9121 100644
--- a/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts
+++ b/arch/arm64/boot/dts/ti/k3-am62p5-sk.dts
@@ -271,9 +271,9 @@ main_mmc1_pins_default: main-mmc1-default-pins {
AM62PX_IOPAD(0x023c, PIN_INPUT, 0) /* (H20) MMC1_CMD */
AM62PX_IOPAD(0x0234, PIN_OUTPUT, 0) /* (J24) MMC1_CLK */
AM62PX_IOPAD(0x0230, PIN_INPUT, 0) /* (H21) MMC1_DAT0 */
- AM62PX_IOPAD(0x022c, PIN_INPUT_PULLUP, 0) /* (H23) MMC1_DAT1 */
- AM62PX_IOPAD(0x0228, PIN_INPUT_PULLUP, 0) /* (H22) MMC1_DAT2 */
- AM62PX_IOPAD(0x0224, PIN_INPUT_PULLUP, 0) /* (H25) MMC1_DAT3 */
+ AM62PX_IOPAD(0x022c, PIN_INPUT, 0) /* (H23) MMC1_DAT1 */
+ AM62PX_IOPAD(0x0228, PIN_INPUT, 0) /* (H22) MMC1_DAT2 */
+ AM62PX_IOPAD(0x0224, PIN_INPUT, 0) /* (H25) MMC1_DAT3 */
AM62PX_IOPAD(0x0240, PIN_INPUT, 0) /* (D23) MMC1_SDCD */
>;
bootph-all;
--
2.52.0
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 2/3] arm64: dts: ti: k3-am62l-evm: Disable MMC1 internal pulls on data pins
2026-02-23 23:37 [PATCH v2 0/3] Fix MMC pin pull configurations Judith Mendez
2026-02-23 23:37 ` [PATCH v2 1/3] arm64: dts: ti: k3-am62p5-sk: Disable MMC1 internal pulls on data pins Judith Mendez
@ 2026-02-23 23:37 ` Judith Mendez
2026-02-23 23:37 ` [PATCH v2 3/3] arm64: dts: ti: k3-am62-lp-sk: Enable internal pulls for MMC0 " Judith Mendez
` (2 subsequent siblings)
4 siblings, 0 replies; 7+ messages in thread
From: Judith Mendez @ 2026-02-23 23:37 UTC (permalink / raw)
To: Judith Mendez, Nishanth Menon, Vignesh Raghavendra
Cc: Tero Kristo, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
linux-arm-kernel, devicetree, linux-kernel, Moteen Shah,
Andrew Davis
AM62L EVM has external 47K pullups on MMC1 DAT1-DAT3 pins [0].
Disable internal pullups on DAT1-DAT3 so that each line has a
single pullup source:
- with both pullups enabled, the effective parallel resistance on
DAT1-3 (~24.2K) creates a ~2x mismatch vs DAT0 (47K external
only). Removing internal pullups results in DAT1-3 matching DAT0 at 47K
- 47K external alone is within the recommended range for 1.8V
signaling (10K min, 50K recommended max)
- both internal and external pullups enabled equals unnecessary power
consumption
Fixes: 00fb4c73b67d ("arm64: dts: ti: k3-am62l: add initial reference board file")
[0] https://www.ti.com/lit/zip/SPRCAL6
Signed-off-by: Judith Mendez <jm@ti.com>
Reviewed-by: Moteen Shah <m-shah@ti.com>
---
arch/arm64/boot/dts/ti/k3-am62l3-evm.dts | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/arm64/boot/dts/ti/k3-am62l3-evm.dts b/arch/arm64/boot/dts/ti/k3-am62l3-evm.dts
index cae04cce33736..bd876c68aa347 100644
--- a/arch/arm64/boot/dts/ti/k3-am62l3-evm.dts
+++ b/arch/arm64/boot/dts/ti/k3-am62l3-evm.dts
@@ -272,9 +272,9 @@ mmc1_pins_default: mmc1-default-pins {
AM62LX_IOPAD(0x0230, PIN_INPUT, 0) /* (Y3) MMC1_CMD */
AM62LX_IOPAD(0x0228, PIN_OUTPUT, 0) /* (Y2) MMC1_CLK */
AM62LX_IOPAD(0x0224, PIN_INPUT, 0) /* (AA1) MMC1_DAT0 */
- AM62LX_IOPAD(0x0220, PIN_INPUT_PULLUP, 0) /* (Y4) MMC1_DAT1 */
- AM62LX_IOPAD(0x021c, PIN_INPUT_PULLUP, 0) /* (AA2) MMC1_DAT2 */
- AM62LX_IOPAD(0x0218, PIN_INPUT_PULLUP, 0) /* (AB2) MMC1_DAT3 */
+ AM62LX_IOPAD(0x0220, PIN_INPUT, 0) /* (Y4) MMC1_DAT1 */
+ AM62LX_IOPAD(0x021c, PIN_INPUT, 0) /* (AA2) MMC1_DAT2 */
+ AM62LX_IOPAD(0x0218, PIN_INPUT, 0) /* (AB2) MMC1_DAT3 */
AM62LX_IOPAD(0x0234, PIN_INPUT, 0) /* (B6) MMC1_SDCD */
>;
bootph-all;
--
2.52.0
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 3/3] arm64: dts: ti: k3-am62-lp-sk: Enable internal pulls for MMC0 data pins
2026-02-23 23:37 [PATCH v2 0/3] Fix MMC pin pull configurations Judith Mendez
2026-02-23 23:37 ` [PATCH v2 1/3] arm64: dts: ti: k3-am62p5-sk: Disable MMC1 internal pulls on data pins Judith Mendez
2026-02-23 23:37 ` [PATCH v2 2/3] arm64: dts: ti: k3-am62l-evm: " Judith Mendez
@ 2026-02-23 23:37 ` Judith Mendez
2026-03-19 8:02 ` [PATCH v2 0/3] Fix MMC pin pull configurations Francesco Dolcini
2026-03-27 4:56 ` Vignesh Raghavendra
4 siblings, 0 replies; 7+ messages in thread
From: Judith Mendez @ 2026-02-23 23:37 UTC (permalink / raw)
To: Judith Mendez, Nishanth Menon, Vignesh Raghavendra
Cc: Tero Kristo, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
linux-arm-kernel, devicetree, linux-kernel, Moteen Shah,
Andrew Davis
AM62 LP SK board does not have external pullups on MMC0 DAT1-DAT7
pins [0]. Enable internal pullups on DAT1-DAT7 considering:
- without a host-side pullup, these lines rely solely on the eMMC
device's internal pullup (R_int, 10-150K per JEDEC), which may
exceed the recommended 50K max for 1.8V VCCQ
- JEDEC JESD84-B51 Table 200 requires host-side pullups (R_DAT,
10K-100K) on all data lines to prevent bus floating
Fixes: a0b8da04153e ("arm64: dts: ti: k3-am62*: Move eMMC pinmux to top level board file")
[0] https://www.ti.com/lit/zip/SPRR471
Signed-off-by: Judith Mendez <jm@ti.com>
Reviewed-by: Moteen Shah <m-shah@ti.com>
---
arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts b/arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts
index 3e2d8f6695351..8a556fbbe08b7 100644
--- a/arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts
+++ b/arch/arm64/boot/dts/ti/k3-am62-lp-sk.dts
@@ -88,13 +88,13 @@ main_mmc0_pins_default: main-mmc0-default-pins {
AM62X_IOPAD(0x220, PIN_INPUT, 0) /* (V3) MMC0_CMD */
AM62X_IOPAD(0x218, PIN_INPUT, 0) /* (Y1) MMC0_CLK */
AM62X_IOPAD(0x214, PIN_INPUT, 0) /* (V2) MMC0_DAT0 */
- AM62X_IOPAD(0x210, PIN_INPUT, 0) /* (V1) MMC0_DAT1 */
- AM62X_IOPAD(0x20c, PIN_INPUT, 0) /* (W2) MMC0_DAT2 */
- AM62X_IOPAD(0x208, PIN_INPUT, 0) /* (W1) MMC0_DAT3 */
- AM62X_IOPAD(0x204, PIN_INPUT, 0) /* (Y2) MMC0_DAT4 */
- AM62X_IOPAD(0x200, PIN_INPUT, 0) /* (W3) MMC0_DAT5 */
- AM62X_IOPAD(0x1fc, PIN_INPUT, 0) /* (W4) MMC0_DAT6 */
- AM62X_IOPAD(0x1f8, PIN_INPUT, 0) /* (V4) MMC0_DAT7 */
+ AM62X_IOPAD(0x210, PIN_INPUT_PULLUP, 0) /* (V1) MMC0_DAT1 */
+ AM62X_IOPAD(0x20c, PIN_INPUT_PULLUP, 0) /* (W2) MMC0_DAT2 */
+ AM62X_IOPAD(0x208, PIN_INPUT_PULLUP, 0) /* (W1) MMC0_DAT3 */
+ AM62X_IOPAD(0x204, PIN_INPUT_PULLUP, 0) /* (Y2) MMC0_DAT4 */
+ AM62X_IOPAD(0x200, PIN_INPUT_PULLUP, 0) /* (W3) MMC0_DAT5 */
+ AM62X_IOPAD(0x1fc, PIN_INPUT_PULLUP, 0) /* (W4) MMC0_DAT6 */
+ AM62X_IOPAD(0x1f8, PIN_INPUT_PULLUP, 0) /* (V4) MMC0_DAT7 */
>;
};
--
2.52.0
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH v2 0/3] Fix MMC pin pull configurations
2026-02-23 23:37 [PATCH v2 0/3] Fix MMC pin pull configurations Judith Mendez
` (2 preceding siblings ...)
2026-02-23 23:37 ` [PATCH v2 3/3] arm64: dts: ti: k3-am62-lp-sk: Enable internal pulls for MMC0 " Judith Mendez
@ 2026-03-19 8:02 ` Francesco Dolcini
2026-03-23 15:43 ` Judith Mendez
2026-03-27 4:56 ` Vignesh Raghavendra
4 siblings, 1 reply; 7+ messages in thread
From: Francesco Dolcini @ 2026-03-19 8:02 UTC (permalink / raw)
To: Judith Mendez
Cc: Nishanth Menon, Vignesh Raghavendra, Tero Kristo, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, linux-arm-kernel, devicetree,
linux-kernel, Moteen Shah, Andrew Davis
Hello Judith,
On Mon, Feb 23, 2026 at 05:37:28PM -0600, Judith Mendez wrote:
> This series corrects MMC pin pull-up/pull-down configurations across
> TI AM62L EVM, AM62P SK, & AM62 LP SK boards to properly match their
> hardware design.
On AM62P the first mmc controller has no pinctrl, how is the situation
on this specific interface?
Francesco
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2 0/3] Fix MMC pin pull configurations
2026-03-19 8:02 ` [PATCH v2 0/3] Fix MMC pin pull configurations Francesco Dolcini
@ 2026-03-23 15:43 ` Judith Mendez
0 siblings, 0 replies; 7+ messages in thread
From: Judith Mendez @ 2026-03-23 15:43 UTC (permalink / raw)
To: Francesco Dolcini
Cc: Nishanth Menon, Vignesh Raghavendra, Tero Kristo, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, linux-arm-kernel, devicetree,
linux-kernel, Moteen Shah, Andrew Davis
Hi Francesco,
On 3/19/26 3:02 AM, Francesco Dolcini wrote:
> Hello Judith,
>
> On Mon, Feb 23, 2026 at 05:37:28PM -0600, Judith Mendez wrote:
>> This series corrects MMC pin pull-up/pull-down configurations across
>> TI AM62L EVM, AM62P SK, & AM62 LP SK boards to properly match their
>> hardware design.
>
> On AM62P the first mmc controller has no pinctrl, how is the situation
> on this specific interface?
For AM62P, MM0 interface is a hardphy. We do not need pinmux nodes
for hardphys since there is nothing to configure, pins have one
purpose, and it cannot be changed.
~ Judith
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2 0/3] Fix MMC pin pull configurations
2026-02-23 23:37 [PATCH v2 0/3] Fix MMC pin pull configurations Judith Mendez
` (3 preceding siblings ...)
2026-03-19 8:02 ` [PATCH v2 0/3] Fix MMC pin pull configurations Francesco Dolcini
@ 2026-03-27 4:56 ` Vignesh Raghavendra
4 siblings, 0 replies; 7+ messages in thread
From: Vignesh Raghavendra @ 2026-03-27 4:56 UTC (permalink / raw)
To: Nishanth Menon, Judith Mendez
Cc: Vignesh Raghavendra, Tero Kristo, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, linux-arm-kernel, devicetree,
linux-kernel, Moteen Shah, Andrew Davis
Hi Judith Mendez,
On Mon, 23 Feb 2026 17:37:28 -0600, Judith Mendez wrote:
> This series corrects MMC pin pull-up/pull-down configurations across
> TI AM62L EVM, AM62P SK, & AM62 LP SK boards to properly match their
> hardware design.
>
> Most boards have external pull-ups on MMC pins, but DT configuration
> was also enabling internal pulls. Having both internal and external
> pulls active causes several issues:
> - Unnecessary power consumption due to stronger pull resistance
> - Floating pins violating SPEC recommendations
>
> [...]
I have applied the following to branch ti-k3-dts-next on [1].
Thank you!
[1/3] arm64: dts: ti: k3-am62p5-sk: Disable MMC1 internal pulls on data pins
commit: 6d4441be969bea89bb9702781f5dfb3a8f2a02a4
[2/3] arm64: dts: ti: k3-am62l-evm: Disable MMC1 internal pulls on data pins
commit: 02532ba56362907b6aca3e8289c4a9247ef83325
[3/3] arm64: dts: ti: k3-am62-lp-sk: Enable internal pulls for MMC0 data pins
commit: ee2a9d9c9e6c9643fb7e45febcaedfbc038e483a
All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent up the chain during
the next merge window (or sooner if it is a relevant bug fix), however if
problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.
If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying
to this mail.
[1] https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux.git
--
Vignesh
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2026-03-27 4:57 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-23 23:37 [PATCH v2 0/3] Fix MMC pin pull configurations Judith Mendez
2026-02-23 23:37 ` [PATCH v2 1/3] arm64: dts: ti: k3-am62p5-sk: Disable MMC1 internal pulls on data pins Judith Mendez
2026-02-23 23:37 ` [PATCH v2 2/3] arm64: dts: ti: k3-am62l-evm: " Judith Mendez
2026-02-23 23:37 ` [PATCH v2 3/3] arm64: dts: ti: k3-am62-lp-sk: Enable internal pulls for MMC0 " Judith Mendez
2026-03-19 8:02 ` [PATCH v2 0/3] Fix MMC pin pull configurations Francesco Dolcini
2026-03-23 15:43 ` Judith Mendez
2026-03-27 4:56 ` Vignesh Raghavendra
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox