4.32. Xilinx ZynqMP Ultrascale+¶
Barebox has support as a second stage boot loader for the Xilinx ZynqMP Ultrascale+.
4.32.1. Image creation¶
Currently, Barebox only supports booting as a second stage boot loader from an SD-card. It relies on the FSBL to initialize the base system including sdram setup and pin muxing.
The ZynqMP defconfig supports the ZCU104 reference board. Use it to build the Barebox image:
make ARCH=arm64 zynqmp_defconfig make ARCH=arm64
The resulting image
images/barebox-zynqmp-zcu104.img is not an image
that can directly be booted on the ZynqMP.
For a bootable BOOT.BIN image, you also need to build the FSBL and a ZynqMP TF-A. Prepare these separately using the respective instructions.
Use bootgen or
mkimage -T zynqmpbif from the U-boot tools to build the
final BOOT.BIN image that can be loaded by the ROM code. Check the
instructions for these tools how to prepare the BOOT.BIN image.
Create a FAT partition as the first partition of the SD card and copy the produced BOOT.BIN into this partition.
4.32.2. Booting Barebox¶
The FSBL loads the TF-A and Barebox, jumps to the TF-A, which will then return to Barebox. Afterwards, you can use Barebox as usual.