固件打包
1)固件可以一个一个烧写:
sudo sunxi-fel -p spiflash-write 0 ../u-boot/u-boot-sunxi-with-spl.bin
sudo sunxi-fel -p spiflash-write 0x0100000 ../linux/arch/arm/boot/dts/suniv-f1c100s-licheepi-nano.dtb
sudo sunxi-fel -p spiflash-write 0x0110000 ../linux/arch/arm/boot/zImage
sudo sunxi-fel -p spiflash-write 0x0510000 ../rootfs.jffs2
2)打包脚本:
#! /bin/bash3)3
rm -rf ./output
mkdir ./output
rm -rf ./rootfs
mkdir ./rootfs
dd if=/dev/zero of=f1c100s_Nano_16M_flash.bin bs=1M count=16 &&\ dd if=../u-boot/u-boot-sunxi-with-spl.bin of=f1c100s_Nano_16M_flash.bin bs=1K conv=notrunc &&\ dd if=../linux/arch/arm/boot/dts/suniv-f1c100s-licheepi-nano.dtb of=f1c100s_Nano_16M_flash.bin bs=1K seek=1024 conv=notrunc &&\ dd if=../linux/arch/arm/boot/zImage of=f1c100s_Nano_16M_flash.bin bs=1K seek=1088 conv=notrunc &&\
tar -xf ../buildroot-2017.08/output/images/rootfs.tar -C ./rootfs &&\
mkfs.jffs2 -s 0x100 -e 0x10000 --pad=0xAF0000 -d rootfs/ -o rootfs.img &&\
dd if=rootfs.img of=f1c100s_Nano_16M_flash.bin bs=1K seek=5184 conv=notrunc
mv flashimg.bin ./output
rm -rf rootfs.jffs2
3)运行打包脚本
sudo sh BuildMyImage.sh
若提示错误: BuildMyImage.sh: 6: BuildMyImage.sh: mkfs.jffs2: not found 安装mtd-utils工具: sudo apt-get install mtd-utils 安装过程中,有可能出现超时情况,多尝试几遍或者更换源试试。
打包完成后,在当前目录,生成一个名为f1c100s_Nano_16M_flash.bin的文件。
4)写固件程序到spi-flash:
sudo sunxi-fel -p spiflash-write 0 f1c100s_Nano_16M_flash.bin