按照按照 (https://rocketboards.org/foswiki/Documentation/EmbeddedLinuxBeginnerSGuide)制作了一个image, 然后按照 https://www.cnblogs.com/DoreenLiu/p/17903782.html 将相关文件都打包到一个.img文件里面去。
其实最开始研发给我的Makefile内容是这样(这个是RD 用于制作LXDE image的, 这个image 的uboot就可以放在raw 分区):
但是这样生成是image文件boot不起来, 中途会卡住。
为什么EmbeddedLinuxBeginnerSGuide的image中 uboot一定要放在fat32分区,不能跟preloader一起放在raw分区?
其实我们返回去查看生成u-boot.scr的
boot.script 文件可以看到内容如下:
echo -- Programming FPGA -- fatload mmc 0:1 $fpgadata soc_system.rbf; fpga load 0 $fpgadata $filesize; run bridge_enable_handoff; echo -- Setting Env Variables -- setenv fdtimage soc_system.dtb; setenv mmcroot /dev/mmcblk0p2; setenv mmcload 'mmc rescan;${mmcloadcmd} mmc 0:${mmcloadpart} ${loadaddr} ${bootimage};${mmcloadcmd} mmc 0:${mmcloadpart} ${fdtaddr} ${fdtimage};'; setenv mmcboot 'setenv bootargs console=ttyS0,115200 root=${mmcroot} rw rootwait; bootz ${loadaddr} - ${fdtaddr}'; run mmcload; run mmcboot;
标签:EmbeddedLinuxBeginnerSGuide,uboot,--,分区,preloader,setenv,image,mmc From: https://www.cnblogs.com/DoreenLiu/p/17911554.html