petalinux-boot --jtag Examples - 2022.1 English

PetaLinux Tools Documentation: Reference Guide (UG1144)

Document ID
UG1144
Release Date
2022-04-26
Version
2022.1 English

Select the images for loading on target from the following:

  1. Prebuilt directory: <plnx-proj-root>/pre-built/linux/images. These are prebuilt images packed along with the BSP.
  2. Images directory: <plnx-proj-root>/images/linux. These are the images built by the user.

The following examples demonstrate some use-cases of the petalinux-boot --jtag command.

  • Download bitstream and FSBL for Zynq-7000 devices, and FSBL and PMU firmware for Zynq UltraScale+ MPSoC
    $ petalinux-boot --jtag --prebuilt 1
    Note: Images are taken from <plnx-proj-root>/pre-built/linux/images directory.
  • Boot U-Boot on target board after loading bitstream/boot loader.
    $ petalinux-boot --jtag --prebuilt 2
    Note: Images are taken from <plnx-proj-root>/pre-built/linux/images directory.
    $ petalinux-boot --jtag --u-boot --fpga
    Note: Images are taken from <plnx-proj-root>/images/linux directory.
    • For MicroBlaze™ processors, the above commands download the bitstream to the target board, and then boot the U-Boot on the target board.
    • For Zynq-7000 devices, they download the bitstream and FSBL to the target board, and then boot the U-Boot on the target board.
    • For Zynq UltraScale+ MPSoC, they download the bitstream, PMU firmware, FSBL and Uboot, and then boot upto U-Boot on the target board.
    • For Versal® ACAP, they download BOOT.BIN (which contains the PDI, PLM firmware, PSM firmware, U-boot, and DTB) and then boot the U-Boot on the target board.
  • Boot prebuilt kernel on target board after loading bitstream, boot loader, and U-Boot.
    $ petalinux-boot --jtag --prebuilt 3
    Note: Images are taken from <plnx-proj-root>/pre-built/linux/images directory.
    $ petalinux-boot --jtag --kernel
    Note: Images are taken from <plnx-proj-root>/images/linux directory.
  • Generate debug messages while loading images:
  • $ petalinux-boot --jtag --u-boot/--kernel -v
    Note: Images are taken from <plnx-proj-root>/images/linux directory.
  • For JTAG boot, specify the cpio rootfile system. It supportsZynq , Zynq UltraScale+ MPSoC, Versal, and MicroBlaze.

  • Boot customized rootfs image with kernel using JTAG:
    $ petalinux-boot --jtag --kernel --rootfs <specify custom cpio rootfs path>
    • For MicroBlaze processors, the above commands download the bitstream to the target board, and then boot the kernel image on the target board.
    • For Zynq-7000 devices, they download the bitstream and FSBL to the target board, and then boot the U-Boot and then the kernel on the target board.
    • For Zynq UltraScale+ MPSoC, they download the bitstream, PMU firmware, and FSBL, and then boot the kernel with help of linux-boot.elf to set kernel start and DTB addresses.
    • For Versal® ACAP, they download the BOOT.BIN (which contains the PDI, PLM firmware, PSM firmware, U-Boot, and DTB) and then boot the kernel (Image) with the help of U-Boot script (boot.scr).