env: Move env_set() to env.h
[oweals/u-boot.git] / board / toradex / apalis-imx8 / README
1 U-Boot for the Toradex Apalis iMX8QM V1.0B Module
2
3 Quick Start
4 ===========
5
6 - Build the ARM trusted firmware binary
7 - Get scfw_tcm.bin and ahab-container.img
8 - Build U-Boot
9 - Load U-Boot binary using uuu
10 - Flash U-Boot binary into the eMMC
11 - Boot
12
13 Get and Build the ARM Trusted Firmware
14 ======================================
15
16 $ git clone -b imx_4.14.78_1.0.0_ga https://source.codeaurora.org/external/imx/imx-atf
17 $ cd imx-atf/
18 $ make PLAT=imx8qm bl31
19
20 Get scfw_tcm.bin and ahab-container.img
21 =======================================
22
23 $ 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/mx8qm-apalis-scfw-tcm.bin?raw=true
24 $ mv mx8qm-apalis-scfw-tcm.bin\?raw\=true mx8qm-apalis-scfw-tcm.bin
25 $ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-imx-8.0.bin
26 $ chmod +x firmware-imx-8.0.bin
27 $ ./firmware-imx-8.0.bin
28
29 Copy the following binaries to the U-Boot folder:
30
31 $ cp imx-atf/build/imx8qm/release/bl31.bin .
32 $ cp u-boot/u-boot.bin .
33
34 Copy the following firmware to the U-Boot folder:
35
36 $ cp firmware-imx-8.0/firmware/seco/ahab-container.img .
37
38 Build U-Boot
39 ============
40
41 $ make apalis-imx8qm_defconfig
42 $ make u-boot-dtb.imx
43
44 Load the U-Boot Binary Using UUU
45 ================================
46
47 Get the latest version of the universal update utility (uuu) aka mfgtools 3.0:
48
49 https://community.nxp.com/external-link.jspa?url=https%3A%2F%2Fgithub.com%2FNXPmicro%2Fmfgtools%2Freleases
50
51 Put the module into USB recovery aka serial downloader mode, connect USB device
52 to your host and execute uuu:
53
54 sudo ./uuu u-boot/u-boot-dtb.imx
55
56 Flash the U-Boot Binary into the eMMC
57 =====================================
58
59 Burn the u-boot-dtb.imx binary to the primary eMMC hardware boot area partition:
60
61 load mmc 1:1 $loadaddr u-boot-dtb.imx
62 setexpr blkcnt ${filesize} + 0x1ff && setexpr blkcnt ${blkcnt} / 0x200
63 mmc dev 0 1
64 mmc write ${loadaddr} 0x0 ${blkcnt}
65
66 Boot