summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRex Chen <rex.chen_1@nxp.com>2025-07-28 11:22:29 +0300
committerUlf Hansson <ulf.hansson@linaro.org>2025-08-19 15:33:37 +0300
commitfec40f44afdabcbc4a7748e4278f30737b54bb1a (patch)
treee54c16218895385453dde4db26afb6ff3491d238
parent0caebd1658bbb3796bec4e3449876742d29701ab (diff)
downloadlinux-fec40f44afdabcbc4a7748e4278f30737b54bb1a.tar.xz
mmc: core: SPI mode remove cmd7
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>
-rw-r--r--drivers/mmc/core/sdio.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/mmc/core/sdio.c b/drivers/mmc/core/sdio.c
index 0f753367aec1..83085e76486a 100644
--- a/drivers/mmc/core/sdio.c
+++ b/drivers/mmc/core/sdio.c
@@ -945,7 +945,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);
}
/*