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