From: Adrian Hunter <adrian.hunter@intel.com>
To: Rosen Penev <rosenp@gmail.com>, <linux-mmc@vger.kernel.org>
Cc: "Ulf Hansson" <ulfh@kernel.org>,
"open list" <linux-kernel@vger.kernel.org>,
"Karel Balej" <balejk@matfyz.cz>,
"Duje Mihanović" <duje@dujemihanovic.xyz>
Subject: Re: [PATCH] mmc: sdhci-pxav3: disable clock inversion for SD HS cards
Date: Wed, 9 Sep 2026 10:15:19 +0300 [thread overview]
Message-ID: <a6daf796-752d-4ace-bdaa-8629a7bb47c9@intel.com> (raw)
In-Reply-To: <20260901003816.48460-1-rosenp@gmail.com>
On 01/09/2026 03:38, Rosen Penev wrote:
> The SDIO3 Configuration register branch of pxav3_set_uhs_signaling()
> only clears the clock-inversion and feedback-clock bits for
> MMC_TIMING_MMC_HS. As a result, MMC_TIMING_SD_HS (ordinary SD High
> Speed) falls through to the default case, which sets SDIO3_CONF_CLK_INV
> and leaves the feedback clock cleared.
>
> According to erratum FE-2946959, clock inversion is only needed for
> slow frequencies when the card hold-time requirement is high and is not
> required nor desirable for high-speed modes. SD High Speed runs at 50
> MHz, so the same timing argument that applies to MMC High Speed holds.
> Treat MMC_TIMING_SD_HS the same as MMC_TIMING_MMC_HS and clear the
> clock-inversion and feedback-clock bits for both.
>
> Assisted-by: opencode:big-pickle
> Signed-off-by: Rosen Penev <rosenp@gmail.com>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
> ---
> drivers/mmc/host/sdhci-pxav3.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/mmc/host/sdhci-pxav3.c b/drivers/mmc/host/sdhci-pxav3.c
> index db9dfa92cb57..9e6703e005e2 100644
> --- a/drivers/mmc/host/sdhci-pxav3.c
> +++ b/drivers/mmc/host/sdhci-pxav3.c
> @@ -284,7 +284,8 @@ static void pxav3_set_uhs_signaling(struct sdhci_host *host, unsigned int uhs)
> uhs == MMC_TIMING_UHS_DDR50) {
> reg_val &= ~SDIO3_CONF_CLK_INV;
> reg_val |= SDIO3_CONF_SD_FB_CLK;
> - } else if (uhs == MMC_TIMING_MMC_HS) {
> + } else if (uhs == MMC_TIMING_MMC_HS ||
> + uhs == MMC_TIMING_SD_HS) {
> reg_val &= ~SDIO3_CONF_CLK_INV;
> reg_val &= ~SDIO3_CONF_SD_FB_CLK;
> } else {
next prev parent reply other threads:[~2026-09-09 7:15 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-01 0:38 [PATCH] mmc: sdhci-pxav3: disable clock inversion for SD HS cards Rosen Penev
2026-09-09 7:15 ` Adrian Hunter [this message]
2026-09-11 15:40 ` Ulf Hansson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=a6daf796-752d-4ace-bdaa-8629a7bb47c9@intel.com \
--to=adrian.hunter@intel.com \
--cc=balejk@matfyz.cz \
--cc=duje@dujemihanovic.xyz \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mmc@vger.kernel.org \
--cc=rosenp@gmail.com \
--cc=ulfh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.