-
Notifications
You must be signed in to change notification settings - Fork 300
Home
Welcome to the UUU (Universal Update Utility), the next evolution of MFGTools, also known as MFGTools v3.
UUU is a tool designed for deploying images on Freescale/NXP I.MX chips.
Over time, the demand for a cross-platform update utility that works seamlessly on both Linux and Windows has grown. UUU meets this need, offering identical functionality and usage on both operating systems, allowing the same scripts to run smoothly on either platform.
UUU is command line tools. look like
uuu (universal update utility) for nxp imx chips -- libuuu-1.0.1-gffd9837 Succues:0 Failure:3 Wait for Known USB Device Appear... 1:11 5/5 [ ] SDP: jump -f u-boot-dtb.imx -ivtinitramf.... 2:1 1/5 [===> ] SDP: boot -f u-boot-imx7dsabresd_sd.imx ....
UUU is designed as a common library and UI, making it easy for users to integrate the UUU library into their own tools. It also seamlessly runs within any scripts.
PDF version of the wiki content is available on the release page for convenience.
-
Windows 10, 64bit, early version(below 1.2.0) need install vs2017 redistribute package
-
Ubuntu 16.14 or above, 64bit
Windows 7 user please read WIN7-User-Guide
Set the board’s boot pin to USB serial download mode. In most cases, the iMX ROM will automatically fall back to USB serial download mode if there is a boot failure.
To download and boot U-Boot:
uuu bootloader
To burn U-Boot into eMMC:
uuu -b emmc bootloader
To burn the boot image into QSPI flash:
uuu -b qspi qspi_bootloader
To burn the root filesystem image into eMMC:
uuu -b emmc_all bootloader rootfs.wic
To decompress the root filesystem image and burn it into eMMC:
uuu -b emmc_all bootloader rootfs.wic.zstd
To decompress the root filesystem image and burn it into eMMC without the bootloader (since version 1.4.146 and after 2021 Q4 Yocto image):
uuu -b emmc_all rootfs.wic.zstd
Notes: "Bootloader" refers to a bootable image that includes the ROM-required header. For i.MX6 and i.MX7, this is typically uboot.imx
, while for i.MX8QXP, i.MX8QM, i.MX8MM, and i.MX8MQ, it is flash.bin
.
To burn the release image into eMMC, use the following command:
uuu L4.9.123_2.3.0_8mm-ga.zip
Note: Some releases bundle multiple board configurations into a single zip package, use uuu release.zip/uuu.auto-<boardname>
For more usage details, please refer to the Example.
UUU scripts are simple plain text files.
The first line must be:
uuu_version 1.0.1
The version number specifies the minimum UUU version required to parse and run the script.
After that, include the UUU commands.
UUU commands follow this format:
PROTOCOL: CMD
Here’s an example script for booting U-Boot on i.MX6 and i.MX7:
uuu_version 1.0.1 SDP: dcd -f u-boot.imx SDP: write -f u-boot.imx -ivt 0 SDP: jump -f u-boot.imx -ivt 0
For more sample scripts, see: Sample-script[].
The following table shows environment variables that may be useful when writing UUU scripts.
Variable |
Description |
|
fastboot flash device, support mmc and sata |
|
fastboot download buffer adddress |
|
fastboot download file size |
|
eMMC device number |
|
sd slot device number |
What you want | Required Firmware |
---|---|
Download bootloader |
N/A |
Burn Image to eMMC/SD |
uboot with fastboot enable |
Burn Image to qspi\spi\nor |
uboot with fastboot enable |
Burn Image into Nand flash |
uboot(1), linux kernel\initramfs\uboot\dtb |
Need linux shell cmd such as fdisk |
uboot(1), linux kernel\initramfs\uboot\dtb |
Boot linux kenrel with rootfs already in eMMC |
uboot with fastboot enable |
Boot Linux kernel with nfs over USB |
uboot with fastboot enable, initramfs |
(1) It’s recommended to enable fastboot. If the ROM HID supports writing additional images to DDR, you can load the kernel, DTB, and initramfs to DDR before jumping to U-Boot. Enabling fastboot provides more flexibility for modifying the kernel command line.
Just power shell support customized auto complete
Powershell: Enjoy auto [tab] command complete by run below command or put into Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
Register-ArgumentCompleter -CommandName uuu -ScriptBlock {param($commandName,$parameterName,$wordToComplete,$commandAst,$fakeBoundParameter); C:\Users\nxa23210\uuu\uuu\x64\Release\lib\uuu.exe -autocomplete $parameterName }
Go back to Home