树莓派3B使用u-boot启动linux内核
树莓派3B使用u-boot启动linux内核
准备交叉编译环境
平台: Ubuntu18.04
sudo apt install swig
编译u-boot
编译linux kernel
编译boot.scr
1. zImage格式
# boot.cmd
fatload mmc 0:1 ${kernel_addr_r} kernel7.img
fatload mmc 0:1 ${fdt_addr_r} bcm2710-rpi-3-b.dtb
setenv bootargs console=serial0,115200 console=tty1 root=/dev/mmcblk0p2 rw rootfstype=ext4 rootwait
bootz ${kernel_addr_r} - ${fdt_addr_r}
mkimage -C none -A arm -T script -d boot.cmd boot.scr
2. uImage格式
# boot.cmd
fatload mmc 0:1 ${kernel_addr_r} uImage
fatload mmc 0:1 ${fdt_addr_r} bcm2710-rpi-3-b.dtb
setenv bootargs console=serial0,115200 console=tty1 root=/dev/mmcblk0p2 rw rootfstype=ext4 rootwait
bootm ${kernel_addr_r} - ${fdt_addr_r}
mkimage -C none -A arm -T script -d boot.cmd boot.scr
mkimage -A arm -O Linux -T kernel -C none -a 0x0080000 -e 0x0080000 -d kernel7.img uImage