DESK-MX-L-AN-0008: How to use UUU update utility

From DAVE Developer's Wiki
Revision as of 08:41, 10 October 2022 by U0007 (talk | contribs) (MITO 8M Mini)

Jump to: navigation, search
Info Box
Warning-icon.png This application note was validated against specific versions of the kit only. It may not work with other versions. Supported versions are listed in the History section. Warning-icon.png

History[edit | edit source]

Version Date Development Kit version
1.0.0 07/10/2022 DESK-MX8M-L-2.0.0-rc2

Introduction[edit | edit source]

This application note details how to use the UUU NXP Universal Update Utility for the i.MX platforms typically via SDP protocol, i.e. over USB OTG connection.

UUU is the replacement for MfgTool Command-line driven (no GUI). It allows a single command image download and it is fully scriptable. It supports all flash types (eMMC, NAND, QSPI, SD…).

Full open-source code is on Github with full documentation.

Build the UUU[edit | edit source]

The following instructions are used for building the uuu utility directly inside the DESK-MX8M-L-2.0.0-rc2 Virtual Machine

As reported in github README, the following Ubuntu packages have to be installed:

sudo apt-get install libusb-1.0-0-dev libbz2-dev libzstd-dev pkg-config cmake libssl-dev g++

then the git repository will be cloned:

git clone https://github.com/NXPmicro/mfgtools.git

For some Ubuntu 16.04 libzstd incompatibility, it is required to checkout a previous release:

git checkout uuu_1.4.201

Invoking the cmake utility, the application can be built:

cd mfgtools
cmake . && make

and install the application in the system directory:

sudo make install

MVM USB device[edit | edit source]

The USB device - for both SPL and u-boot stages - has to be enabled inside the VM using the VirtualBox proper Device menu. Once both USB devices are detected by the VM, it is possible to add them to the USB filters in order to enable them once detected:

ORCA[edit | edit source]

MVM USB settings are displayed here below:

DESK-MX6-L-uuu-ORCA-USB-Settings.png

  • Boot configurations for USB Serial Download, i.e. with S2 switches BOOT_MODE[3:0] as 0001
    • J3 USB-C port is used for Power Delivery
    • J4 USB-C port is used for USB serial download connection
ORCA USB serial download connection

MITO 8M Mini[edit | edit source]

MVM USB settings are displayed here below:

DESK-MX6-L-uuu-USB-Settings.png


MITO8M Mini Evaluation Kit has to be configured wih:

  • Boot configurations from SD card, i.e. with J32 jumper inserted
  • no SD card inserted for boot from USB serial download instead of SD card
MITO8M Mini USB serial download connection

uuu examples[edit | edit source]

ORCA[edit | edit source]

  • device identification
dvdk@vagrant:~/mfgtools$ uuu -lsusb
uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.4.201-0-g005ff6f

Connected Known USB Devices
	Path	 Chip	 Pro	 Vid	 Pid	 BcdVersion
	==================================================
	1:1	 MX865	 SDPS:	 0x1FC9	0x0146	 0x0002



dvdk@vagrant:~/mfgtools$ 

  • binary download and programming
dvdk@vagrant:~/mfgtools$ sudo uuu -d flash.bin 
uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.4.201-0-g005ff6f

Success 1    Failure 0                                                                                                                                        
                                                                                                                                                               
                                                                                                                                                               
1:1      2/ 2 [Done                                  ] SDPS: done                                                                                              

  • once downloaded, the flash.bin boot image will be directly executed on the target and the serial console will show the u-boot messages:
U-Boot SPL 2020.04-desk-mx8m-l-2.0.0-rc2 (Oct 07 2022 - 15:04:24 +0000)
SOM ConfigID#: 00000005
DDRINFO: start DRAM init
DDRINFO: DRAM rate 4000MTS
DDRINFO:ddrphy calibration done
DDRINFO: ddrmix config done
Normal Boot
Trying to boot from BOOTROM
Find FIT header 0x&4802a7a0, size 855
Need continue download 1024
Download 947152, total fit 948272
NOTICE:  BL31: v2.2(release):rel_imx_5.4.70_2.3.2_rc1-4-ga72158b5e
NOTICE:  BL31: Built : 15:54:45, Feb 17 2022


U-Boot 2020.04-desk-mx8m-l-2.0.0-rc2 (Oct 07 2022 - 15:04:24 +0000)

CPU:   i.MX8MP[8] rev1.1 1800 MHz (running at 1200 MHz)
CPU:   Commercial temperature grade (0C to 95C) at 33C
Reset cause: POR
Model: DAVE i.MX8MPlus on SBC ORCA Rev A
DRAM:  6 GiB
TCPC:  Vendor ID [0x1fc9], Product ID [0x5110], Addr [I2C2 0x50]
MMC:   FSL_SDHC: 1, FSL_SDHC: 2
Fail to setup video link
In:    serial
Out:   serial
Err:   serial

 BuildInfo:
  - ATF a72158b
  - U-Boot 2020.04-desk-mx8m-l-2.0.0-rc2

SOM ConfigID#: 00000005
SOM UniqueID#: 0002aaff:8aefcecd
CB ConfigID#: 00001001
CB UniqueID#: 00000000:00000000
SOM: MX8MP-Mito8MPlus on SBC ORCA
switch to partitions #0, OK
mmc1 is current device
Detect USB boot. Will enter fastboot mode!
Net:
Warning: ethernet@30be0000 (eth0) using random MAC address - 46:2f:c7:2a:9e:9c
eth0: ethernet@30be0000
Fastboot: Normal
Boot from USB for mfgtools
*** Warning - Use default environment for                                mfgtools
, using default environment

Run bootcmd_mfg: run mfgtool_args;if iminfo ${initrd_addr}; then if test ${tee} = yes; then bootm ${tee_addr} ${initrd_addr} ${fdt_addr}; else booti ${loadaddr} ${initrd_addr} ${fdt_addr}; fi; else echo "Run fastboot ..."; fastboot 0; fi;
Hit any key to stop autoboot:  0

## Checking Image at 43800000 ...
Unknown image format!
Run fastboot ...

MITO 8M Mini[edit | edit source]

  • device identification
dvdk@vagrant:~/mfgtools$ uuu -lsusb
uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.4.201-0-g005ff6f

Connected Known USB Devices
	Path	 Chip	 Pro	 Vid	 Pid	 BcdVersion
	==================================================
	1:1	 MX8MM	 SDP:	 0x1FC9	0x0134	 0x0101

  • binary download and programming
dvdk@vagrant:~/mfgtools$ sudo uuu -d flash.bin 
uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.4.201-0-g005ff6f

Success 22    Failure 0                                                                                                                                       
                                                                                                                                                               
                                                                                                                                                               
1:1      2/ 2 [Done                                  ] SDP: done                                                                                               
1:2      3/ 3 [Done                                  ] SDPV: done                                                                                              

  • once downloaded, the flash.bin boot image will be directly executed on the target and the serial console will show the u-boot messages:
U-Boot SPL 2020.04-desk-mx8m-l-2.0.0-rc2 (Oct 07 2022 - 14:57:02 +0000)
SOM ConfigID#: 00000002
DDRINFO: start DRAM init
DDRINFO: DRAM rate 3000MTS
DDRINFO:ddrphy calibration done
DDRINFO: ddrmix config done
Normal Boot
Trying to boot from USB SDP
SDP: initialize...
SDP: handle requests...
Downloading file of size 1099200 to 0x40400000... done
Jumping to header at 0x40400000
Header Tag is not an IMX image
Found header at 0x404291a0
NOTICE:  BL31: v2.2(release):rel_imx_5.4.70_2.3.2_rc1-4-ga72158b5e
NOTICE:  BL31: Built : 15:54:43, Feb 17 2022

U-Boot 2020.04-desk-mx8m-l-2.0.0-rc2 (Oct 07 2022 - 14:57:02 +0000)

CPU:   i.MX8MMQ rev1.0 1600 MHz (running at 1200 MHz)
CPU:   Industrial temperature grade (-40C to 105C) at 58C
Reset cause: POR
Model: DAVE i.MX8MM MITO8MMINI board on SBCX
DRAM:  2 GiB
PMIC: PF8121 detected
MMC:   FSL_SDHC: 0, FSL_SDHC: 1
Loading Environment from MMC... Card did not respond to voltage select!
*** Warning - No block device, using default environment

Fail to setup video link
In:    serial
Out:   serial
Err:   serial

 BuildInfo:
  - ATF a72158b
  - U-Boot 2020.04-desk-mx8m-l-2.0.0-rc2

SOM ConfigID#: 00000002
SOM UniqueID#: dab429e1:09166209
CB ConfigID#: 00001003
CB UniqueID#: c6000035:c3701c2d
SOM: MX8MM-Mito8MMini on SBCX
Card did not respond to voltage select!
Detect USB boot. Will enter fastboot mode!
Net:
Warning: ethernet@30be0000 (eth0) using random MAC address - 12:04:da:79:87:a3
eth0: ethernet@30be0000
Fastboot: Normal
Boot from USB for mfgtools
*** Warning - Use default environment for                                mfgtools
, using default environment

Run bootcmd_mfg: run mfgtool_args;if iminfo ${initrd_addr}; then if test ${tee} = yes; then bootm ${tee_addr} ${initrd_addr} ${fdt_addr}; else booti ${loadaddr} ${initrd_addr} ${fdt_addr}; fi; else echo "Run fastboot ..."; fastboot 0; fi;
Hit any key to stop autoboot:  0

## Checking Image at 43800000 ...
Unknown image format!
Run fastboot ...
No USB device found
USB init failed: -19
u-boot=>