Build the BSP (commandline)
You can use the commandline on Linux or Windows to work with this BSP.
Makefile targets in the BSP
The Makefile is located under the $BSP_ROOT_DIR/images directory. It defines more than one target:
- all
- Builds the QNX IFS (with and without graphics) and QNX IPL files for the target.
- qnx-ifs
- Builds the IFS file.
- ipl
- Builds QNX IPL (.imx) files for the i.MX 95 EVK board as either SD or eMMC boot, as well as for xSPI NOR flash memory boot.
If you don't specify a target, make invokes the all target.
- The mkimage_imx8.exe utility uses multiple Linux utilities (e.g., dd.exe, sha256sum.exe, etc.) to create the *.imx bootable images in the $BSP_ROOT_DIR/images directory. To build the *.imx bootable images using Windows, some utilities are needed from a GNU tool installation such as CygWin or MinGW GNU tools. We recommend that you install either MinGW GNU tool or CygWin to your host system, and then check that the PATH environment variable contains a path to the utilities (i.e., dd.exe, sha256sum.exe, etc.) on your host system.
- In case the mkimage_imx8.exe utility does not work in your development environment, you can download
the latest source from
https://github.com/nxp-imx/imx-mkimage/tree/lf-6.6.23-2.0.0 and rebuild it with
.make SOC=iMX95 flash_a55 LPDDR_TYPE=lpddr5 OEI=YES
Build from the commandline
To build the BSP on your host system, in a Command Prompt window (Windows) or a terminal (Linux), you must first build at the root directory of the BSP (BSP_ROOT_DIR), then you can build using the Makefile targets described previously in the $BSP_ROOT_DIR/images directory. To build your BSP, perform the following steps:
- Download the BSP archive, unzip it, and set up your environment to
build. For more information, see
Download and set up the BSP.
- In the BSP's images directory ($BSP_ROOT_DIR/images), type make clean to remove the default image files
from the $BSP_ROOT_DIR/images directory.
cd $BSP_ROOT_DIR cd images make cleanThis action removes all existing image files.
- Navigate back to the BSP_ROOT_DIR and type make. Running make does the following:
- builds the BSP and creates its directories
- places any images required for the board into the $BSP_ROOT_DIR/images directory
cd $BSP_ROOT_DIR
make
You should now have an IFS file called qnx-ifs.
Generating a Disk Image
This BSP has included a tool to generate a disk image that can be directly flashed to an SD. To generate the image you must have your IFS and IPL
in the $BSP_ROOT_DIR/images directory, either from the prebuilt binaries or as outlined in the
Build the BSP
chapter in this guide. To generate the image, perform the following steps:
- In the BSP's images/tools/ directory ($BSP_ROOT_DIR/images/tools), copy the DTB.
cd $BSP_ROOT_DIR/images/tools cp imx95-19x19-evk.dtb . - Run the mkdiskimage script. Your output should look similar to this:
./mkdiskimage # Create the DOS partition image for IFS mkfatfsimg -vv part_dos_boot.build part_dos_boot.img Using compatibility profile 'generic' Using FAT16, 64 sectors per cluster Creating '/'... Adding 'qnx-ifs' Adding 'IMX-DTB' Leaving '/'. Pad image file... # Create the QNX6 partition image for data storage mkqnx6fsimg -vv part_qnx_data.build part_qnx_data.img Using compatibility profile '7.0.0' Creating '/'... Creating '.boot/'... Leaving '.boot/'. Creating 'etc/'... Creating 'ssh/'... Leaving 'ssh/'. Leaving 'etc/'. Creating 'var/'... Creating 'run/'... Leaving 'run/'. Leaving 'var/'. Creating 'scripts/'... Adding 'board_startup.sh' Leaving 'scripts/'. Leaving '/'. Pad image file... # Create the USB disk image diskimage -o disk.img -c disk.cfg WARNING: Raw section image file is not the expected size: '../ipl-imx95-evk_b0.imx' (expected: 1024000, actual: 873472) DONE rm part_dos_boot.img part_qnx_data.img - Flash disk.img to your SD using your flashing tool of choice.
