blob: bd4be1dbeb492049124fae1dded6330c75fee715 [file] [log] [blame]
Oliver Grautec06febd2020-11-20 15:05:51 +01001.. SPDX-License-Identifier: GPL-2.0+
2
3U-Boot for the NXP i.MX8QM ROM 7720a1 board
4===========================================
5
6Quick Start
7-----------
8
9- Build the ARM Trusted firmware binary
10- Get scfw_tcm.bin and ahab-container.img
11- Get imx-mkimage
12- Build U-Boot
13- Build imx-mkimage
14- Flash the binary into the SD card
15- Boot
16
17Get and Build the ARM Trusted firmware
18--------------------------------------
19
20.. code-block:: bash
21
22 $ git clone https://source.codeaurora.org/external/imx/imx-atf
23 $ cd imx-atf/
24 $ git checkout origin/imx_4.14.78_1.0.0_ga -b imx_4.14.78_1.0.0_ga
25 $ make PLAT=imx8qm bl31
26
27Get scfw_tcm.bin and ahab-container.img
28---------------------------------------
29
30.. code-block:: bash
31
32 $ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/imx-sc-firmware-1.1.bin
33 $ chmod +x imx-sc-firmware-1.1.bin
34 $ ./imx-sc-firmware-1.1.bin
35 $ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-imx-8.0.bin
36 $ chmod +x firmware-imx-8.0.bin
37 $ ./firmware-imx-8.0.bin
38
39Or use this to avoid running random scripts from the internet,
40but note that you must agree to the license the script displays:
41
42.. code-block:: bash
43
44 $ dd if=imx-sc-firmware-1.1.bin of=imx-sc-firmware-1.1.tar.bz2 bs=37185 skip=1
45 $ tar -xf imx-sc-firmware-1.1.tar.bz2
46 $ cp imx-sc-firmware-1.1/mx8qm-val-scfw-tcm.bin $(builddir)
47
48 $ dd if=firmware-imx-8.0.bin of=firmware-imx-8.0.tar.bz2 bs=37180 skip=1
49 $ tar -xf firmware-imx-8.0.tar.bz2
50 $ cp firmware-imx-8.0/firmware/seco/mx8qm-ahab-container.img $(builddir)
51
52Build U-Boot
53------------
54
55.. code-block:: bash
56
57 $ export ATF_LOAD_ADDR=0x80000000
58 $ export BL33_LOAD_ADDR=0x80020000
59 $ make imx8qm_rom7720_a1_4G_defconfig
60 $ make u-boot.bin
61 $ make flash.bin
62
63Flash the binary into the SD card
64---------------------------------
65
66Burn the flash.bin binary to SD card offset 32KB:
67
68.. code-block:: bash
69
70 $ sudo dd if=flash.bin of=/dev/sd[x] bs=1k seek=32 conv=fsync
71
72Boot
73----
74
75Set Boot switch SW2: 1100.