blob: 08f5949e02d8d2bfba71867d93c2b3ed8fdc67e2 [file] [log] [blame]
Yannic Moog3bc59522023-06-14 09:12:19 +02001.. SPDX-License-Identifier: GPL-2.0+
2
3phyCORE-i.MX 8M Mini
4====================
5
6The phyCORE-i.MX 8M Mini with 2GB of main memory is supported.
7
8Quick Start
9-----------
10
11- Build the ARM Trusted firmware binary
Yannic Moog81ffaed2025-01-10 13:35:38 +010012- Build the OP-TEE binary (optional)
Yannic Moog3bc59522023-06-14 09:12:19 +020013- Get ddr firmware
14- Build U-Boot
15- Boot
16
17Build the ARM Trusted firmware binary
18-------------------------------------
19
20.. code-block:: bash
21
22 $ git clone https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git
23 $ cd trusted-firmware-a
Yannic Moog81ffaed2025-01-10 13:35:38 +010024 $ export CROSS_COMPILE=aarch64-linux-gnu-
Yannic Moog3bc59522023-06-14 09:12:19 +020025 $ export IMX_BOOT_UART_BASE=0x30880000
Yannic Moog81ffaed2025-01-10 13:35:38 +010026 $ # with optee
27 $ make PLAT=imx8mm BL32_BASE=0x56000000 SPD=opteed bl31
28 $ # without optee
Yannic Moog3bc59522023-06-14 09:12:19 +020029 $ make PLAT=imx8mm bl31
30
Yannic Moog81ffaed2025-01-10 13:35:38 +010031.. include:: imx8mm-optee-build.rsti
32
Yannic Moog3bc59522023-06-14 09:12:19 +020033Get the ddr firmware
34--------------------
35
36.. code-block:: bash
37
38 $ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-imx-8.19.bin
39 $ chmod +x firmware-imx-8.19.bin
40 $ ./firmware-imx-8.19.bin
41
42Build U-Boot for SD card
43------------------------
44
45Copy binaries
46^^^^^^^^^^^^^
47
48.. code-block:: bash
49
50 $ cp <TF-A dir>/build/imx8mm/release/bl31.bin .
51 $ cp firmware-imx-8.19/firmware/ddr/synopsys/lpddr4*.bin .
52
53Build U-Boot
54^^^^^^^^^^^^
55
56.. code-block:: bash
57
58 $ make phycore-imx8mm_defconfig
59 $ make flash.bin
60
61Flash SD card
62^^^^^^^^^^^^^
63
64.. code-block:: bash
65
66 $ sudo dd if=flash.bin of=/dev/sd[x] bs=1024 seek=33 conv=sync