====== TQMa91xxCA - YOCTO Linux BSP documentation ====== This page is work in progress and therefore subject to change - All binaries are intended for the usage on a STKa91xxCA - The symlinks point to the files of the last build **System Images** ^ Boot Device ^ Symlink ^ File ^ ^ SD Card/eMMC | tq-image-weston-debug-tqma91xx-mba91xxca.wic | tq-image-weston-debug-tqma91xx-mba91xxca-.rootfs.wic | **Bootloader Binaries** ^ Boot Device ^ File ^ ^ SD/eMMC | imx-boot-tqma91xx-mba91xxca-sd.bin-flash_spl_uboot | ^ QSPI NOR | imx-boot-tqma91xx-mba91xxca-sd.bin-flash_evk_flexspi | **Linux Kernel Image** ^ Symlink ^ File ^ | Image | Image-tqma91xx-mba91xxca-.bin | **Devicetree Blobs** ^ Symlink ^ Description ^ | imx91-tqma9131-mba91xxca.dtb | Default | | imx91-tqma9131-mba91xxca-rgb-cdtech-dc44.dtb | Default with RGB interface activated | | imx91-tqma9131-mba91xxca-lvds-tm070jvhg33.dtb | Default with LVDS interface activated | **Rootfs images** ^ Symlink ^ File ^ | tq-image-weston-debug-tqma91xx-mba91xxca.ext4 | tq-image-weston-debug-tqma91xx-mba91xxca-.rootfs.ext4 | | tq-image-weston-debug-tqma91xx-mba91xxca.tar.gz | tq-image-weston-debug-tqma91xx-mba91xxca-.rootfs.tar.gz | ---- The UUU (Universal Update Utility is an open source programm provided by NXP, it is the successor of NXP's MFG Tools, intended to download and execute code on i.MX SoC family via the Serial Download Protocol (SDP). Documentation, source code and prebuild releases are available via the [[https://github.com/NXPmicro/mfgtools|NXP mfgtools github repository]]. \\ ===== Prerequisites ===== 1. Download the latest release from Universal Update Utility repository or build it from source * [[https://github.com/NXPmicro/mfgtools/releases|Prebuild releases]] * [[https://github.com/NXPmicro/mfgtools#how-to-build|Build from source ]] 2. TQMa91xxCA BSP built following the [[en:arm:tqma91xxca:yocto:quickstart_yocto|BSP quickstart instructions.]] \\ ==== Download a Prebuild UUU Release Version ==== A prebuild UUU release version can be downloaded from the [[https://github.com/NXPmicro/mfgtools/releases|UUU git repository]]. It is recommended to use the latest avialable release. \\ ==== Building the Universal Update Utility from source ==== The Universal Update Utility (UUU) tool can be compiled manually. The build instructions for Linux, Windows are available in the UUU documentation: * [[https://github.com/NXPmicro/mfgtools#linux|Linux]] * [[https://github.com/NXPmicro/mfgtools#windows|Windows]] \\ ==== U-Boot Binary ==== A U-Boot binary with the U-Boot configuration mfgtool is required to use the UUU. This particular U-Boot will be built during the TQMa91xxCA Yocto BSP build process and is located in the build directory deploy folder named imx-boot-tqma91xx-mba91xxca-mfgtool.bin-flash_singleboot. \\ ===== Usage ===== The syntax of the UUU tool is identical for Windows and Linux.\\ In Windows **uuu.exe** has to be used while in Linux the uuu binary has no file extension. ==== Prepare Host Computer ==== For the sake of siplicity, copy the following components to a new folder e.g. in your home directory: * UUU binary (manually compiled or prebuilt release) * U-Boot binary with UUU configuration imx-boot-tqma91xx-mba91xxca-mfgtool.bin-flash_singleboot * SD / eMMC image for example the default image tq-image-weston-debug-tqma91xx-mba91xxca.rootfs-20250422082924.wic The following commands are executed in the folder containing the tool and the binaries. \\ \\ ==== Prepare STKa91xCA ==== * Set the STKa91xCA DIP switches to Serial Downloader Mode ([[en:arm:tqma91xxca:mba91xxca:dip_switches|See DIP-Switch Settings]]) * Connect STKa91xCA via connector X22 to the Host Computer \\ ==== List detected devices ==== After connecting the kit, it should be automatically detected when it is in serial downloader mode. Run the following command to list all detected devices: uuu -lsusb \\ ==== Start U-Boot over Serial Downloader ==== To load the U-boot binary into the RAM and start it from there use the command below: uuu **Example for the STKa91xCA:** uuu imx-boot-tqma91xx-mba91xxca-mfgtool.bin-flash_singleboot \\ ==== Program U-Boot over Serial Downloader ==== Use the following command to program a U-Boot binary into the eMMC. uuu -b emmc **Example for the STKa91xCA:** uuu -b emmc imx-boot-tqma91xx-mba91xxca-mfgtool.bin-flash_singleboot \\ ==== Program .wic image over Serial Downloader ==== Follow the command below to load the mfgtool U-Boot and write an image onto the @mod_name@ eMMC afterwards. uuu -b emmc_all **Example for the STKa91xCA:** uuu -b emmc_all imx-boot-tqma91xx-mba91xxca-mfgtool.bin-flash_singleboot tq-image-weston-debug-tqma91xx-mba91xxca.rootfs-20250422082924.wic Attention: By default the bootstream is written to eMMC boot partition and eMMC is configured to use boot partition. To write all firmware components into the eMMC user area a custom update script can be used. The next section shows how to create such an update script. ---- The Image can be simply written to the SD Card by using the dd shell command in Linux: $ cd $ sudo dd if=tq-image-weston-debug-tqma91xx-mba91xxca.rootfs.wic of=/dev/sdc bs=1M conv=fsync #Assuming the SD card is assigned to /dev/sdc The image must be written to the RAW device of the SD Card (e.g. /dev/sdc) and not into a partition (e.g. /dev/sdc1) ! To identify the SD card in Linux the shell command dmesg can be used: - Open a new terminal - Execute the following command without plugged SD Card $ dmesg | tail -n 15 - Insert SD Card and wait a few seconds - Run the command from step two again $ dmesg | tail -n 15 #plug in SD Card into the reader $ dmesg | tail -n 15 The information provided on this wiki page is subject to change due to circumstances beyond our control. While we strive to keep all details as accurate and up-to-date as possible, it is possible that certain updates or changes may go unnoticed for some time. As a result, some sections of this page may contain outdated information. If you notice any mistakes in the documentation, we kindly ask you to inform the TQ Support through our ticket system.