问一个问题,关于cortex-a8启动方式的。 我这里有一块硬件工程师做的板子,我现在跳成如图的启动方式(MMC1>MMC0>UART0>USB0)
在这种方式下为什么我测MMC1的CLK没有信号 反而串口一直收到CCCCCCCC呢?
另外,我在TI的AM3359的ICE开发板上也跳成这种方式,按照SDK提供的create-sdcard.sh制作了SD卡
(内容包括MLO-am335x-evm、u-boot-am335x-evm.img、uImage-am335x-evm.bin)
在MMC1测得CLK,但是并没有正常启动。 现象是测得CLK数据之后一会LED开始轮流点亮。
按照文档的启动顺序流程,开发板不应该去读SPI FLASH 为何LED程序照样在执行?
Yaoming Qin:
1. 目前发布的Linux不支持ice板子,所以,你的sd卡起不来。
2. 当mmc1 上没有启image时,就查找下一个起动方式,所以,先确定下你的检测clock的方式是否正确,是漏过了。
lei chen2:
回复 Yaoming Qin:
你好,
1.目前发布的Linux不支持ice板子,所以,你的sd卡起不来。
有没有这方面的资料呀?还有为什么MMC1>MMC0>UART0>USB0 这种启动方式那个LED灯程序能够跑起来?
按照文档不是应该停在dead loop中吗?
2.当mmc1 上没有启image时,就查找下一个起动方式,所以,先确定下你的检测clock的方式是否正确,是漏过了。
这个我首先插入按之前的方法制作的SD卡,然后用示波器从未上电就开始检测MMC1的CLK引脚(上电后管脚被拉高),直至上电到串口检测到CCCC的过程中一直未检测到跳变信号,
我这种检测方式是否有问题?
lei chen2:
回复 Yaoming Qin:
对于AM3359 ICE的开发板,我将制作好的SD卡插入还是用(MMC1>MMC0>UART0>USB0)的启动顺序。
能够测得400K的MMC1 CLK信号,但是未正常加载,如果我将板子上的U19(SPI FLASH)给去掉,发现就测不到MMC1的CLK信号了。
难道SPI FLASH对MMC1的启动顺序有影响?
Yaoming Qin:
回复 lei chen2:
1. 我们的Linux sdk只是只对AM3358的evm, sk evm和beaglebone开发的,所以不支持ice板子
2. 对于ice板子能起来, 这个到没有具体用linux sdk验证过。
3. 你的检测方式是对的。
Yaoming Qin:
回复 lei chen2:
spi flash和mmc卡启动我没发现什么关联, 这点我也很奇怪,不知道你是怎么操作的。
你的mmc1卡起不来,也很奇怪,如果串口能输出cccc,那么基本说明芯片已经起来了,然后根据sysboot选择对应的boot方式。
你也可以换几种boot方式,试试看。
lei chen2:
回复 Yaoming Qin:
我对ICE的板子做了如下操作。
1.先跳线 boot[4:0] 成11100 对应boot device list 是 MMC1>MMC0>UART0>USB0
上电发现led灯程序照样再跑 ,这点很奇怪,然后测MMC1有CLK信号。
2.在上面的基础上把U19 spi flash 直接从板子上拿掉。
上电发现led灯程序没有了,这个正常,但是测MMC1就没有CLK信号了。 不知道这个又什么影响。
TI中文支持网