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.

OMaP5432 - not detecting mmc card

I gave the mmc in my device tree and booting through usbboot. Linux log doesnt show the mmc card which is present in my board. And only emmc device and its partitions are listed in /dev/. Can someone help?

Thanks,

Gowthami

  • Hi Gowthami,

    Can you post your device tree entry and make sure the follwing configuration in 

    drivers/mmc/host/Kconfig is applied:
    
    
    tristate "TI OMAP High Speed Multimedia Card Interface support"
     config MMC_OMAP_HS
    - depends on SOC_OMAP2430 || ARCH_OMAP3 || ARCH_OMAP4
    + depends on SOC_OMAP2430 || ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5

    Regards,
    Boyko
  • Hi Bokyo,

    mmc@4809c000 {
                            compatible = "ti,omap4-hsmmc";
                            reg = <0x4809c000 0x400>;
                            interrupts = <0x0 0x53 0x4>;
                            ti,hwmods = "mmc1";
                            ti,dual-volt;
                            ti,needs-special-reset;
                            dmas = <0x14 0x3d 0x14 0x3e>;
                            dma-names = "tx", "rx";
                            vmmc-supply = <0x1b>;
                            bus-width = <0x4>;
                    };

    And yes, MMC_OMAP_HS is enabled.


    Thanks,

    Gowthami



  • Hi Gowthami,

    What kernel are you using?

    Regards,

    Boyko

  • Hi Bokyo,

    I am using linux 3.8.13. The one which is coming with ti-glsdk_omap5-uevm_6_01_00_01.

    Thanks,

    Gowthami

  • Did you check your pinmux settings? Perhaps something as simple as that can be missed sometimes.

    Also take a look at this patch http://www.spinics.net/lists/linux-mmc/msg21035.html, in case the reader is working but it is misbehaving. Observe DMESG with small card ( <<4G) when  reboot.

    Regards,

    Boyko

  • Hi Bokyo,

    Fails in mmc_send_app_op_cond. Getting the error code as -110(timeout).I am booting through emmc. I checked with the reference manual. It seems other dependent blocks are also enabled. What could be the other possibilities?

    [    1.976562] mmc0: mmc_rescan_try_freq: trying to init card at 400000 Hz
    [    1.976562] mmc0: starting CMD52 arg 00000c00 flags 00000195
    [    1.976562] mmc0: req done (CMD52): -110: 00000000 00000000 00000000 00000000
    [    1.976562] mmc0: starting CMD52 arg 80000c08 flags 00000195
    [    1.976562] mmc1: clock 0Hz busmode 2 powermode 1 cs 0 Vdd 18 width 0 timing 0
    [    1.976562] mmc0: req done (CMD52): -110: 00000000 00000000 00000000 00000000
    [    1.976562] mmc0: clock 400000Hz busmode 2 powermode 2 cs 1 Vdd 18 width 0 timing 0
    [    1.976562] mmc0: starting CMD0 arg 00000000 flags 000000c0
    [    1.976562] mmc0: req done (CMD0): 0: 00000000 00000000 00000000 00000000
    [    1.976562] mmc0: clock 400000Hz busmode 2 powermode 2 cs 0 Vdd 18 width 0 timing 0
    [    1.976562] mmc0: starting CMD8 arg 000001aa flags 000002f5
    [    1.976562] mmc0: req done (CMD8): -110: 00000000 00000000 00000000 00000000
    [    1.976562] mmc0: starting CMD5 arg 00000000 flags 000002e1
    [    1.976562] mmc0: req failed (CMD5): -110, retrying...
    [    1.976562] mmc0: req failed (CMD5): -110, retrying...
    [    1.976562] mmc0: req failed (CMD5): -110, retrying...
    [    1.976562] mmc0: req done (CMD5): -110: 00000000 00000000 00000000 00000000
    [    1.976562] mmc0: starting CMD55 arg 00000000 flags 000000f5
    [    1.976562] mmc0: req done (CMD55): -110: 00000000 00000000 00000000 00000000
    [    1.976562] mmc0: starting CMD55 arg 00000000 flags 000000f5
    [    1.976562] mmc0: req done (CMD55): -110: 00000000 00000000 00000000 00000000
    [    1.976562] mmc0: starting CMD55 arg 00000000 flags 000000f5
    [    1.976562] mmc0: req done (CMD55): -110: 00000000 00000000 00000000 00000000
    [    1.976562] mmc0: starting CMD55 arg 00000000 flags 000000f5
    [    1.976562] mmc0: req done (CMD55): -110: 00000000 00000000 00000000 00000000
    [    1.976562] mmc0: clock 400000Hz busmode 1 powermode 2 cs 0 Vdd 18 width 0 timing 0
    [    1.976562] mmc0: starting CMD1 arg 00000000 flags 000000e1
    [    1.976562] mmc0: req done (CMD1): -110: 00000000 00000000 00000000 00000000
    [    1.976562] mmc0: clock 0Hz busmode 1 powermode 0 cs 0 Vdd 0 width 0 timing 0

    Thanks,

    Gowthami

  • Hi Gowthami,

    The card could be unresponsive because of noise, have you tested your setup perhaps with other  board or power supply?

    Regards,

    Boyko

  • Hi Bokyo,

    Yes , the card is getting recognized when I tried with the same board but booted from u-boot.

    Thanks,

    Gowthami

  • Hi Bokyo,

    What are the other blocks that need to be active for getting the response from the card?

    Because, the same setup works when I boot from u-boot but I am not getting any response from the card when booted from emmc.

    Thanks,

    Gowthami