Generate MCS Image - Generate MCS Image - 2026.1 English - UG1144

PetaLinux Tools Documentation: Reference Guide (UG1144)

Document ID
UG1144
Release Date
2026-06-23
Version
2026.1 English

An MCS image for Zynq UltraScale+ MPSoC usually contains a First Stage Boot Loader Image (FSBL), FPGA bitstream, PMU firmware, TF-A, U-Boot, DTB, and Kernel Fit image (optional).

Execute the following command to generate the MCS image to boot U-Boot using build images:
petalinux-package boot --u-boot --format MCS

Execute the following command to generate the MCS image for booting to U-Boot using build images when programmable logic is included in the design:

petalinux-package boot --u-boot --fpga --format MCS
Note: Specifying --u-boot adds all the required images to boot up to U-Boot into boot.mcs file.
Execute the following command to generate the MCS image to boot up to U-Boot using prebuilt images:
petalinux-package boot --u-boot pre-built/linux/images/u-boot.elf --dtb pre-built/linux/images/system.dtb --pmufw pre-built/linux/images/pmufw.elf --fsbl pre-built/linux/images/zynqmp_fsbl.elf --atf pre-built/linux/images/bl31.elf  --format MCS

Execute the following command to generate the MCS image for booting to U-Boot using prebuilt images when programmable logic presents in design:

petalinux-package boot --fpga pre-built/linux/images/system.bit --u-boot pre-built/linux/images/u-boot.elf --dtb pre-built/linux/images/system.dtb --pmufw pre-built/linux/images/pmufw.elf --fsbl pre-built/linux/images/zynqmp_fsbl.elf --atf pre-built/linux/images/bl31.elf  --format MCS

This generates boot.mcs in <plnx-proj-root>/images/linux directory. For more information on Bootgen arguments see Bootgen User Guide (UG1283).

Execute the following command to generate the MCS image for booting to Linux using build images when programmable logic presents in the design:

petalinux-package boot --fpga --u-boot --kernel --offset 0xF40000 --format MCS

Execute the following command to generate the MCS image to boot up to Linux using build images:

petalinux-package boot --u-boot --kernel --offset 0xF40000 --format MCS

Execute the following command to generate the MCS image for booting to Linux using prebuilt images when programmable logic presents in the design:

petalinux-package boot --fpga pre-built/linux/images/system.bit --u-boot pre-built/linux/images/u-boot.elf --dtb pre-built/linux/images/system.dtb --pmufw pre-built/linux/images/pmufw.elf --fsbl pre-built/linux/images/zynqmp_fsbl.elf --atf pre-built/linux/images/bl31.elf --kernel pre-built/linux/images/image.ub --offset 0xF40000 --boot-script pre-built/linux/images/boot.scr --format MCS

Execute the following command to generate the MCS image to boot up to Linux using prebuilt images:

petalinux-package boot --u-boot pre-built/linux/images/u-boot.elf --dtb pre-built/linux/images/system.dtb --pmufw pre-built/linux/images/pmufw.elf --fsbl pre-built/linux/images/zynqmp_fsbl.elf --atf pre-built/linux/images/bl31.elf --kernel pre-built/linux/images/image.ub --offset 0xF40000 --boot-script pre-built/linux/images/boot.scr --format MCS

This generates boot.mcs in the images/linux directory containing images to boot up to Linux using Fit image (with tiny root file system if switch_root enabled) loaded at 0xF40000 Flash offset.

For detailed usage, see the --help option and petalinux-package boot.