Subsystem AUTO Hardware Settings - 2023.2 English

PetaLinux Tools Documentation: Reference Guide (UG1144)

Document ID
UG1144
Release Date
2023-10-18
Version
2023.2 English

The Subsystem AUTO Hardware settings menu allows you to customize how the Linux system interacts with the underlying hardware platform.

Figure 1. Subsystem AUTO Hardware Settings

System Processor

The System processor menu specifies the CPU processor on which the system runs.

Memory Settings

The memory settings menu allows you to:

  • Select which memory IP is the primary system memory
  • Set the system memory base address
  • Set the size of the system memory
  • Set the U-Boot text base address offset to a memory high address

The configuration in this menu impacts the memory settings in the device tree and U-Boot automatic configuration (autoconfig) files.

If manual is selected as the primary memory, you are responsible for ensuring proper memory settings for the system.

Serial Settings

The Serial Settings submenu allows you to select which serial device is the system’s primary STDIN/STDOUT interface. If manual is selected as the primary serial, you are responsible for ensuring proper serial interface settings for the system.

Ethernet Settings

The Ethernet Settings submenu allows you to:

  • Select which Ethernet is the systems’ primary Ethernet
  • Select to randomize MAC address
  • Set the MAC address of the selected primary Ethernet. By default, the address is set to ff:ff:ff:ff:ff:ff invalid mac.

If a MAC address is programmed into the EEPROM and you want to use EEPROM mac, due to the previous invalid MAC address, it reads from the EEPROM if there is no ENV MAC from U-Boot. If no MAC address is configured in the EEPROM, the U-Bootgenerates a random MAC address if mac address is not defined from the U-Boot environment.

The order in which the U-Boot picks the MAC address is as follows. Refer to the U-Boot documentation for commands to program EEPROM and to configure for the same.

  • The MAC address from the U-Boot environment has the highest priority.
  • The MAC address from the device tree has the next highest priority. Anything configured in the petalinux-config > Subsystem > Auto Hardware Settings > Ethernet Settings > MAC address goes to the device tree.
  • If there is no MAC address in the device tree or invalid mac address(ff:ff:ff:ff:ff:ff), it checks in EEPROM.
  • If there is no MAC address in the EEPROM, it generates a random MAC address.
  • Set whether to use DHCP or static IP on the primary Ethernet.

If manual is selected as the primary Ethernet, you are responsible for ensuring proper Ethernet settings for the system.

Netmask address changes for sysvinit and systemd

  • Set the static IP from petalinux-config → Subsystem Auto Hardware Settings → Ethernet Settings. By default , obtain IP address is enabled. Disable it to set the static IP address. By default Static IP netmask address in 255.255.255.0, Edit/Specify netmask address accordingly.
  • In case of sysvinit /etc/network/interfaces file is invoked, it generates with netmask address in dot-decimal notation for example, 255.255.255.0, dot-decimal notation format is supported.
    address 192.168.0.10
       netmask 255.255.255.0
  • In case of systemd wired.network file is invoked, it is generated with netmask address in CIDR notation for example, 24 CIDR notation format is supported.
    Address=192.168.0.10/24

Ethernet submask changes when static IP generation is enabled

Set the static IP from $ petalinux-config → Subsystem Auto Hardware Settings → Ethernet Settings.

Specify the netmask address accordingly.

Figure 2. Obtain IP Address

In the case of sysvinit, /etc/network/interfaces file is invoked, and 255.255.255.0 netmask address is supported.

Figure 3. Static IP netmask

In the case of systemd, specify the address (255.255.255.0)and calculate the bits. Pass netmask as bits (24) to the wired network.

System Architecture Menu

From 2023.1 release, a new menu configuration option to the know system architecture petalinux-config -> System Architecture based on the design is created. The system architecture menu is for user information.

Figure 4. System Architecture Menu
Figure 5. System Architecture

Flash Settings

The Flash Settings submenu allows you to:

  • Select a primary flash for the system
  • Set the flash partition table

If manual is selected as the primary flash, you are responsible for the flash settings for the system.

SD/SDIO Settings

The SD/SDIO Settings submenu is for Zynq 7000 devices and Zynq UltraScale+ MPSoC only. It allows you to select which SD controller is the system’s primary SD card interface.

If manual is selected as the primary flash, you are responsible for the flash settings for the system.

Timer Settings

The Timer Settings submenu is for MicroBlaze processors and Zynq UltraScale+ MPSoC. It allows you to select which timer is the primary timer.

Important: A primary timer is required for a MicroBlaze system.

Reset GPIO Settings

The Reset GPIO Settings submenu is for MicroBlaze processors only. It allows you to select which GPIO is the system reset GPIO.

Tip: MicroBlaze systems use GPIO as a reset input. If a reset GPIO is selected, you can reboot the system from Linux.

RTC Settings

Select an RTC instance that is used as a primary timer for the Linux kernel. If your preferred RTC is not on the list, select manual to enable the proper kernel driver for your RTC.

Table 1. Flash Partition Table
Bootable Image/U-Boot Environment Partition Default Partition Name Description
Boot Image boot BOOT.BIN for Zynq 7000 devices, Zynq UltraScale+ MPSoC, and Versal adaptive SoC.

Relocatable U-Boot BIN file (u-boot-s.bin) for MicroBlaze processors.

U-Boot Environment Partition bootenv U-Boot environment variable partition. When primary sd is selected, U-Boot environment is stored in the first partition. When primary flash is selected, U-Boot environment is stored in the partition mentioned in flash partition name option.
Kernel Image kernel Kernel image image.ub (FIT format)
DTB Image dtb If Advanced bootable images storage Settings is disabled and a DTB partition is found in the flash partition table settings, PetaLinux configures U-Boot to load the DTB from the partition table. Else, it assumes a DTB is contained in the kernel image.