在线
在线
现在我把spl里面的mmc屏蔽了, spl运行之后 jlink还能用,
但是
speed 1000
loadbin f:\u-boot.bin, 0x43e00000
setpc 0x43e00000
g
u-boot.bin 写到 0x43e00000(标准版是0x42e00000, 我后来为了malloc 改了, 但是这个应该没影响),
然后发现串口无输出.
在线
死马做活马医,
为了模拟 u-boot 用jlink下载到 0x43e00000不执行的问题,
我修改了spl的代码, 在跳转前执行死循环,
然后用jlink命令执行setpc, g
串口仍然没有反应.
这个是spl自己的拷贝,我在中间加延时,进入jlink,把pc设置43e00000仍然不能启动。
理论上spl执行的跳转和我setpc 效果是一样的。
在线
感谢网友 【冰水寒】 帮忙
昨天下午,他帮我验证了一次,并且发了sunxi-spl和u-boot.bin固件给我,
经测试, 如果spl的 ResLen == 0 的时候执行 jlink loadbin u-boot.bin,setpc, g 就很正常。
但是 ResLen > 0之前执行就不行。
不论如何,都给解决了u-boot不能启动的问题带来一丝曙光!
在线
后来无意中发现, 如果多setpc, g 一次居然可以启动u-boot,
这个发现太意外了!
loadbin f:\sunxi-spl.bin,0
setpc 0
g
sleep 100
h
speed 6000
loadbin f:\u-boot.bin, 0x43e00000
setpc 0x43e00000
g
sleep 100
h
setpc 0x43e00000
g
在线
在线