Difference between revisions of "DESK-MX-L-AN-0008: How to use UUU update utility"

From DAVE Developer's Wiki
Jump to: navigation, search
(MITO 8M Mini)
(9 intermediate revisions by 2 users not shown)
Line 7: Line 7:
  
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
!Issue Date
+
!Version
 +
!Date
 
!Development Kit version
 
!Development Kit version
 
|-
 
|-
| {{oldid|16675|2022/10/07}}
+
| 1.0.0
|DESK-MX8M-L-2.0.0-rc2
+
| 07/10/2022
 +
|{{pageoldid|DESK-MX8M-L|16675|DESK-MX8M-L-2.0.0-rc2}}
 
|-
 
|-
| {{oldid|18382|2023/08/11}}
 
|DESK-MX8M-L-4.0.0
 
 
|}
 
|}
  
Line 26: Line 26:
  
 
= Build the UUU =
 
= Build the UUU =
The following instructions are used for building the <code>uuu</code> utility directly inside the {{pageoldid|DESK-MX8M-L|16134|DESK-MX8M-L-4.0.0}} Virtual Machine
+
The following instructions are used for building the <code>uuu</code> utility directly inside the {{pageoldid|DESK-MX8M-L|16134|DESK-MX8M-L-2.0.0-rc2}} Virtual Machine
  
 
As reported in github README, the following Ubuntu packages have to be installed:
 
As reported in github README, the following Ubuntu packages have to be installed:
Line 37: Line 37:
 
</pre>
 
</pre>
  
For some Ubuntu 20.04 <code>libzstd</code> incompatibility, it is required to checkout a previous release:
+
For some Ubuntu 16.04 <code>libzstd</code> incompatibility, it is required to checkout a previous release:
 
<pre>
 
<pre>
git checkout uuu_1.5.109
+
git checkout uuu_1.4.201
 
</pre>
 
</pre>
  
Line 58: Line 58:
  
 
== ORCA ==
 
== ORCA ==
MVM USB settings are displayed here below:
 
 
 
[[File:DESK-MX6-L-uuu-ORCA-USB-Settings.png | 600px]]
 
[[File:DESK-MX6-L-uuu-ORCA-USB-Settings.png | 600px]]
 
* [[ORCA_SOM/ORCA_Evaluation_Kit/Getting_started/Boot_Configurations | Boot configurations]] for ''USB Serial Download'', i.e. with S2 switches BOOT_MODE[3:0] as <code>0001</code>
 
** J3 USB-C port is used for Power Delivery
 
** J4 USB-C port is used for USB serial download connection
 
 
[[File:ORCA_EVK_USB.png | thumb |center | 500px | ORCA USB serial download connection]]
 
  
 
== MITO 8M Mini ==
 
== MITO 8M Mini ==
Line 83: Line 75:
 
= uuu examples =
 
= uuu examples =
 
=== [[ORCA_SOM | ORCA]] ===
 
=== [[ORCA_SOM | ORCA]] ===
* device identification
 
<pre class="workstation-terminal">
 
dvdk@vagrant:~/mfgtools$ uuu -lsusb
 
uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.5.109-0-g6c3190c
 
 
Connected Known USB Devices
 
        Path    Chip    Pro    Vid    Pid    BcdVersion
 
        ==================================================
 
        1:1      MX865  SDPS:  0x1FC9 0x0146  0x0002
 
 
dvdk@vagrant:~/mfgtools$
 
 
</pre>
 
* binary download and programming
 
 
<pre class="workstation-terminal">
 
<pre class="workstation-terminal">
dvdk@vagrant:~/mfgtools$ sudo uuu -d desk-mx8m-l-4.0.0_imx8mp_flash.bin
 
uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.5.109-0-g6c3190c
 
 
Success 1    Failure 0                                                                                                                                                                         
 
                                                                                                                                                                                               
 
                                                                                                                                                                                               
 
1:1      2/ 2 [Done                                  ] SDPS: done                                                                                         
 
 
</pre>
 
* once downloaded, the <code>flash.bin</code> boot image will be directly executed on the target and the serial console will show the u-boot messages:
 
<pre class="workstation-terminal">
 
U-Boot SPL 2022.04-desk-mx8m-l-4.0.0 (Jul 21 2023 - 14:01:51 +0200)
 
WARNING: SOM ConfigID on block 0 is UNLOCKED
 
SOM ConfigID#: 00000005
 
DDRINFO: start DRAM init
 
DDRINFO: DRAM rate 4000MTS
 
 
U-Boot SPL 2022.04-desk-mx8m-l-4.0.0 (Jul 21 2023 - 14:01:51 +0200)
 
WARNING: SOM ConfigID on block 0 is UNLOCKED
 
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
 
Boot Stage: USB boot
 
 
U-Boot SPL 2022.04-desk-mx8m-l-4.0.0 (Jul 21 2023 - 14:01:51 +0200)
 
WARNING: SOM ConfigID on block 0 is UNLOCKED
 
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
 
Boot Stage: USB boot
 
Find img info 0x&480265a0, size 888
 
Need continue download 1024
 
WARNING: CB ConfigID on block 0 is UNLOCKED
 
Download 1075808, Total size 1077440
 
WARNING: CB ConfigID on block 0 is UNLOCKED
 
Failed to find node!, err: -1!
 
Failed to find node!, err: -1!
 
NOTICE:  BL31: v2.6(release):desk-mx8m-l-4.0.0-rc2-0-g2b811b9b8
 
NOTICE:  BL31: Built : 19:00:25, Jun 29 2023
 
 
 
U-Boot 2022.04-desk-mx8m-l-4.0.0 (Jul 21 2023 - 14:01:51 +0200), Build: desk-mx8m-l-4.0.0
 
 
CPU:  Freescale i.MX8MP[8] rev1.1 1600 MHz (running at 1200 MHz)
 
CPU:  Industrial temperature grade (-40C to 105C) at 37C
 
Reset cause: POR
 
Model: DAVE i.MX8MPlus on SBC ORCA Rev A
 
DRAM:  6 GiB
 
Relocating to fff05000, new gd at fdbffda0, sp at fdbf5350
 
WARNING: CB ConfigID on block 0 is UNLOCKED
 
TCPC:  Vendor ID [0x1fc9], Product ID [0x5110], Addr [I2C2 0x50]
 
SNK.Power1.5 on CC2
 
PDO 0: type 0, 5000 mV, 500 mA [RSHUDE]
 
PDO 1: type 0, 9000 mV, 2180 mA []
 
PDO 2: type 0, 12000 mV, 1880 mA []
 
PDO 3: type 0, 15000 mV, 1510 mA []
 
PDO 4: type 0, 20000 mV, 1130 mA []
 
PDO 5: type 3, undefined
 
Requesting PDO 2: 12000 mV, 1880 mA
 
Source accept request
 
PD source ready!
 
tcpc_pd_receive_message: Polling ALERT register, TCPC_ALERT_RX_STATUS bit failed, ret = -62
 
TCPC:  Vendor ID [0x0], Product ID [0x202], Addr [I2C2 0x3d]
 
Core:  175 devices, 20 uclasses, devicetree: fit
 
MMC:  FSL_SDHC: 1, FSL_SDHC: 2
 
Loading Environment from nowhere... OK
 
Fail to setup video link
 
In:    serial
 
Out:  serial
 
Err:  serial
 
 
BuildInfo:
 
  - ATF 2b811b9
 
 
WARNING: SOM ConfigID on block 0 is UNLOCKED
 
SOM ConfigID#: 00000005
 
SOM UniqueID#: 1e261000:55aa2564:469660d3:d0c2b602
 
CB ConfigID#: 00001008
 
CB UniqueID#: b7000035:c48de62d
 
WARNING: SOM ConfigID on block 0 is UNLOCKED
 
SOM: MX8MP-Mito8MPlus on SBC-ORCA HDMI + LVDStoHDMI
 
Card did not respond to voltage select! : -110
 
Detect USB boot. Will enter fastboot mode!
 
Net:
 
Warning: ethernet@30bf0000 (eth1) using random MAC address - 7e:fa:25:77:16:e1
 
 
Warning: ethernet@30be0000 (eth0) using random MAC address - 82:df:7f:29:63:b5
 
eth0: ethernet@30be0000, eth1: ethernet@30bf0000 [PRIME]
 
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 ...
 
 
 
</pre>
 
</pre>
  
Line 212: Line 82:
 
<pre class="workstation-terminal">
 
<pre class="workstation-terminal">
 
dvdk@vagrant:~/mfgtools$ uuu -lsusb
 
dvdk@vagrant:~/mfgtools$ uuu -lsusb
uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.5.109-0-g6c3190c
+
uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.4.201-0-g005ff6f
  
 
Connected Known USB Devices
 
Connected Known USB Devices
        Path     Chip   Pro     Vid     Pid     BcdVersion
+
Path Chip Pro Vid Pid BcdVersion
        ==================================================
+
==================================================
        1:1     MX8MM   SDP:   0x1FC9 0x0134   0x0101
+
1:1 MX8MM SDP: 0x1FC9 0x0134 0x0101
  
 
</pre>
 
</pre>
 
* binary download and programming
 
* binary download and programming
 
<pre class="workstation-terminal">
 
<pre class="workstation-terminal">
dvdk@vagrant:~/mfgtools$ sudo uuu -d desk-mx8m-l-4.0.0_imx8mm_flash.bin
+
dvdk@vagrant:~/mfgtools$ sudo uuu -d flash.bin  
uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.5.109-0-g6c3190c
+
uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.4.201-0-g005ff6f
  
Success 10   Failure 0                                                                                                                                                                        
+
Success 22   Failure 0                                                                                                                                      
                                                                                                                                                                                               
+
                                                                                                                                                             
                                                                                                                                                                                               
+
                                                                                                                                                             
1:1      3/ 3 [Done                                  ] SDPV: done
+
1:1      2/ 2 [Done                                  ] SDP: done                                                                                              
1:2      2/ 2 [Done                                  ] SDP: done
+
1:2      3/ 3 [Done                                  ] SDPV: done                                                                                            
  
 
</pre>
 
</pre>
 
* once downloaded, the <code>flash.bin</code> boot image will be directly executed on the target and the serial console will show the u-boot messages:
 
* once downloaded, the <code>flash.bin</code> boot image will be directly executed on the target and the serial console will show the u-boot messages:
 
<pre class="workstation-terminal">
 
<pre class="workstation-terminal">
U-Boot SPL 2022.04-desk-mx8m-l-4.0.0 (Jul 21 2023 - 14:02:10 +0200)
+
U-Boot SPL 2020.04-desk-mx8m-l-2.0.0-rc2 (Oct 07 2022 - 14:57:02 +0000)
 
WARNING: SOM ConfigID on block 0 is UNLOCKED
 
WARNING: SOM ConfigID on block 0 is UNLOCKED
 
SOM ConfigID#: 00000002
 
SOM ConfigID#: 00000002
Line 245: Line 115:
 
SDP: initialize...
 
SDP: initialize...
 
SDP: handle requests...
 
SDP: handle requests...
Downloading file of size 1216224 to 0x40400000... done
+
Downloading file of size 1099200 to 0x40400000... done
 
Jumping to header at 0x40400000
 
Jumping to header at 0x40400000
 
Header Tag is not an IMX image
 
Header Tag is not an IMX image
Found header at 0x404293a0
+
Found header at 0x404291a0
 +
WARNING: CB ConfigID on block 0 is UNLOCKED
 +
WARNING: CB ConfigID on block 0 is UNLOCKED
 +
WARNING: CB ConfigID on block 0 is UNLOCKED
 
WARNING: CB ConfigID on block 0 is UNLOCKED
 
WARNING: CB ConfigID on block 0 is UNLOCKED
NOTICE:  BL31: v2.6(release):desk-mx8m-l-4.0.0-rc1-0-g704f320b3
+
NOTICE:  BL31: v2.2(release):rel_imx_5.4.70_2.3.2_rc1-4-ga72158b5e
NOTICE:  BL31: Built : 07:49:14, Jun 20 2023
+
NOTICE:  BL31: Built : 15:54:43, Feb 17 2022
 
 
  
U-Boot 2022.04-desk-mx8m-l-4.0.0 (Jul 21 2023 - 14:02:10 +0200), Build: desk-mx8m-l-4.0.0
+
U-Boot 2020.04-desk-mx8m-l-2.0.0-rc2 (Oct 07 2022 - 14:57:02 +0000)
  
CPU:  Freescale i.MX8MMQ rev1.0 1600 MHz (running at 1200 MHz)
+
CPU:  i.MX8MMQ rev1.0 1600 MHz (running at 1200 MHz)
 
CPU:  Industrial temperature grade (-40C to 105C) at 58C
 
CPU:  Industrial temperature grade (-40C to 105C) at 58C
 
Reset cause: POR
 
Reset cause: POR
 
Model: DAVE i.MX8MM MITO8MMINI board on SBCX
 
Model: DAVE i.MX8MM MITO8MMINI board on SBCX
 
DRAM:  2 GiB
 
DRAM:  2 GiB
Relocating to bff0b000, new gd at bdf0adb0, sp at bdf00460
 
 
WARNING: CB ConfigID on block 0 is UNLOCKED
 
WARNING: CB ConfigID on block 0 is UNLOCKED
 
PMIC: PF8121 detected
 
PMIC: PF8121 detected
Core:  149 devices, 19 uclasses, devicetree: fit
 
 
MMC:  FSL_SDHC: 0, FSL_SDHC: 1
 
MMC:  FSL_SDHC: 0, FSL_SDHC: 1
Loading Environment from MMC... Card did not respond to voltage select! : -110
+
Loading Environment from MMC... Card did not respond to voltage select!
 
*** Warning - No block device, using default environment
 
*** Warning - No block device, using default environment
  
Line 275: Line 145:
  
 
  BuildInfo:
 
  BuildInfo:
   - ATF 704f320
+
   - ATF a72158b
 +
  - U-Boot 2020.04-desk-mx8m-l-2.0.0-rc2
  
 
WARNING: SOM ConfigID on block 0 is UNLOCKED
 
WARNING: SOM ConfigID on block 0 is UNLOCKED
 
SOM ConfigID#: 00000002
 
SOM ConfigID#: 00000002
SOM UniqueID#: c6536d65:222bc1aa
+
SOM UniqueID#: dab429e1:09166209
CB ConfigID#: 0000100a
+
CB ConfigID#: 00001003
CB UniqueID#: 09000035:c4b0bd2d
+
CB UniqueID#: c6000035:c3701c2d
 
WARNING: SOM ConfigID on block 0 is UNLOCKED
 
WARNING: SOM ConfigID on block 0 is UNLOCKED
SOM: MX8MM-Mito8MMini on SBCX-MINI LVDStoHDMI converterI
+
SOM: MX8MM-Mito8MMini on SBCX
Card did not respond to voltage select! : -110
+
Card did not respond to voltage select!
 
Detect USB boot. Will enter fastboot mode!
 
Detect USB boot. Will enter fastboot mode!
Net:  
+
Net:
Warning: ethernet@30be0000 (eth0) using random MAC address - 2e:d5:59:c1:4b:ae
+
Warning: ethernet@30be0000 (eth0) using random MAC address - 12:04:da:79:87:a3
 
eth0: ethernet@30be0000
 
eth0: ethernet@30be0000
 
Fastboot: Normal
 
Fastboot: Normal
 
Boot from USB for mfgtools
 
Boot from USB for mfgtools
*** Warning - Use default environment for mfgtools
+
*** Warning - Use default environment for                               mfgtools
 
, using default environment
 
, 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;
 
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  
+
Hit any key to stop autoboot:  0
  
 
## Checking Image at 43800000 ...
 
## Checking Image at 43800000 ...
Line 302: Line 173:
 
No USB device found
 
No USB device found
 
USB init failed: -19
 
USB init failed: -19
u-boot=>  
+
u-boot=>
 
</pre>
 
</pre>

Revision as of 07:54, 10 October 2022

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]

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

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]


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)
WARNING: SOM ConfigID on block 0 is UNLOCKED
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
WARNING: CB ConfigID on block 0 is UNLOCKED
WARNING: CB ConfigID on block 0 is UNLOCKED
WARNING: CB ConfigID on block 0 is UNLOCKED
WARNING: CB ConfigID on block 0 is UNLOCKED
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
WARNING: CB ConfigID on block 0 is UNLOCKED
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

WARNING: SOM ConfigID on block 0 is UNLOCKED
SOM ConfigID#: 00000002
SOM UniqueID#: dab429e1:09166209
CB ConfigID#: 00001003
CB UniqueID#: c6000035:c3701c2d
WARNING: SOM ConfigID on block 0 is UNLOCKED
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=>