Hi all,
i am working inside a ColdFire mcf54415 esdhc driver in linux (the sdhci layer is common), so the issue may be visible on chips with same/similar controller too as imx and others.
After i mount /dev/mmcblk0p1, i can always read properly, but when i try a write on the card as "cat test > testfile", and in short i get
[ 576.590000] c: 18 arg 000fabd8 [ 576.590000] IRQ status 0x00000001 [ 576.590000] sdhci_irq() exiting 1 /var/tmp/sd # [ 586.720000] mmc0: Timeout waiting for hardware interrupt. [ 586.720000] mmc0: sdhci: ============ SDHCI REGISTER DUMP =========== [ 586.720000] mmc0: sdhci: Sys addr: 0x47420010 | Version: 0x00000000 [ 586.720000] mmc0: sdhci: Blk size: 0x00000012 | Blk cnt: 0x00000000 [ 586.720000] mmc0: sdhci: Argument: 0x000fabd8 | Xfr mode: 0x123a0033 [ 586.720000] mmc0: sdhci: Present: 0xf089020a | Host ctl: 0x00000022 [ 586.720000] mmc0: sdhci: Power: 0x00000000 | Blk gap: 0x00000000 [ 586.720000] mmc0: sdhci: Wake-up: 0x00000000 | Clock: 0x00000001 [ 586.720000] mmc0: sdhci: Timeout: 0x0000000e | Int stat: 0x00000000 [ 586.720000] mmc0: sdhci: Int enab: 0x005f000b | Sig enab: 0x007f008b [ 586.720000] mmc0: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000012 [ 586.720000] mmc0: sdhci: Caps: 0x07d30000 | Caps_1: 0x08100810 [ 586.720000] mmc0: sdhci: Cmd: 0x00000012 | Max curr: 0x00000000 [ 586.720000] mmc0: sdhci: Resp[0]: 0x00000900 | Resp[1]: 0x00000000 [ 586.720000] mmc0: sdhci: Resp[2]: 0x00000000 | Resp[3]: 0x00000000 [ 586.720000] mmc0: sdhci: Host ctl2: 0x00000000 [ 586.720000] mmc0: sdhci: ============================================
While in some other previous cases, cmd18 completes even if with a DEBE bit set.
[ 569.250000] c: 18 arg 000fb508 [ 569.260000] IRQ status 0x00000001 [ 569.260000] IRQ status 0x00400000 (DEBE bit) [ 569.260000] c: 12 arg 00000000 [ 569.260000] sdhci_irq() exiting 1 (related to cmd 18)
Cmd17 instead, seems to always work properly.
I have probably to find myself where my upper layer driver fails, but I am also wondering, what could be the reason of a CMD18 timeout ? May i have some hw design issue ?
thanks
Regards,
Angelo
Solved! Go to Solution.
Hi,
From the latest MCF54418 chip errata, there with below record:
Please refer and apply Workaround with CMD18 command.
Wish it helps.
Have a great day,
Mike
-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!
- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------
Hi,
From the latest MCF54418 chip errata, there with below record:
Please refer and apply Workaround with CMD18 command.
Wish it helps.
Have a great day,
Mike
-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!
- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------
Hi Mike,
speciaL thanks, it was very helpful solved all.
Best regards.
Angelo