Boot from USB OTG - i.MX6
Revisions and Notes
Date
Owner
Revision
Notes
23 Feb 2022
1.0
Initial release
Introduction
The following documentation provides a quick guide to boot from USB OTG port.
Step-by-step
1. Clone a repository to install and build imx_usb_loader application by run the follwoing:
git clone https://github.com/boundarydevices/imx_usb_loader.git
cd imx_usb_loader
make imx_usb_loader : This application implements the Serial Download Protocol that the i.MX6 Boot-ROM uses to communicate. It is available on github account of boundarydevices.
The final binary is called imx_usb and can be executed in place.
2. Install SPL & U-Boot binaries:
wget https://solid-run-images.sos-de-fra-1.exo.io/IMX6/U-Boot/v2018.01/spl-imx6-sdhc.bin
wget https://solid-run-images.sos-de-fra-1.exo.io/IMX6/U-Boot/v2018.01/u-boot-imx6-sdhc.imgYou can Install U-Boot & SPL binaries from SolidRun Images site.
3. Serial connection
Please see our pages Cubox-i, HummingBoard Edge under serial connection section.
4. Connect your Male to Male USB-A cable to the OTG port on your device.
Make sure you can detect the USB = NXP Semiconductors in the usb devices list with the exact same vendor ID as shown in the following example:

5. Run the script imx_usb exec with the SPL to load SPL:
On success, SPL should announce itself on the serial console:

6. Run the script imx_usb exec with the U-Boot to load U-Boot :
On success, U-Boot should announce itself on the serial console:

Success Indicator for Cubox-i The Cubox-i has an LED that is off by default and turned on by u-boot. So if the LED turns red, U-Boot was loaded successfully.
At this point U-Boot has been loaded to RAM and is running.
Last updated