petalinux2021.1 手动打包BOOT.BIN

在我们单独调试u-boot或者fsbl或者R5程序时只需要编译生成elf后打包生成BOOT.bin,那么打包生成BOOT.bin的方式除了petalinux-package还可以参照Vitis流程使用bootgen工具,该工具在source了Vitis环境变量后就可以使用了。

使用bootgen主要就是要bif格式的配置文件

1.petalinux工程在使用petalinux-build编译过后,再执行一下petalinux-package生成BOOT.BIN,就可以在images/linux目录下找到bootgen.bif文件

$cat bootgen.bif

the_ROM_image:

{

[bootloader] /work/project/images/linux/zynq_fsbl.elf

/work/project/project-spec/hw-description/zynq7000_dma.bit

/work/project/images/linux/u-boot.elf

[load=0x00100000] /work/project/images/linux/system.dtb

}

如果需要调试u-boot我们只需要编译生成我们的u-boot.elf然后修改对应的路径使用bootgen就可以生成BOOT.BIN

$source ~/tools/Xilinx/Vitis/2022.2/settings64.sh

$bootgen -image bootgen.bif -arch zynq -o BOOT.bin -w on

如果是mpsoc,需要调试R5程序可以参考以下bif文件

 /work/mpsoc/project

the_ROM_image:

{

[bootloader, destination_cpu=a53-0]  /work/mpsoc/project/images/linux/zynqmp_fsbl.elf

[pmufw_image]  /work/mpsoc/project/images/linux/pmufw.elf

[destination_device=pl] / /work/mpsoc/project/project-spec/hw-description/system.bit

[destination_cpu=a53-0, exception_level=el-3, trustzone] / /work/mpsoc/project/images/linux/bl31.elf

[destination_cpu = r5-0]R5_test.elf

[destination_cpu=a53-0, exception_level=el-2]  /work/mpsoc/project/images/linux/u-boot-dtb.elf

}

注意:原来使用用的uboot.elf和system.dtb最好能替换成images/linux/u-boot-dtb.elf

使用命令打包BOOT.BIN

$bootgen -image bootgen.bif -arch zynqmp -o BOOT.bin -w on

你可能感兴趣的:(Zynq,UltraScale+,java,spring,boot,linux)