This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM62L: AM62L MMC communication problem

Part Number: AM62L

Hello,

We have that AM62L had a problem on sdhci1 interface giving errors "Got data interrupt 0x00200000 even though no data operation was in progress" in UHS mode. The strange part other porcessors we use (AM62x, J722S)  on the exactly the same board work without any issue.

  • Hello,

    Could you share the boot logs showing the issue? Please also clarify the SDK version you are using.

  • Here you go:

    [ 1.664220] sdhci-am654 fa00000.mmc: Got CD GPIO
    [ 1.669544] mmc1: CQHCI version 5.10
    [ 1.669595] input: dvk_keys as /devices/platform/dvk_keys/input/input1
    [ 1.681126] clk: Disabling unused clocks
    [ 1.690160] PM: genpd: Disabling unused power domains
    [ 1.695511] ALSA device list:
    [ 1.698482] No soundcards found.
    [ 1.736198] mmc1: SDHCI controller on fa00000.mmc [fa00000.mmc] using ADMA 64-bit
    [ 1.744065] Waiting for root device /dev/mmcblk1p5...
    [ 2.081236] mmc1: Got data interrupt 0x00200000 even though no data operation was in progress.
    [ 2.089882] mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========
    [ 2.096319] mmc1: sdhci: Sys addr: 0x00000000 | Version: 0x00001004
    [ 2.102757] mmc1: sdhci: Blk size: 0x00007040 | Blk cnt: 0x00000001
    [ 2.109195] mmc1: sdhci: Argument: 0x00000000 | Trn mode: 0x00000013
    [ 2.115632] mmc1: sdhci: Present: 0x01ff0000 | Host ctl: 0x000000df
    [ 2.122070] mmc1: sdhci: Power: 0x0000000f | Blk gap: 0x00000080
    [ 2.128506] mmc1: sdhci: Wake-up: 0x00000000 | Clock: 0x00000007
    [ 2.134943] mmc1: sdhci: Timeout: 0x00000000 | Int stat: 0x00000000
    [ 2.141380] mmc1: sdhci: Int enab: 0x03ff000b | Sig enab: 0x03ff000b
    [ 2.147818] mmc1: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000000
    [ 2.154255] mmc1: sdhci: Caps: 0x3de8c801 | Caps_1: 0x18002407
    [ 2.160692] mmc1: sdhci: Cmd: 0x0000133a | Max curr: 0x00000000
    [ 2.167129] mmc1: sdhci: Resp[0]: 0x00000000 | Resp[1]: 0x01dbd37f
    [ 2.173566] mmc1: sdhci: Resp[2]: 0x325b5900 | Resp[3]: 0x00400e00
    [ 2.180003] mmc1: sdhci: Host ctl2: 0x0000000b
    [ 2.184442] mmc1: sdhci: ADMA Err: 0x00000000 | ADMA Ptr: 0x0000000083e0a200
    [ 2.191573] mmc1: sdhci: ============================================
    [ 2.198417] mmc1: Got data interrupt 0x00200000 even though no data operation was in progress.
    [ 2.207036] mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========
    [ 2.213473] mmc1: sdhci: Sys addr: 0x00000000 | Version: 0x00001004
    [ 2.219910] mmc1: sdhci: Blk size: 0x00007040 | Blk cnt: 0x00000001
    [ 2.226347] mmc1: sdhci: Argument: 0x00000000 | Trn mode: 0x00000013
    [ 2.232784] mmc1: sdhci: Present: 0x01ff0000 | Host ctl: 0x000000df
    [ 2.239220] mmc1: sdhci: Power: 0x0000000f | Blk gap: 0x00000080
    [ 2.245657] mmc1: sdhci: Wake-up: 0x00000000 | Clock: 0x00000007
    [ 2.252092] mmc1: sdhci: Timeout: 0x00000000 | Int stat: 0x00000000
    [ 2.258529] mmc1: sdhci: Int enab: 0x03ff000b | Sig enab: 0x03ff000b
    [ 2.264966] mmc1: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000000
    [ 2.271403] mmc1: sdhci: Caps: 0x3de8c801 | Caps_1: 0x18002407
    [ 2.277841] mmc1: sdhci: Cmd: 0x0000133a | Max curr: 0x00000000
    [ 2.284278] mmc1: sdhci: Resp[0]: 0x00000000 | Resp[1]: 0x01dbd37f
    [ 2.290715] mmc1: sdhci: Resp[2]: 0x325b5900 | Resp[3]: 0x00400e00
    [ 2.297152] mmc1: sdhci: Host ctl2: 0x0000000b
    [ 2.301592] mmc1: sdhci: ADMA Err: 0x00000000 | ADMA Ptr: 0x0000000083e0a200
    [ 2.308723] mmc1: sdhci: ============================================
    [ 2.316031] mmc1: Got data interrupt 0x00200000 even though no data operation was in progress.
    [ 2.324644] mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========
    [ 2.331080] mmc1: sdhci: Sys addr: 0x00000000 | Version: 0x00001004
    [ 2.337518] mmc1: sdhci: Blk size: 0x00007040 | Blk cnt: 0x00000001
    [ 2.343955] mmc1: sdhci: Argument: 0x00000000 | Trn mode: 0x00000013
    [ 2.350392] mmc1: sdhci: Present: 0x01ff0000 | Host ctl: 0x000000df
    [ 2.356829] mmc1: sdhci: Power: 0x0000000f | Blk gap: 0x00000080
    [ 2.363265] mmc1: sdhci: Wake-up: 0x00000000 | Clock: 0x00000007
    [ 2.369701] mmc1: sdhci: Timeout: 0x00000000 | Int stat: 0x00000000
    [ 2.376138] mmc1: sdhci: Int enab: 0x03ff000b | Sig enab: 0x03ff000b
    [ 2.382575] mmc1: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000000
    [ 2.389012] mmc1: sdhci: Caps: 0x3de8c801 | Caps_1: 0x18002407
    [ 2.395449] mmc1: sdhci: Cmd: 0x0000133a | Max curr: 0x00000000
    [ 2.401886] mmc1: sdhci: Resp[0]: 0x00000000 | Resp[1]: 0x01dbd37f
    [ 2.408322] mmc1: sdhci: Resp[2]: 0x325b5900 | Resp[3]: 0x00400e00
    [ 2.414759] mmc1: sdhci: Host ctl2: 0x0000000b
    [ 2.419200] mmc1: sdhci: ADMA Err: 0x00000000 | ADMA Ptr: 0x0000000083e0a200
    [ 2.426331] mmc1: sdhci: ============================================
    [ 2.433740] mmc1: new ultra high speed SDR104 SDXC card at address aaaa
    [ 2.441327] mmcblk1: mmc1:aaaa SD64G 59.5 GiB
    [ 2.448789] mmc1: Got data interrupt 0x00200000 even though no data operation was in progress.
    [ 2.457440] mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========
    [ 2.463878] mmc1: sdhci: Sys addr: 0x00000008 | Version: 0x00001004
    [ 2.470314] mmc1: sdhci: Blk size: 0x00007040 | Blk cnt: 0x00000001
    [ 2.476751] mmc1: sdhci: Argument: 0x00000000 | Trn mode: 0x00000013
    [ 2.483188] mmc1: sdhci: Present: 0x01ff0000 | Host ctl: 0x000000df
    [ 2.489625] mmc1: sdhci: Power: 0x0000000f | Blk gap: 0x00000080
    [ 2.496062] mmc1: sdhci: Wake-up: 0x00000000 | Clock: 0x00000007
    [ 2.502499] mmc1: sdhci: Timeout: 0x00000000 | Int stat: 0x00000000
    [ 2.508936] mmc1: sdhci: Int enab: 0x03ff000b | Sig enab: 0x03ff000b
    [ 2.515374] mmc1: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000000
    [ 2.521811] mmc1: sdhci: Caps: 0x3de8c801 | Caps_1: 0x18002407
    [ 2.528248] mmc1: sdhci: Cmd: 0x0000133a | Max curr: 0x00000000
    [ 2.534685] mmc1: sdhci: Resp[0]: 0x00000000 | Resp[1]: 0x01dbd37f
    [ 2.541123] mmc1: sdhci: Resp[2]: 0x325b5900 | Resp[3]: 0x00000900
    [ 2.547561] mmc1: sdhci: Host ctl2: 0x0000000b
    [ 2.552002] mmc1: sdhci: ADMA Err: 0x00000000 | ADMA Ptr: 0x0000000083e0a200
    [ 2.559133] mmc1: sdhci: ============================================

  • Loading SD clock with the scope seems to be making it work.

    Is that is why you added unusual 10K pull-down (R109) on SD Clock line on the demo board ?

    Is it some sort of undocumented errata?

  • Loading SD clock with the scope seems to be making it work.

    It sounds like the issue originates from the board's schematics.

    Looping in our hardware expert for the clarifications.

  • Hello Boris Krasnovskiy

    Thank you.

    Can you please share the schematics for a quick check.

    Help me understand if you are seeing the issue on a specific board or on multiple boards?

    Regards,

    Sreenivasa

  • That is more complicated. But for this issue you do not need schematics, CPU connected to SD card slot streight through. Route is long, but that is it. I tried multiple assemblies, they behave the same. 

  • Hello Boris Krasnovskiy

    Thank you.

    We have FAQs and design guidelines specific to SD card interface in the hardware design considerations and the schematic design checklist.

    Could you please verify if the guidelines are followed.

    Hardware Design Considerations
    www.ti.com/.../SPRUJC9
    Schematic Design and Review Checklist for AM62Lx processor family
    www.ti.com/.../SPRADO8
    DDR Board Design and Layout Guidelines
    www.ti.com/.../sprad06

    Regards,

    Sreenivasa

  • Hello Boris Krasnovskiy

    But for this issue you do not need schematics, CPU connected to SD card slot streight through. Route is long, but that is it. I tried multiple assemblies, they behave the same. 

    For the SD card do you use the internal LDO

    Is the 3.3uF cap connected to the CAP_VDDSHV_MMC pin

    Do you have the power switch connected to the control SD card power

    Are the SD card data and CMD pulls connected to the switched supply

    Is the SDCD pullup connected to a fixed supply

    Regards,

    Sreenivasa