7.26.NXP i.MX 9 Series

Building on the market-proven i.MX 6 and i.MX 8 series, i.MX 9 series applicationsprocessors bring together higher performance applications cores, an independentMCU-like real-time domain, Energy Flex architecture, state-of-the-art securitywith EdgeLock® secure enclave and dedicated multi-sensory data processing engines(graphics, image, display, audio and voice). The i.MX 9 series, part of the EdgeVerse™edge computing platform, integrates hardware neural processing units across manymembers of the series for acceleration of machine learning applications at the edgei.MX9 Applications Processors.

7.26.1.Boot Sequence

BootROM –> SPL –> BL31 –> BL33(u-boot) –> Linux kernel

7.26.2.How to build

7.26.2.1.Build Procedure

  • Prepare AARCH64 toolchain.

  • Get the ELE FW image from NXP linux SDK package

  • Build SPL and u-boot firstly, and get binary images: u-boot-spl.bin,u-boot.bin and dtb

  • Build TF-A

    Build bl31:

    CROSS_COMPILE=aarch64-linux-gnu-makePLAT=<Target_SoC>bl31

    Target_SoC should be “imx93” for i.MX93 SoC.

7.26.2.2.Deploy TF-A Images

TF-A binary(bl31.bin), u-boot-spl.bin u-boot.bin, ELE FW image are combinedtogether to generate a binary file called flash.bin, the imx-mkimage tool isused to generate flash.bin, and flash.bin needs to be flashed into SD cardwith certain offset for BOOT ROM.

7.26.2.3.Reference Documentation

Details on how to prepare, generate & deploy the boot image be found in following documents:

  • i.MX Linux User’s Guidelink

  • i.MX Linux Reference Manuallink