iMX8MM dropping SDIO clock to 12MHz causes the SDHCI crash
[ 641.123790] mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
[ 641.130232] mmc0: sdhci: Sys addr: 0x54968d04 | Version: 0x00000002
[ 641.136671] mmc0: sdhci: Blk size: 0x00000004 | Blk cnt: 0x00000001
[ 641.143110] mmc0: sdhci: Argument: 0x15804004 | Trn mode: 0x00000013
[ 641.149548] mmc0: sdhci: Present: 0x01d88a0a | Host ctl: 0x00000013
[ 641.155986] mmc0: sdhci: Power: 0x00000002 | Blk gap: 0x00000080
[ 641.162425] mmc0: sdhci: Wake-up: 0x00000008 | Clock: 0x0000028f
[ 641.168863] mmc0: sdhci: Timeout: 0x0000008f | Int stat: 0x00000000
[ 641.175301] mmc0: sdhci: Int enab: 0x107f100b | Sig enab: 0x107f100b
[ 641.181739] mmc0: sdhci: AC12 err: 0x00000000 | Slot int: 0x00000502
[ 641.188178] mmc0: sdhci: Caps: 0x07eb0000 | Caps_1: 0x8000b407
[ 641.194616] mmc0: sdhci: Cmd: 0x0000353a | Max curr: 0x00ffffff
[ 641.201054] mmc0: sdhci: Resp[0]: 0x00001000 | Resp[1]: 0x00000000
[ 641.207492] mmc0: sdhci: Resp[2]: 0x00000000 | Resp[3]: 0x00000000
[ 641.213930] mmc0: sdhci: Host ctl2: 0x00000088
[ 641.218372] mmc0: sdhci: ADMA Err: 0x00000000 | ADMA Ptr: 0x5608d208
[ 641.224809] mmc0: sdhci: ============================================
NXP team, can someone point to what could be the reason
Don't see any issue with iMX8MQ or iMX6/7
Hi Rita,
I will share a dmesg log soon. For reproducing this issue - you could use any standard SD MMC card on NXP imx8mnevk board running NXP's L5.4.3 BSP release. After the mmc host driver is up, you need to change the clock on mmc device to 12Mhz and you should see the issue right away. For example, I used the below commands to change the max frequency of the mmc clock.
==
echo 8 > /proc/sys/kernel/printk
# Dump the current clock frequency
cat /sys/kernel/debug/mmc0/ios
sleep 0.5
# Change to 12Mhz
echo 12000000 > /sys/kernel/debug/mmc0/clock
sleep 1
# Check if it is correctly set
cat /sys/kernel/debug/mmc0/ios
==
At this point, any moment you should see the above stack dump.
Regards
Ramesh
Hi Ramesh,
From dump log, driver are sending cmd53 to read multiple block and retrieve security protocol related information from device.
Is it mean if using L5.4.3/4.14.98-2.2.0 default BSP, drop the SDIO clock to 12MHz, then we can reproduce this issue on 8MM EVK? Then it will be easy to analyze.
Have a nice day
Rita