|
楼主 |
发表于 2016-5-25 15:19:50
来自手机
|
显示全部楼层
本帖最后由 cazureopi 于 2016-6-2 10:38 编辑
全志H3有一个特定的引导过程,引导加载程序中描述页面。
BootROM检测板子上的储存设备,检测到sd卡后,从内存卡上16扇区或8kb上的加载boot0.
然后boot0从内存卡32800扇区或者16400kb加载u-boot
boot0 uboot这些二进制文件有一个特定的头,其中包括一个神奇的字符串和一个校验和。必须正确的二进制通过前一个阶段的接受和执行
下面介绍在内存卡上安装的过程boot0和u-boot的过程
SD卡注意你必须留下足够的未使用空间(安装系统至少需要4GB)
注意 : boot0和uboot安装在内存卡8k-40960k上,所以第一个分区从40960开始,否则u-boot可能被文件系统覆盖使用!!!
烧写这些前建议用fdisk删除sd卡上的所有分区!!!
#清除sd
dd if=/dev/zero of=/dev/mmcblk0 bs=1k seek=8 count=40960
#写boot0
dd if=boot0_sdcard.fex of=/dev/mmcblk0 bs=1k seek=8
#写u-boot
dd if=u-boot.bin of=/dev/mmcblk0 bs=1k seek=16400
说明:
/dev/mmcblk0是sd卡的设备名
boot0_sdcard.fex是boot0二进制文件
u-boot.bin是uboot二进制文件
完成上面事情后,你的内存卡就可以引导启动系统了,但没有内核和文件系统
需要有一个vfat文件系统启动分区来存储您的内核和其他引导文件,和一个ext4文件系统的rootfs。
可以使用fdisk命令建立,但一定注意要从40960开始建立第一个分区,否则u-boot可能被文件系统覆盖使用!!!
|
|