DESK-XZ7-L/Development/Creating and building the Petalinux project

From DAVE Developer's Wiki
Jump to: navigation, search
History
Issue Date Notes

2022/11/18

DESK-XZ7-L-1.0.0-rc1 release

2023/01/25

DESK-XZ7-L-1.0.1 release
2023/06/12 DESK-XZ7-L-1.1.x release



200px-Emblem-important.svg.png

Petalinux installation path, in this documentation, is the /opt directory. If you have chosen a different one, set it properly. The commands reported here below have been used on a native server running Ubuntu 20.04.

Creating and building the Petalinux project[edit | edit source]

Documentation reference[edit | edit source]

  • PetaLinux Tools Documentation Reference guide UG1144
  • PetaLinux Tools DocumentationCommand Line Reference Guide UG1157

Petalinux environment setup[edit | edit source]

To reproduce the Petalinux build:

  • clone the repository
git clone --recursive git@git.dave.eu:desk-xz-l/petalinux.git -b desk-xz7-l-1.1.0
cd petalinux
  • setup the Petalinux environment
source <petalinux installation path>/Xilinx/petalinux/2021.2/settings.sh
  • initialize the configuration file

You can use the proper configuration file from the following table:

Config file Boot
config_bora uSD and QSPI-NOR
config_bora_ETH1 uSD and QSPI-NOR with ETH1 support
config_borax uSD and QSPI-NOR
config_borax_ETH1 uSD and QSPI-NOR with ETH1 support
config_boralite uSD and QSPI-NOR
config_boralite_NAND NAND
config_boralite_nand_usd uSD with NAND support

In order to select a configuration file use the following command:

cp project-spec/configs/<configuration file> project-spec/configs/config

Update the hardware description[edit | edit source]

The hardware description comes from the Vivado project. The Vivado project is already cloned into the Petalinux project.

To build the Hardware description file, please look at this page: Creating and building the Vivado project

You can use the following command to update the hardware description:

petalinux-config --get-hw-description vivado/vivado/<path to .xsa>

When applying the hardware description, the standard menuconfig interface will pop up: just save the current configuration to proceed. If the menuconfig interface will not bring up, send the following command:

petalinux-config --get-hw-description vivado/vivado/<path to .xsa> --silentconfig

Run the Petalinux build[edit | edit source]

To build petalinux-image-minimal use the following command:

petalinux-build

For building the dave-image-devel target, use the following command:

petalinux-build -c dave-image-devel

For building only the Linux kernel, use the following command

petalinux-build -c kernel

For building only U-Boot use the following command:

petalinux-build -c u-boot

For generating the BOOT.BIN artifact, run the following command:

petalinux-package --boot --u-boot --force

Note: BOOT.BIN includes the files below. In this case, the system.bit bitstream was generated with Vivado and imported in Petalinux with xsa file.

  • fsbl.elf
  • system.bit
  • u-boot.elf

In case of boot from NAND for the BORA Lite SOM, be careful on using the following command:

petalinux-package --boot --u-boot --kernel --offset 0x1080000 --force

Note: BOOT.BIN includes the files below. In this case, the bitstream system.bit was generated with Vivado and imported in Petalinux with xsa file.

  • fsbl.elf
  • system.bit
  • u-boot.elf
  • image.ub

The offset 0x1080000 for kernel is a default setting for NAND device installed on the SoM.

SD card image[edit | edit source]

To generate the SD card wic image, execute the following command:

petalinux-package --wic --bootfiles "BOOT.BIN boot.scr image.ub"

If you want to use dave-image-devel root file system, run the following command:

petalinux-package --wic --bootfiles "BOOT.BIN boot.scr image.ub" --rootfs-file build/tmp/deploy/images/zynq-generic/dave-image-devel-zynq-generic.tar.gz