Steps to Import Hardware Configuration - 2022.2 English

PetaLinux Tools Documentation: Reference Guide (UG1144)

Document ID
Release Date
2022.2 English

Steps to import hardware configuration are:

  1. Change into the directory of your PetaLinux project.
    $ cd <plnx-proj-root>
  2. Import the hardware description with petalinux-config command using the following steps:
    1. By giving the path of the directory containing the .xsa file as follows:
      petalinux-config --get-hw-description <PATH-TO-XSA Directory>
    2. By giving the XSA file path as follows:

      When you have multiple XSA files in a specified folder petalinux-config gives you an error. To avoid these kind of errors you can provide complete XSA file path as below

      petalinux-config --get-hw-description <PATH-TO-XSA-FILE>
    Note: Changing the XSA file in the <PATH-TO-XSA directory> later gives an INFO: Seems like your hardware design:<PATH-TO-XSA Directory>/system.xsa has changed warning for all subsequent executions of the petalinux-config/petalinux-build commands. This means that your XSA has changed. To use the latest XSA, run petalinux-config --get-hw-description again.

This launches the top system configuration menu. When the petalinux-config --get-hw-description command runs for the PetaLinux project, the tool detects the changes in the imported hardware design and launches the menu.

Figure 1. System Configuration Menu

Ensure DTG Settings > (template) MACHINE_NAME is selected and change the template to any of the below mentioned possible values.

Note: These values are applicable only to Xilinx® evaluation boards. For custom boards, do not change the configurations.
Note: In our default evaluation BSPs, the configuration is set to AUTO. Based on the design, this DTG machine will be set by Yocto default.
Tip: For details on the PetaLinux project structure, see PetaLinux Project Structure.
Table 1. BSP and Machine Names
BSP Machine
ZCU102 zcu102-rev1.0
ZCU104 zcu104-revc
ZCU106 zcu106-reva
ZCU111 zcu111-reva
ZCU1275 zcu1275-revb
ZCU1285 zcu1285-reva
ZCU216 zcu216-reva
ZCU208 zcu208-reva
ZCU670 zcu670-revb
ZCU208-SDFEC zcu208-reva
ZCU100 zcu100-revc
ZC702 zc702
ZC706 zc706
ZEDBOARD zedboard
AC701 ac701-full
KC705 kc705-full
KCU105 kcu105
VCU118 vcu118-rev2.0
SP701 sp701-rev1.0
VCK190 versal-vck190-reva-x-ebm-01-reva
VPK120 versal-vpk120-reva
VMK180 versal-vmk180-reva-x-ebm-01-reva
When a PetaLinux project is created on NFS, petalinux-create automatically changes the TMPDIR to /tmp/<projname-timestamp-id>. If /tmp is on NFS, it throws an error. you can change the TMPDIR to local storage while creating the PetaLinux project by running petalinux-create -t project -s <PATH_TO_PETALINUX_PROJECT_BSP> --tmpdir <TMPDIR PATH>, or selecting petalinux-config > Yocto-settings > TMPDIR. Do not configure the same location as TMPDIR for two different PetaLinux projects. This can cause build errors. If TMPDIR is at /tmp/.., deleting the project does not work. To delete the project, run petalinux-build -x mrproper.

Ensure Subsystem AUTO Hardware Settings is selected, and go into the menu which is similar to the following:

Figure 2. Subsystem AUTO Hardware Settings

The Subsystem AUTO Hardware Settings → menu allows customizing system wide hardware settings.

This step can take a few minutes to complete because the tool parses the hardware description file for hardware information required to update the device tree, PetaLinux U-Boot configuration files (only for Microblaze) and the kernel config files(only for Microblaze) based on the “Auto Config Settings --->” and “Subsystem AUTO Hardware Settings --->” settings.

Note: For more details on the Auto Config Settings menu, see the Auto Config Settings.

The --silentconfig option allows you to reuse a prior configuration. Old configurations have the file name CONFIG.old within the directory containing the specified component for unattended updates.