在datasheet和e2e论坛里面都有看到说OMAP-L138 V2.0版本的芯片可以支持SD2.0,也就是说可以支持>2G的卡,文档看了半天也没看明白!
如果支持的SDHC的话,请问寄存器设置和SD1.1有何不同?
我在自己的板子上试过小于2G的卡存取都是正常的,插上超过2G的看读写不正常。
有谁可以教我?
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.
我现在也碰到这个问题,2G以下的卡都OK的,2G以上的卡读写就会出现IOerror错误。大侠,能不能给指点指点,谢谢
mmcblk0: error -84 transferring data, sector 69120, nr 128, card status 0x900
end_request: I/O error, dev mmcblk0, sector 69204
Buffer I/O error on device mmcblk0, logical block 8650
lost page write due to I/O error on mmcblk0
end_request: I/O error, dev mmcblk0, sector 69208
Buffer I/O error on device mmcblk0, logical block 8651
lost page write due to I/O error on mmcblk0
end_request: I/O error, dev mmcblk0, sector 69216
Buffer I/O error on device mmcblk0, logical block 8652
lost page write due to I/O error on mmcblk0
end_request: I/O error, dev mmcblk0, sector 69224
Buffer I/O error on device mmcblk0, logical block 8653
lost page write due to I/O error on mmcblk0
end_request: I/O error, dev mmcblk0, sector 69232
Buffer I/O error on device mmcblk0, logical block 8654
lost page write due to I/O error on mmcblk0
end_request: I/O error, dev mmcblk0, sector 69240
Buffer I/O error on device mmcblk0, logical block 8655
lost page write due to I/O error on mmcblk0
freescale提供的解决方法见https://community.freescale.com/thread/277327
我的imx53的板子上是将linux-2.6.35.3\arch\arm\mach-mx5\mx53_loco.c中
.max_clk = 50000000,改成.max_clk = 40000000,即:
static struct mxc_mmc_platform_data mmc3_data = {
.ocr_mask = MMC_VDD_27_28 | MMC_VDD_28_29 | MMC_VDD_29_30
| MMC_VDD_31_32,
.caps = MMC_CAP_4_BIT_DATA,
//.caps = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA,
.min_clk = 400000,
//.max_clk = 50000000,
.max_clk = 40000000,
.card_inserted_state = 1,
.status = sdhc_get_card_det_status,
.wp_status = 0, /*don't have pin, disable protect*///sdhc_write_protect,
.clock_mmc = "esdhc_clk",
};