您的位置:首页 > 其它

Galileo新版SD卡系统无法启动问题研究 [精华]

2014-08-08 13:41 288 查看
最近群里有很多人反映SD卡系统无法启动,具体情况是卡在这个地方不动了。

引用鄂-师大-hx的启动画面截图:



我一直在用旧版的系统,多次格式化后再复制文件后顺利启动,并没有遇到启动过程中卡死的情况。于是推测这是新版系统才有的问题,遂下载最新版系统试验之……



不出所料,也遇到了一样的问题。那么问题来了,为什么启动时会卡在这里而不是别的什么地方?

从系统死机的最后两行信息可知,出现问题的原因应该是与地址有关。那么我们来看系统的启动脚本是怎么写的。



打开这个文件,果然发现了出现问题的原因:



红框里的文字,原本是填地址参数的地方变成了这么一串字符。找到原因接下来就好办了。将这串字符替换成0x8010f000,保存写入SD卡,之后在我的Galileo上就会启动成功了。

至于为什么要填0x8010f000这个地址本人也不太清楚。这个地址是从旧版系统上直接复制过来的。等下研究看看这个地址的含义。顺便……如果有谁比我先知道它的含义的话会得到积分奖励呐~


贴纸更新:

GalileoSD卡系统新版默认提供了两种启动方式,SPI和SD卡启动。但是直接将下载来的固件复制进SD卡里是无法启动成功的。需要修改启动文件才可以。

想偷懒解决问题的话下载这个文件-> http://pan.baidu.com/s/1nt5arln



原始配置文件的内容是错误的,像这样:

default 1
timeout 1

color white/blue white/cyan

title Clanton SVP kernel-SPI initrd-SPI IMR-On IO-APIC/HPET NoEMU
kernel --spi root=/dev/ram0 console=ttyS1,115200n8 earlycon=uart8250,mmio32,$EARLY_CON_ADDR_REPLACE,115200n8 vmalloc=384M reboot=efi,warm apic=debug rw
initrd --spi

title Clanton SVP kernel-MassStorage initrd-MassStorage image-full IMR-On IO-APIC/HPET NoEMU debug
root (hd0,0)
kernel /bzImage root=/dev/ram0 console=ttyS1,115200n8 earlycon=uart8250,mmio32,$EARLY_CON_ADDR_REPLACE,115200n8 vmalloc=384M reboot=efi,warm apic=debug
rw LABEL=boot debugshell=5 rootimage=image-full-galileo-clanton.ext3
initrd /core-image-minimal-initramfs-clanton.cpio.gz

其中SD卡启动部分修改方式请看上文,SPI启动配置只要修改成与板载系统的配置文件一样就可以了,像这样:

title Clanton SVP kernel-SPI initrd-SPI IMR-On IO-APIC/HPET NoEMU
kernel --spi root=/dev/ram0 console=ttyS1,115200n8 earlycon=uart8250,mmio32,0x8010f000,115200n8 reboot=efi,warm apic=debug rw
initrd --spi

至此启动配置文件修改完成,两种启动方式全部可用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐