Home - angolini/mfgtools GitHub Wiki
Welcome to the UUU (Universal Update Utility). This is an evolution of MFGTools (aka MFGTools v3).
With the time, the need for an update utility portable to Linux and Windows increased. UUU have the same usage on both Windows and Linux. It means the same script works on both OS.
uuu (Universal Update Utility) for nxp imx chips -- lib1.1.61-7-g5b4b715
uuu [-d -m -v -V] <bootloader|cmdlists|cmd>
bootloader download bootloader to board by usb
cmdlist run all commands in cmdlist file
If it is path, search uuu.auto in dir
If it is zip, search uuu.auto in zip
cmd Run one command, use -H see detail
example: SDPS: boot -f flash.bin
-d Deamon mode, wait for forever.
-v -V verbose mode, -V enable libusb error\warning info
-m USBPATH Only monitor these pathes.
-m 1:2 -m 1:3
uuu -s Enter shell mode. uuu.inputlog record all input commands
you can use "uuu uuu.inputlog" next time to run all commands
uuu -h -H show help, -H means detail helps
uuu [-d -m -v] -b[run] <emmc|emmc_all|qspi|sd|sd_all|spl> arg...
Run Built-in scripts
emmc burn boot loader to eMMC boot partition
arg0: _flash.bin
emmc_all burn whole image to eMMC
arg0: _flash.bin
arg1: _rootfs.sdcard
qspi burn boot loader to qspi nor flash
arg0: _flexspi.bin bootloader
arg1: _image[Optional] image burn to flexspi, default is the same as bootloader
sd burn boot loader to sd card
arg0: _flash.bin
sd_all burn whole image to sd card
arg0: _flash.bin
arg1: _rootfs.sdcard
spl boot spl and uboot
arg0: _flash.bin
uuu -bshow <emmc|emmc_all|qspi|sd|sd_all|spl>
Show built-in script
---------------------------------------------------------------------
Command Format PROTOCOL COMMAND ARG
PROTOCOL
ALL protocol supported common command
done #last command for whole flow
delay <ms> # delay ms
sh\shell <any shell command> #Run shell command, such as wget to file from network
< <any shell command> #use shell command's output as uuu command
this command generally used for burn some sequence number, such production id, mac address
for example:
FB:< echo ucmd print
CFG: Config protocol of specific usb device vid/pid
SDPS|SDP|FB\Fastboot|FBK -chip <chip name> -pid <pid> -vid <vid> [-bcdversion <ver>]
SDPS: Stream download after MX8QXPB0
boot -f <filename> [-offset 0x0000]
SDP: iMX6/iMX7 HID download protocol.
dcd -f <filename>
write -f <filename> [-addr 0x000000] [-ivt 0]
jump -f <filename> [-ivt 0]
boot -f <filename> [-nojump]
FB[-t timeout]:\Fastboot: android fastboot protocol. unit of timeout is ms
getvar
ucmd <any uboot command>
acmd <any never returned uboot command, like booti, reboot>
flash [-raw2sparse] <partition> <filename>
download -f <filename>
FBK: community with kernel with fastboot protocol. DO NOT compatible with fastboot tools.
ucmd <any kernel command> and wait for command finish
acmd <any kernel command> don't wait for command finish
sync wait for acmd processs finish.
ucp <soure> <destinate> copy file from/to target
T:<filename> means target board file.
T:- means copy data to target's stdio pipe.
copy image T:/root/image ;download image to path /root/image
copy T:/root/image image ;upload /root/image to file image.
Example for transfer big file
acmd tar - ; run tar background and get data from stdio
ucp rootfs.tar.gz T:- ; send to target stdio pipe
sync ; wait for tar process exit.
For example:
SDPS: boot -f <filename>
SDP: boot -f <filename>
CFG: SDP: -chip imx6ull -pid 0x1234 -vid 0x5678
SDP: boot -f u-boot-imx7dsabresd_sd.imx -nojump
SDP: write -f zImage -addr 0x80800000
SDP: write -f zImage-imx7d-sdb.dtb -addr 0x83000000
SDP: write -f fsl-image-mfgtool-initramfs-imx_mfgtools.cpio.gz.u-boot -addr 0x83800000
SDP: jump -f u-boot-dtb.imx -ivt
Variable | Description |
---|---|
fastboot_dev |
fastboot flash device, support mmc and sata |
fastboot_buffer |
fastboot download buffer adddress |
fastboot_bytes |
fastboot download file size |
emmc_dev |
eMMC device number |
sd_dev |
sd slot device number |
See some examples on how to use UUU
It is first official BSP release to support uuu For L4.9.123_2.3.0_8MM GA with i.MX8M Mini, see How-to-use-UUU-on-Windows