blob: 4adaae3d2149bdcfa6d5517c4130d399e53e48d7 [file] [log] [blame]
Jacky Bai9ac703b2023-06-09 14:36:56 +08001NXP i.MX 9 Series
2==================
3
4Building on the market-proven i.MX 6 and i.MX 8 series, i.MX 9 series applications
5processors bring together higher performance applications cores, an independent
6MCU-like real-time domain, Energy Flex architecture, state-of-the-art security
7with EdgeLock® secure enclave and dedicated multi-sensory data processing engines
8(graphics, image, display, audio and voice). The i.MX 9 series, part of the EdgeVerse
9edge computing platform, integrates hardware neural processing units across many
10members of the series for acceleration of machine learning applications at the edge
11`i.MX9 Applications Processors`_.
12
13Boot Sequence
14-------------
15
16BootROM --> SPL --> BL31 --> BL33(u-boot) --> Linux kernel
17
18How to build
19------------
20
21Build Procedure
22~~~~~~~~~~~~~~~
23
24- Prepare AARCH64 toolchain.
25
26- Get the ELE FW image from NXP linux SDK package
27
28- Build SPL and u-boot firstly, and get binary images: u-boot-spl.bin,
29 u-boot.bin and dtb
30
31- Build TF-A
32
33 Build bl31:
34
35 .. code:: shell
36
37 CROSS_COMPILE=aarch64-linux-gnu- make PLAT=<Target_SoC> bl31
38
39 Target_SoC should be "imx93" for i.MX93 SoC.
40
41Deploy TF-A Images
42~~~~~~~~~~~~~~~~~~
43
44TF-A binary(bl31.bin), u-boot-spl.bin u-boot.bin, ELE FW image are combined
45together to generate a binary file called flash.bin, the imx-mkimage tool is
46used to generate flash.bin, and flash.bin needs to be flashed into SD card
47with certain offset for BOOT ROM.
48
49Reference Documentation
50~~~~~~~~~~~~~~~~~~~~~~~
51
52Details on how to prepare, generate & deploy the boot image be found in following documents:
53
54- i.MX Linux User's Guide
55 `link <https://www.nxp.com/design/software/embedded-software/i-mx-software/embedded-linux-for-i-mx-applications-processors:IMXLINUX>`__
56- i.MX Linux Reference Manual
57 `link <https://www.nxp.com/design/software/embedded-software/i-mx-software/embedded-linux-for-i-mx-applications-processors:IMXLINUX>`__
58
59.. _i.MX9 Applications Processors: https://www.nxp.com/products/processors-and-microcontrollers/arm-processors/i-mx-applications-processors/i-mx-9-processors:IMX9-PROCESSORS
60