boot
The boot folder contains files that are added to the boot partition. Its Makefile downloads required firmware from the files' source repos on GitHub during the build.
There are two types of boot files:
- configuration files
- firmware files
Configuration files
You can modify the following configuration files directly in the boot partition either before running a build or after the image is built and flashed. The system checks the files during the next device boot:
- network
- wpa_supplicant.conf
network
The network file sets certain network variables at boot time if the file timestamp is newer than its corresponding setting file in the system partition.
The table below outlines the variables, what they control, and provides an example of how to set them:
| Variable | Usage | Example |
|---|---|---|
| HOSTNAME | Sets the device host name. The default hostname is qnxpi. | HOSTNAME=qnxpi |
| IP_ADDR | Sets a static IP address for Ethernet interfaces. If not present, the system sets the default IP address using DHCP. | IP_ADDR=192.168.0.220 |
| TIME_SERVERS | Sets one or more time servers, if present. | TIME_SERVERS=0.pool.ntp.org:1.pool.ntp.org |
wpa_supplicant.conf
The wpa_supplicant.conf file overrides Wi-Fi network details prior to first boot or on subsequent boots.
Refer to the "Wi-Fi" section of the QSTI chapter for more details on how to populate the file.
You can also set the same network configurations by altering a Wi-Fi snippet. Refer to the "wifi-custom" entry in "snippets" for more details.
Firmware files
The Makefile in the boot folder automatically downloads the required firmware files for the target. The files are placed in build/<target>.
The build process has support for downloading files from various sources. The following types are supported:
- LOCAL_FILES
These files are local and don't need to be downloaded.
- REMOTE_TARBALLS
These files are acquired from a tarball.
- REMOTE_LINUX_FW_FILES
These files are downloaded from the Linux Kernel's firmware repo: https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/
