BSP: Update the eMMC - WinSystems/c444-manifest GitHub Wiki

Updating the BSP on the eMMC using the uuu tools

NXP provides manufacturing tools to directly access the i.MX 8M device. One of these tools, uuu, can be used to update software on the eMMC device attached to the i.MX8M.

uuu may not be the easiest tool to use nor the fastest, but it does provide a reliable way to recover and re-image a C444 board that is otherwise unable to boot. An alternative would be to program a uSD card and use that for recovery boot.

A USB host-to-host cable is required to program the eMMC. Connect the USB3 port on the C444 to any USB3 port on your development system.

The uuu tool is a Linux based tool that needs to be downloaded and compiled. Instructions are as follows:

  1. Make a work folder where the uuu tool can be compiled.
    mkdir ~/progemmc
    cd ~/progemmc

  2. Download and set up the uuu tool
    sudo apt install libusb-1.0-0-dev libzip-dev libbz2-dev libssl-dev pkg-config build-essential git cmake
    mkdir ~/yocto_setup
    cd ~/yocto_setup
    git clone https://github.com/NXPmicro/mfgtools.git -b uuu_1.3.191
    cd mfgtools
    cmake .
    make

  3. Set the switches on the C444 for uuu programming. Set switch 1 to off and switch 2 to on.

  4. Copy the files needed to flash from the build directory, unzip the rootfs, and flash the eMMC
    cd ~/winYocto/build/tmp/deploy/images/imx8mq-itx-p-c444/
    cp imx-boot-imx8mq-itx-p-c444-sd.bin-flash_evk ~/progemmc/.
    cp winsys-image-demo-imx8mq-itx-p-c444-[date code].rootfs.sdcard.bz2 ~/progemmc/.
    cd ~/progemmc
    bunzip2 -dk -f ./winsys-image-demo-imx8mq-itx-p-c444-[date code].rootfs.sdcard.bz2
    cd ~/yocto_setup/mfgtools/uuu
    sudo ./uuu -b emmc_all ~/progemmc/imx-boot-imx8mq-itx-p-c444-sd.bin-flash_evk ~/progemmc/winsys-image-demo-imx8mq-itx-p-c444-[date code].rootfs.sdcard