drivers/mmc/host/sdhci.c | 8 +++++--- drivers/mmc/host/sdhci.h | 2 ++ drivers/mmc/host/sdhci_am654.c | 14 +++++++++++++- 3 files changed, 20 insertions(+), 4 deletions(-)
There are MMC boot failures seen with V1P8_SIGNAL_ENA on Kingston eMMC and
Microcenter/Patriot SD cards on am62* Sitara K3 boards due to the HS200
initialization sequence involving V1P8_SIGNAL_ENA. Since V1P8_SIGNAL_ENA
is optional for eMMC and only affects timing for host controllers using
ti,am62-sdhci compatible so far, add a new platform data structure for am62
compatible and append the new SDHCI_QUIRK2_SUPPRESS_V1P8_ENA quirk.
This fix was previously merged in the kernel, but was reverted due
to the "heuristics for enabling the quirk"[0]. This issue is adressed
in this patch series by adding the quirk based on compatible string,
ensuring the quirk is never applied to devices with internal LDOs, then
V1P8_SIGNAL_ENA also has a voltage component tied to it.
Changes since v3 RESEND:
- apply the quirk based on compatible string instead of based on bus
width or DT property
- rephrase commit descriptions and cover-letter descriptions based on
new implementation.
Link to v3 RESEND:
https://lore.kernel.org/linux-mmc/8678d284-db12-451a-b789-2b75f9932f9f@ti.com
Link to v2:
https://lore.kernel.org/linux-mmc/20250417182652.3521104-1-jm@ti.com/
Link to v1:
https://lore.kernel.org/linux-mmc/20250407222702.2199047-1-jm@ti.com/
[0] https://lore.kernel.org/linux-mmc/20250127-am654-mmc-regression-v2-1-9bb39fb12810@solid-run.com/
Judith Mendez (2):
mmc: sdhci: Add a quirk for suppressing V1P8_SIGNAL_ENA
mmc: sdhci_am654: Add SDHCI_QUIRK2_SUPPRESS_V1P8_ENA quirk to am62
compatible
drivers/mmc/host/sdhci.c | 8 +++++---
drivers/mmc/host/sdhci.h | 2 ++
drivers/mmc/host/sdhci_am654.c | 14 +++++++++++++-
3 files changed, 20 insertions(+), 4 deletions(-)
base-commit: 1be38f81251f6d276713c259ecf4414f82f22c29
--
2.49.0
Hi all, On 4/24/2025 1:00 PM, Judith Mendez wrote: > There are MMC boot failures seen with V1P8_SIGNAL_ENA on Kingston eMMC and > Microcenter/Patriot SD cards on am62* Sitara K3 boards due to the HS200 > initialization sequence involving V1P8_SIGNAL_ENA. Since V1P8_SIGNAL_ENA > is optional for eMMC and only affects timing for host controllers using > ti,am62-sdhci compatible so far, add a new platform data structure for am62 > compatible and append the new SDHCI_QUIRK2_SUPPRESS_V1P8_ENA quirk. > > This fix was previously merged in the kernel, but was reverted due > to the "heuristics for enabling the quirk"[0]. This issue is adressed > in this patch series by adding the quirk based on compatible string, > ensuring the quirk is never applied to devices with internal LDOs, then > V1P8_SIGNAL_ENA also has a voltage component tied to it. Gentle ping on this, are there any comments or any issues with this type of implementation? Thanks, ~ Judith
On Mon, 5 May 2025 at 23:24, Mendez, Judith <jm@ti.com> wrote: > > Hi all, > > On 4/24/2025 1:00 PM, Judith Mendez wrote: > > There are MMC boot failures seen with V1P8_SIGNAL_ENA on Kingston eMMC and > > Microcenter/Patriot SD cards on am62* Sitara K3 boards due to the HS200 > > initialization sequence involving V1P8_SIGNAL_ENA. Since V1P8_SIGNAL_ENA > > is optional for eMMC and only affects timing for host controllers using > > ti,am62-sdhci compatible so far, add a new platform data structure for am62 > > compatible and append the new SDHCI_QUIRK2_SUPPRESS_V1P8_ENA quirk. > > > > This fix was previously merged in the kernel, but was reverted due > > to the "heuristics for enabling the quirk"[0]. This issue is adressed > > in this patch series by adding the quirk based on compatible string, > > ensuring the quirk is never applied to devices with internal LDOs, then > > V1P8_SIGNAL_ENA also has a voltage component tied to it. > > Gentle ping on this, are there any comments or any issues with this > type of implementation? It looks reasonable to me. Although, in general I think we are trying to avoid adding new sdhci quirks, perhaps there are good reasons to do it in this case. I am deferring to Adrian to make the decision. Kind regards Uffe
On 07/05/2025 13:14, Ulf Hansson wrote: > On Mon, 5 May 2025 at 23:24, Mendez, Judith <jm@ti.com> wrote: >> >> Hi all, >> >> On 4/24/2025 1:00 PM, Judith Mendez wrote: >>> There are MMC boot failures seen with V1P8_SIGNAL_ENA on Kingston eMMC and >>> Microcenter/Patriot SD cards on am62* Sitara K3 boards due to the HS200 >>> initialization sequence involving V1P8_SIGNAL_ENA. Since V1P8_SIGNAL_ENA >>> is optional for eMMC and only affects timing for host controllers using >>> ti,am62-sdhci compatible so far, add a new platform data structure for am62 >>> compatible and append the new SDHCI_QUIRK2_SUPPRESS_V1P8_ENA quirk. >>> >>> This fix was previously merged in the kernel, but was reverted due >>> to the "heuristics for enabling the quirk"[0]. This issue is adressed >>> in this patch series by adding the quirk based on compatible string, >>> ensuring the quirk is never applied to devices with internal LDOs, then >>> V1P8_SIGNAL_ENA also has a voltage component tied to it. >> >> Gentle ping on this, are there any comments or any issues with this >> type of implementation? > > It looks reasonable to me. Although, in general I think we are trying > to avoid adding new sdhci quirks, perhaps there are good reasons to do > it in this case. Yes, we want to avoid new quirks in sdhci.c. Judith, can you do it like in V3? i.e. in sdhci_am654.c with SDHCI_AM654_QUIRK_SUPPRESS_V1P8_ENA and sdhci_am654_start_signal_voltage_switch()
© 2016 - 2026 Red Hat, Inc.