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.

SD Card detected issue

Other Parts Discussed in Thread: DM385

你好

我的系統是DM385,kernel是2.6.37.我遇到了SD card沒有辦法掛載的問題.

ls /dev 並沒有 mmcblk0 或 mmcblk0p1的device.是因為driver沒有掛上去嗎?我該怎麼去debug呢?謝謝!!

  • 你好,

    请问你你们自己的硬件么?如果是,请先确认一下你的硬件使用的MMC接口是否和软件驱动匹配?硬件连接是否正确?
  • 你好,
    是我們自己的硬件,而我們接口也是MMC0.以下是kernel message.看起來好像沒有認到SD卡硬件,請問是否有其他疏漏的地方呢?

    omap-iommu omap-iommu.0: ducati registered
    omap-iommu omap-iommu.1: sys registered
    mice: PS/2 mouse device common for all mice
    mmci-omap-hs mmci-omap-hs.0: mmc_fclk: enabled
    mmci-omap-hs mmci-omap-hs.0: context was not lost
    mmc0: clock 0Hz busmode 1 powermode 0 cs 0 Vdd 0 width 0 timing 0
    mmci-omap-hs mmci-omap-hs.0: mmc_fclk: disabled
    mmci-omap-hs mmci-omap-hs.1: mmc_fclk: enabled
    mmci-omap-hs mmci-omap-hs.1: context was not lost
    mmc1: clock 0Hz busmode 1 powermode 0 cs 0 Vdd 0 width 0 timing 0
    mmci-omap-hs mmci-omap-hs.1: mmc_fclk: disabled
    mmci-omap-hs mmci-omap-hs.0: mmc_fclk: enabled
    mmci-omap-hs mmci-omap-hs.0: context was not lost
    mmc0: mmc_rescan: trying to init card at 400000 Hz
    mmc0: clock 0Hz busmode 1 powermode 1 cs 0 Vdd 7 width 0 timing 0
    mmc0: clock 400000Hz busmode 1 powermode 2 cs 0 Vdd 7 width 0 timing 0
    mmc0: starting CMD52 arg 00000c00 flags 00000195
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD52, argument 0x00000c00
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD52): -110: 00000000 00000000 00000000 00000000
    mmc0: starting CMD52 arg 80000c08 flags 00000195
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD52, argument 0x80000c08
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD52): -110: 00000000 00000000 00000000 00000000
    mmc0: clock 400000Hz busmode 1 powermode 2 cs 1 Vdd 7 width 0 timing 0
    mmc0: starting CMD0 arg 00000000 flags 000000c0
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD0, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 1
    mmc0: req done (CMD0): 0: 00000000 00000000 00000000 00000000
    mmc0: clock 400000Hz busmode 1 powermode 2 cs 0 Vdd 7 width 0 timing 0
    mmc0: starting CMD8 arg 000000aa flags 000002f5
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD8, argument 0x000000aa
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD8): -110: 00000000 00000000 00000000 00000000
    mmc0: starting CMD5 arg 00000000 flags 000002e1
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD5, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req failed (CMD5): -110, retrying...
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD5, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req failed (CMD5): -110, retrying...
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD5, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req failed (CMD5): -110, retrying...
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD5, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD5): -110: 00000000 00000000 00000000 00000000
    mmc0: starting CMD55 arg 00000000 flags 000000f5
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD55, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD55): -110: 00000000 00000000 00000000 00000000
    mmc0: starting CMD55 arg 00000000 flags 000000f5
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD55, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD55): -110: 00000000 00000000 00000000 00000000
    mmc0: starting CMD55 arg 00000000 flags 000000f5
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD55, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD55): -110: 00000000 00000000 00000000 00000000
    mmc0: starting CMD55 arg 00000000 flags 000000f5
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD55, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD55): -110: 00000000 00000000 00000000 00000000
    mmc0: starting CMD1 arg 00000000 flags 000000e1
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD1, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD1): -110: 00000000 00000000 00000000 00000000
    mmc0: clock 0Hz busmode 1 powermode 0 cs 0 Vdd 0 width 0 timing 0
    mmci-omap-hs mmci-omap-hs.0: mmc_fclk: disabled
    mmci-omap-hs mmci-omap-hs.0: mmc_fclk: enabled
    mmci-omap-hs mmci-omap-hs.0: context was not lost
    mmci-omap-hs mmci-omap-hs.1: mmc_fclk: enabled
    mmci-omap-hs mmci-omap-hs.1: context was not lost
    mmci-omap-hs mmci-omap-hs.1: mmc_fclk: disabled
    mmci-omap-hs mmci-omap-hs.0: mmc_fclk: disabled
  • 你好,

    请问pinmux有做相应的配置么?

    你是否有参考过下面链接的信息?
    processors.wiki.ti.com/.../TI81xx_PSP_Porting_Guide
  • 你好,

    以下是我的配置

    static struct omap2_hsmmc_info mmc[] = {
    {
    #ifdef CONFIG_WL12XX_PLATFORM_DATA
    //Custom Usage
    /* WLAN_EN is GP0[28] */
    #define GPIO_WLAN_EN ((0 * 32) + 28)
    /* WLAN_IRQ is GP2[2] */
    #define GPIO_WLAN_IRQ ((2 * 32) + 2)
    .mmc = 1,
    .caps = MMC_CAP_4_BIT_DATA | MMC_CAP_POWER_OFF_CARD,
    .gpio_cd = -EINVAL,
    .gpio_wp = -EINVAL,
    .ocr_mask = MMC_VDD_165_195,//ipnc
    .nonremovable = true,
    },
    {
    .mmc = 2,
    #else
    .mmc = 1,
    #endif
    .caps = MMC_CAP_4_BIT_DATA,// | MMC_CAP_NEEDS_POLL,
    .gpio_cd = -EINVAL, /* Dedicated pins for CD and WP */
    .gpio_wp = -EINVAL,
    .ocr_mask = MMC_VDD_33_34,
    },
    {} /* Terminator */
    };

    我有兩個硬件.一個是配SD卡,另一張是配micro SD卡的.MMC0的線路是相同的.

    上面pinmux配置在配micro SD卡的硬件可以成功work,可以順利抓到SD卡.但在配一般SD卡的硬件卻無法順利抓取,所以不知道這兩個有什麼差異?請問有建議再到哪裡debug嗎?謝謝!!

  • 你好,

    请问你的意思是你有两个硬件,一个硬件上的mmc0接口连接micro SD卡是可以的。另外一个硬件上也是使用mmc0,但接sd就检测不到?

    还是同一个硬件,你如果软件配置不同,sd无法识别?我理解micro sd和sd在硬件上的连接是类似的,请问你两个配置有什么区别?
  • 你好

    一个硬件上的mmc0接口连接micro SD卡是可以的。另外一个硬件上也是使用mmc0,但接sd就检测不到.
    軟件配置同一個,放在兩個硬件卻不同狀況.
  • 你好,

    无法连接sd卡的硬件上如果把sd卡换成mciro sd+卡套,能否正常识别?如果不可以,请排查硬件相关线路,电源。
  • 你好,

    1.
    我們已經換過了,一樣是無法辨別
    但奇怪的是
    我們設計用jump的方式可以將軟件從SD卡燒進NAND flash
    所以當插入jump時系統可以讀取SD卡並將軟件燒進NAND flash裡,但jump拔掉後,一般開機卻無法讀取SD卡
    所以應該是介面是有通的

    2.
    我再更正一下,兩個硬件,MMC0是接wifi interface,MMC1是接SD卡,
    接micro SD的那個硬件,有wifi interface/MMC0及SD interface/MMC1

    mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 65536 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmc1: starting CMD18 arg 0000345f flags 000000b5
    mmc1: blksz 512 blocks 128 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x0000345f
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 65536 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmc1: starting CMD18 arg 000034df flags 000000b5
    mmc1: blksz 512 blocks 128 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x000034df
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 65536 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmc1: starting CMD18 arg 0000355f flags 000000b5
    mmc1: blksz 512 blocks 128 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x0000355f
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 65536 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmc1: starting CMD18 arg 000035df flags 000000b5
    mmc1: blksz 512 blocks 128 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x000035df
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 65536 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmc1: starting CMD18 arg 0000365f flags 000000b5
    mmc1: blksz 512 blocks 128 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x0000365f
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 65536 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmc1: starting CMD18 arg 000036df flags 000000b5
    mmc1: blksz 512 blocks 128 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x000036df
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 65536 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmc1: starting CMD18 arg 0000375f flags 000000b5
    mmc1: blksz 512 blocks 128 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x0000375f
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 65536 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmc1: starting CMD18 arg 000037df flags 000000b5
    mmc1: blksz 512 blocks 128 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x000037df
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 65536 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmc1: starting CMD18 arg 0000385f flags 000000b5
    mmc1: blksz 512 blocks 128 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x0000385f
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 65536 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmc1: starting CMD18 arg 000038df flags 000000b5
    mmc1: blksz 512 blocks 128 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x000038df
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 65536 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmc1: starting CMD18 arg 0000395f flags 000000b5
    mmc1: blksz 512 blocks 128 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x0000395f
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 65536 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmc1: starting CMD18 arg 000039df flags 000000b5
    mmc1: blksz 512 blocks 128 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x000039df
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 65536 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmc1: starting CMD18 arg 00003a5f flags 000000b5
    mmc1: blksz 512 blocks 128 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x00003a5f
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 65536 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmc1: starting CMD18 arg 00003adf flags 000000b5
    mmc1: blksz 512 blocks 128 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x00003adf
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 65536 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmc1: starting CMD18 arg 00003b5f flags 000000b5
    mmc1: blksz 512 blocks 123 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x00003b5f
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 62976 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmci-omap-hs mmci-omap-hs.1: mmc_fclk: disabled
    mmci-omap-hs mmci-omap-hs.1: mmc_fclk: enabled
    mmci-omap-hs mmci-omap-hs.1: context was not lost
    mmc1: starting CMD18 arg 00000080 flags 000000b5
    mmc1: blksz 512 blocks 128 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x00000080
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 65536 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmc1: starting CMD18 arg 00000000 flags 000000b5
    mmc1: blksz 512 blocks 128 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 65536 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmci-omap-hs mmci-omap-hs.1: mmc_fclk: disabled
    mmci-omap-hs mmci-omap-hs.1: mmc_fclk: enabled
    mmci-omap-hs mmci-omap-hs.1: context was not lost
    mmc1: starting CMD18 arg 00000041 flags 000000b5
    mmc1: blksz 512 blocks 6 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x00000041
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 3072 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000
    mmc1: starting CMD18 arg 00000047 flags 000000b5
    mmc1: blksz 512 blocks 24 flags 00000200 tsac 100 ms nsac 0
    mmc1: CMD12 arg 00000000 flags 0000049d
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD18, argument 0x00000047
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 1
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 2
    mmci-omap-hs mmci-omap-hs.1: mmc1: CMD12, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.1: IRQ Status is 3
    mmc1: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    mmc1: 12288 bytes transferred: 0
    mmc1: (CMD12): 0: 00000b00 00000000 00000000 00000000

    =======================================================================
    而接一般SD的那個硬件,沒有接wifi僅有接SD interface/MMC1.

    mmc0: clock 400000Hz busmode 1 powermode 2 cs 0 Vdd 7 width 0 timing 0
    mmc0: starting CMD52 arg 00000c00 flags 00000195
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD52, argument 0x00000c00
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD52): -110: 00000000 00000000 00000000 00000000
    mmc0: starting CMD52 arg 80000c08 flags 00000195
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD52, argument 0x80000c08
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD52): -110: 00000000 00000000 00000000 00000000
    mmc0: clock 400000Hz busmode 1 powermode 2 cs 1 Vdd 7 width 0 timing 0
    mmc0: starting CMD0 arg 00000000 flags 000000c0
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD0, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 1
    mmc0: req done (CMD0): 0: 00000000 00000000 00000000 00000000
    mmc0: clock 400000Hz busmode 1 powermode 2 cs 0 Vdd 7 width 0 timing 0
    mmc0: starting CMD8 arg 000000aa flags 000002f5
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD8, argument 0x000000aa
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD8): -110: 00000000 00000000 00000000 00000000
    mmc0: starting CMD5 arg 00000000 flags 000002e1
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD5, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req failed (CMD5): -110, retrying...
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD5, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req failed (CMD5): -110, retrying...
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD5, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req failed (CMD5): -110, retrying...
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD5, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD5): -110: 00000000 00000000 00000000 00000000
    mmc0: starting CMD55 arg 00000000 flags 000000f5
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD55, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD55): -110: 00000000 00000000 00000000 00000000
    mmc0: starting CMD55 arg 00000000 flags 000000f5
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD55, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD55): -110: 00000000 00000000 00000000 00000000
    mmc0: starting CMD55 arg 00000000 flags 000000f5
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD55, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD55): -110: 00000000 00000000 00000000 00000000
    mmc0: starting CMD55 arg 00000000 flags 000000f5
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD55, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD55): -110: 00000000 00000000 00000000 00000000
    mmc0: starting CMD1 arg 00000000 flags 000000e1
    mmci-omap-hs mmci-omap-hs.0: mmc0: CMD1, argument 0x00000000
    mmci-omap-hs mmci-omap-hs.0: IRQ Status is 18000
    mmci-omap-hs mmci-omap-hs.0: MMC IRQ 0x18000 : ERRI CTO
    mmc0: req done (CMD1): -110: 00000000 00000000 00000000 00000000
    mmc0: clock 0Hz busmode 1 powermode 0 cs 0 Vdd 0 width 0 timing 0
    mmci-omap-hs mmci-omap-hs.0: mmc_fclk: disabled
    mmci-omap-hs mmci-omap-hs.0: mmc_fclk: enabled
    mmci-omap-hs mmci-omap-hs.0: context was not lost
    mmci-omap-hs mmci-omap-hs.1: mmc_fclk: enabled
    mmci-omap-hs mmci-omap-hs.1: context was not lost
    mmci-omap-hs mmci-omap-hs.1: mmc_fclk: disabled
    mmci-omap-hs mmci-omap-hs.0: mmc_fclk: disabled

    前面識別MMC不一樣,是否系統判斷上有問題??
  • 你好,

    如果支持sd启动,说明sd相关硬件是正确的。请你看看两个硬件的kenerl相关配置和sd驱动相关代码是否一样?
  • 你好

    1.從上面附的kernel message,我發現detect micro sd的板子系統抓的是MMC1,而detect sd的板子是抓MMC0,但我們設計上MMC0是給wifi,MMC1是給SD card.是否在系統偵測上有問題了?

    2.另外,偵測micro sd的板子是有wifi的,而偵測sd的板子是暫時沒有wifi,是將來預留給wifi用的.是否因為這樣的問題而導致出現問題一?

    3.我的pinmux是如下列的,

    static struct omap2_hsmmc_info mmc[] = {
    {
    //Custom Usage
    /* WLAN_EN is GP0[28] */
    #define GPIO_WLAN_EN ((0 * 32) + 28)
    /* WLAN_IRQ is GP2[2] */
    #define GPIO_WLAN_IRQ ((2 * 32) + 2)
    .mmc = 1,
    .caps = MMC_CAP_4_BIT_DATA | MMC_CAP_POWER_OFF_CARD,
    .gpio_cd = -EINVAL,
    .gpio_wp = -EINVAL,
    .ocr_mask = MMC_VDD_165_195,//ipnc
    .nonremovable = true,
    },
    {
    .mmc = 2,
    .caps = MMC_CAP_4_BIT_DATA,// | MMC_CAP_NEEDS_POLL,
    .gpio_cd = -EINVAL, /* Dedicated pins for CD and WP */
    .gpio_wp = -EINVAL,
    .ocr_mask = MMC_VDD_33_34,
    },
    {} /* Terminator */
    };

  • 你好,

    想跟你確認一下,請問你在前一篇所說的kernel相關配置與SD驅動相關代碼,大概是指的是哪裡?哪些檔案或哪些目錄?謝謝 !!

  • 你好,

    1.

    原來的sd card detect pin是在GP1[6], 而我在mux.h裡將它修改後,系統就認不到這個sd card了.看起來是有作用的

    /* -80 */    BIT(0), BIT(0), BIT(0), BIT(1),   ============>/* -80 */      BIT(0), BIT(0), BIT(0), BIT(0)

    但我想將detect pin改到GP3[20],而在mux.h裡應該是PINCNTL228,

    /* -228 */ BIT(0), BIT(0), BIT(0), BIT(0),  ============> /* -228 */ BIT(0), BIT(0), BIT(0), BIT(1),

    測試的結果是沒有用的,是否我還缺了修改哪裡呢?

    2.

    請問sd card detect pin GP1[6]可以修改成其他的GPIO pin腳嗎?

  • 你好,

    不能改,对于SD1, G28的功能是card detect。

    Table 3-39. SD1Terminal Functions

    SIGNAL NAME [1]      DESCRIPTION [2]                  TYPE [3]       AAR BALL [4]

    SD1_SDCD                SD1 Card Detect input         I                      G28

  • 你好,

    請問有無機會將這根腳位直接拉pulldown,讓系統不看這根pin腳而偵測到SD card的存在呢?

  • 你好,

    只有G28这个引脚可以配置为SD1的card detect功能。请在数据手册里面搜索一下相关信息。
x 出现错误。请重试或与管理员联系。