SDHCI trap with register dump dropping SDIO clock

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

SDHCI trap with register dump dropping SDIO clock

4,412 次查看
vikramramanna
Contributor I

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

0 项奖励
27 回复数

493 次查看
Rita_Wang
NXP TechSupport
NXP TechSupport

Hi Ramesh,

Could you provide the full log and the kernel patch of modifying SDIO clock to 12MHz? We can help test on our board.

Have a nice day

Best Regards

Rita

0 项奖励

493 次查看
ramesh_r
Contributor I

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

0 项奖励

489 次查看
Rita_Wang
NXP TechSupport
NXP TechSupport

Are you using i.MX 8M Mini Evaluation Kit or imx8mnevk board?

0 项奖励

493 次查看
Rita_Wang
NXP TechSupport
NXP TechSupport

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

0 项奖励

493 次查看
Rita_Wang
NXP TechSupport
NXP TechSupport

OK

0 项奖励

493 次查看
Rita_Wang
NXP TechSupport
NXP TechSupport

I have not used the iMX8MM dropping SDIO clock to 12MHz, for your question I will do further confirm it with our expert team , when I get feedback I will send to you as soon as possible.

0 项奖励

493 次查看
Rita_Wang
NXP TechSupport
NXP TechSupport

Are you use the reference board or you design board yourself for i.MX8MM?

0 项奖励