]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
mmc: core: SPI mode remove cmd7
authorRex Chen <rex.chen_1@nxp.com>
Mon, 28 Jul 2025 08:22:29 +0000 (17:22 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 19 Oct 2025 14:21:47 +0000 (16:21 +0200)
commit fec40f44afdabcbc4a7748e4278f30737b54bb1a upstream.

SPI mode doesn't support cmd7, so remove it in mmc_sdio_alive() and
confirm if sdio is active by checking CCCR register value is available
or not.

Signed-off-by: Rex Chen <rex.chen_1@nxp.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20250728082230.1037917-2-rex.chen_1@nxp.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/mmc/core/sdio.c

index a0cac8c87ef2f93a5ea07c6fda54191a41b38189..cbc9ca0dd56e3b96334ae66eefa586ba02e557ee 100644 (file)
@@ -929,7 +929,11 @@ static void mmc_sdio_remove(struct mmc_host *host)
  */
 static int mmc_sdio_alive(struct mmc_host *host)
 {
-       return mmc_select_card(host->card);
+       if (!mmc_host_is_spi(host))
+               return mmc_select_card(host->card);
+       else
+               return mmc_io_rw_direct(host->card, 0, 0, SDIO_CCCR_CCCR, 0,
+                                       NULL);
 }
 
 /*