打印
[i.MX]

iMx53使用sd启动uboot后,无法读取sd卡信息

[复制链接]
2439|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
amolinzhu|  楼主 | 2015-11-27 15:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
MX53-SMD U-Boot > mmcinfo
CMD_SEND:0
                ARG                      0x00000000
                FLAG                     0
                MMC_RSP_NONE
CMD_SEND:8
                ARG                      0x000001AA
                FLAG                     0
imx_esdhc.c TIMEOUT!
                MMC_RSP_R1,5,6,7         0x00000000
CMD_SEND:55
                ARG                      0x00000000
                FLAG                     0
imx_esdhc.c TIMEOUT!
                MMC_RSP_R1,5,6,7         0x00000001
mmc_send_cmd MMC_RSP_R1 return error: -19
CMD_SEND:0
                ARG                      0x00000000
                FLAG                     0
                MMC_RSP_NONE
CMD_SEND:1
                ARG                      0x00000000
                FLAG                     0
imx_esdhc.c TIMEOUT!
                MMC_RSP_R3,4             0xD0D0D0D0
Card did not respond to voltage select!
Device: FSL_ESDHC
Manufacturer ID: 0
OEM: 0
Name: Tran Speed: 0
Rd Block Len: 0
MMC version 0.0
High Capacity: No
Capacity: 0 Bytes
Bus Width: 1-bit
Current Partition for boot: Not bootable

使用自研的板子,而板上另外的mmc则能够成功调用mmcinfo读取信息。
求解答!!!!

相关帖子

沙发
amolinzhu|  楼主 | 2015-11-27 16:45 | 只看该作者
补充一下,DDR配置与官方推荐的一致

使用特权

评论回复
板凳
FSL_TICS_Rita| | 2015-11-27 18:09 | 只看该作者
请问你SD卡上写了什么呢?除了uboot以外?

使用特权

评论回复
地板
amolinzhu|  楼主 | 2015-11-30 08:29 | 只看该作者
FSL_TICS_Rita 发表于 2015-11-27 18:09
请问你SD卡上写了什么呢?除了uboot以外?

使用的MFGtool工具为Mfgtools-Rel-11.12.00_ER,除了uboot,还有内核以及文件系统

使用特权

评论回复
5
amolinzhu|  楼主 | 2015-11-30 11:44 | 只看该作者
CMD_SEND:8
                ARG                      0x000001AA
                FLAG                     0
                MMC_RSP_R1,5,6,7         0x00000000
CMD8的返回值为0x00000000,表示不为SD2.0

但是我使用的明明就是协议为2.0的SD卡,在其他开发板上能够读取出来

使用特权

评论回复
6
FSL_TICS_Rita| | 2015-11-30 17:12 | 只看该作者
amolinzhu 发表于 2015-11-30 08:29
使用的MFGtool工具为Mfgtools-Rel-11.12.00_ER,除了uboot,还有内核以及文件系统

你这里写的images是你自己编译的还是官网提供的demo?关于mfgtool建议你使用最新版本的工具。

使用特权

评论回复
7
小猫爱吃鱼| | 2015-11-30 18:02 | 只看该作者
初始化成功了吗?

使用特权

评论回复
8
amolinzhu|  楼主 | 2015-12-1 09:37 | 只看该作者

执行fsl_esdhc_initialize()函数的时候是成功了,注册了MMC设备,我不清楚这样算不算初始化成功了,但是的确没有在uboot启动时打印"MMC init failed"。不过在这之后mmc命令中需要调用mmc_init()函数的地方,就会出现CMD8返回0x00000000的错误:dizzy:

使用特权

评论回复
9
amolinzhu|  楼主 | 2015-12-1 10:11 | 只看该作者
问题解决了!
原来是硬件工程师画板子的时候,将SD卡走线选择为SD2通道,因此需要修改board/freescale/mx53_smd/mx53_smd.c里面的
struct fsl_esdhc_cfg esdhc_cfg[2] = {
        {MMC_SDHC1_BASE_ADDR, 1, 1},
        {MMC_SDHC3_BASE_ADDR, 1, 1},
};
修改后为:
struct fsl_esdhc_cfg esdhc_cfg[2] = {
        {MMC_SDHC2_BASE_ADDR, 1, 1},
        {MMC_SDHC3_BASE_ADDR, 1, 1},
};

被这个问题折腾了一个多星期,竟然是因为跟硬件工程师沟通不够所导致,希望大家不要踏入这个坑!!

使用特权

评论回复
10
小猫爱吃鱼| | 2015-12-5 20:19 | 只看该作者
amolinzhu 发表于 2015-12-1 10:11
问题解决了!
原来是硬件工程师画板子的时候,将SD卡走线选择为SD2通道,因此需要修改board/freescale/mx53 ...

一字之差折腾了一个星期,引以为戒

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

12

帖子

0

粉丝