blob: 49ba37412263b973a327ffa9d067ee2f1f0703e4 [file] [log] [blame]
Paul Beesleyf3653a62019-05-22 11:22:44 +01001NXP i.MX 8 Series
2=================
Anson Huang73b18532018-06-05 16:13:45 +08003
4The i.MX 8 series of applications processors is a feature- and
5performance-scalable multi-core platform that includes single-,
6dual-, and quad-core families based on the Arm® Cortex®
7architectureincluding combined Cortex-A72 + Cortex-A53,
8Cortex-A35, and Cortex-M4 based solutions for advanced graphics,
9imaging, machine vision, audio, voice, video, and safety-critical
10applications.
11
Anson Huang62f8f7a2018-06-11 12:54:05 +080012The i.MX8QM is with 2 Cortex-A72 ARM core, 4 Cortex-A53 ARM core
13and 1 Cortex-M4 system controller.
14
Anson Huang73b18532018-06-05 16:13:45 +080015The i.MX8QX is with 4 Cortex-A35 ARM core and 1 Cortex-M4 system
16controller.
17
18The System Controller (SC) represents the evolution of centralized
19control for system-level resources on i.MX8. The heart of the system
20controller is a Cortex-M4 that executes system controller firmware.
21
22Boot Sequence
Paul Beesleyf3653a62019-05-22 11:22:44 +010023-------------
Anson Huang73b18532018-06-05 16:13:45 +080024
25Bootrom --> BL31 --> BL33(u-boot) --> Linux kernel
26
27How to build
Paul Beesleyf3653a62019-05-22 11:22:44 +010028------------
Anson Huang73b18532018-06-05 16:13:45 +080029
30Build Procedure
Paul Beesleyf3653a62019-05-22 11:22:44 +010031~~~~~~~~~~~~~~~
Anson Huang73b18532018-06-05 16:13:45 +080032
33- Prepare AARCH64 toolchain.
34
35- Build System Controller Firmware and u-boot firstly, and get binary images: scfw_tcm.bin and u-boot.bin
36
37- Build TF-A
38
39 Build bl31:
40
41 .. code:: shell
42
Mark Dykesef3a4562020-01-08 20:37:18 +000043 CROSS_COMPILE=aarch64-linux-gnu- make PLAT=<Target_SoC> bl31
Anson Huang73b18532018-06-05 16:13:45 +080044
Anson Huang62f8f7a2018-06-11 12:54:05 +080045 Target_SoC should be "imx8qm" for i.MX8QM SoC.
Anson Huang73b18532018-06-05 16:13:45 +080046 Target_SoC should be "imx8qx" for i.MX8QX SoC.
47
48Deploy TF-A Images
Paul Beesleyf3653a62019-05-22 11:22:44 +010049~~~~~~~~~~~~~~~~~~
Anson Huang73b18532018-06-05 16:13:45 +080050
51TF-A binary(bl31.bin), scfw_tcm.bin and u-boot.bin are combined together
52to generate a binary file called flash.bin, the imx-mkimage tool is used
53to generate flash.bin, and flash.bin needs to be flashed into SD card
54with certain offset for BOOT ROM. The system controller firmware,
55u-boot and imx-mkimage will be upstreamed soon, this doc will be updated
56once they are ready, and the link will be posted.
57
58.. _i.MX8: https://www.nxp.com/products/processors-and-microcontrollers/applications-processors/i.mx-applications-processors/i.mx-8-processors/i.mx-8-family-arm-cortex-a53-cortex-a72-virtualization-vision-3d-graphics-4k-video:i.MX8