mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-24 02:48:51 +09:00
![Marcel Ziswiler](/assets/img/avatar_default.png)
This commit adds initial support for the Toradex Colibri iMX8QXP 2GB WB IT V1.0B module. Unlike the V1.0A early access samples exclusively booting from SD card, they are now strapped to boot from eFuses which are factory fused to properly boot from their on-module eMMC. U-Boot supports either booting from the on-module eMMC or may be used for recovery purpose using the universal update utility (uuu) aka mfgtools 3.0. Functionality wise the following is known to be working: - eMMC and MMC/SD card - Ethernet - GPIOs - I2C Unfortunately, there is no USB functionality for the i.MX 8QXP as of yet. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Reviewed-by: Igor Opaniuk <igor.opaniuk@toradex.com>
67 lines
1.9 KiB
Plaintext
67 lines
1.9 KiB
Plaintext
U-Boot for the Toradex Colibri iMX8QXP V1.0B Module
|
|
|
|
Quick Start
|
|
===========
|
|
|
|
- Build the ARM trusted firmware binary
|
|
- Get scfw_tcm.bin and ahab-container.img
|
|
- Build U-Boot
|
|
- Load U-Boot binary using uuu
|
|
- Flash U-Boot binary into the eMMC
|
|
- Boot
|
|
|
|
Get and Build the ARM Trusted Firmware
|
|
======================================
|
|
|
|
$ git clone -b imx_4.14.78_1.0.0_ga https://source.codeaurora.org/external/imx/imx-atf
|
|
$ cd imx-atf/
|
|
$ make PLAT=imx8qxp bl31
|
|
|
|
Get scfw_tcm.bin and ahab-container.img
|
|
=======================================
|
|
|
|
$ wget https://github.com/toradex/meta-fsl-bsp-release/blob/toradex-sumo-4.14.78-1.0.0_ga-bringup/imx/meta-bsp/recipes-bsp/imx-sc-firmware/files/mx8qx-colibri-scfw-tcm.bin?raw=true
|
|
$ mv mx8qx-colibri-scfw-tcm.bin\?raw\=true mx8qx-colibri-scfw-tcm.bin
|
|
$ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-imx-8.0.bin
|
|
$ chmod +x firmware-imx-8.0.bin
|
|
$ ./firmware-imx-8.0.bin
|
|
|
|
Copy the following binaries to the U-Boot folder:
|
|
|
|
$ cp imx-atf/build/imx8qxp/release/bl31.bin .
|
|
$ cp u-boot/u-boot.bin .
|
|
|
|
Copy the following firmware to the U-Boot folder:
|
|
|
|
$ cp firmware-imx-8.0/firmware/seco/ahab-container.img .
|
|
|
|
Build U-Boot
|
|
============
|
|
|
|
$ make colibri-imx8qxp_defconfig
|
|
$ make u-boot-dtb.imx
|
|
|
|
Load the U-Boot Binary Using UUU
|
|
================================
|
|
|
|
Get the latest version of the universal update utility (uuu) aka mfgtools 3.0:
|
|
|
|
https://community.nxp.com/external-link.jspa?url=https%3A%2F%2Fgithub.com%2FNXPmicro%2Fmfgtools%2Freleases
|
|
|
|
Put the module into USB recovery aka serial downloader mode, connect USB device
|
|
to your host and execute uuu:
|
|
|
|
sudo ./uuu u-boot/u-boot-dtb.imx
|
|
|
|
Flash the U-Boot Binary into the eMMC
|
|
=====================================
|
|
|
|
Burn the u-boot-dtb.imx binary to the primary eMMC hardware boot area partition:
|
|
|
|
load mmc 1:1 $loadaddr u-boot-dtb.imx
|
|
setexpr blkcnt ${filesize} + 0x1ff && setexpr blkcnt ${blkcnt} / 0x200
|
|
mmc dev 0 1
|
|
mmc write ${loadaddr} 0x0 ${blkcnt}
|
|
|
|
Boot
|