你好
我的系統是DM385,kernel是2.6.37.我遇到了SD card沒有辦法掛載的問題.
ls /dev 並沒有 mmcblk0 或 mmcblk0p1的device.是因為driver沒有掛上去嗎?我該怎麼去debug呢?謝謝!!
Chris Meng:
你好,
请问你你们自己的硬件么?如果是,请先确认一下你的硬件使用的MMC接口是否和软件驱动匹配?硬件连接是否正确?
Byron Tien:
回复 Chris Meng:
你好,
是我們自己的硬件,而我們接口也是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
Chris Meng:
回复 Byron Tien:
你好,
请问pinmux有做相应的配置么?
你是否有参考过下面链接的信息?
processors.wiki.ti.com/…/TI81xx_PSP_Porting_Guide
Byron Tien:
回复 Chris Meng:
你好,
以下是我的配置
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嗎?謝謝!!
Chris Meng:
回复 Byron Tien:
你好,
请问你的意思是你有两个硬件,一个硬件上的mmc0接口连接micro SD卡是可以的。另外一个硬件上也是使用mmc0,但接sd就检测不到?
还是同一个硬件,你如果软件配置不同,sd无法识别?我理解micro sd和sd在硬件上的连接是类似的,请问你两个配置有什么区别?
Byron Tien:
回复 Chris Meng:
你好
一个硬件上的mmc0接口连接micro SD卡是可以的。另外一个硬件上也是使用mmc0,但接sd就检测不到.
軟件配置同一個,放在兩個硬件卻不同狀況.
Chris Meng:
回复 Byron Tien:
你好,
无法连接sd卡的硬件上如果把sd卡换成mciro sd+卡套,能否正常识别?如果不可以,请排查硬件相关线路,电源。
Byron Tien:
回复 Chris Meng:
你好,
1.
我們已經換過了,一樣是無法辨別
但奇怪的是
我們設計用jump的方式可以將軟件從SD卡燒進NAND flash
所以當插入jump時系統可以讀取SD卡並將軟件燒進NAND flash裡,但jump拔掉後,一般開機卻無法讀取SD卡
所以應該是介面是有通的2.
我再更正一下,兩個硬件,MMC0是接wifi interface,MMC1是接SD卡,
接micro SD的那個硬件,有wifi interface/MMC0及SD interface/MMC1mmc1: 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不一樣,是否系統判斷上有問題??
Chris Meng:
回复 Byron Tien:
你好,
如果支持sd启动,说明sd相关硬件是正确的。请你看看两个硬件的kenerl相关配置和sd驱动相关代码是否一样?
Byron Tien:
回复 Chris Meng:
你好
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 */};