1Texas Instruments K3low 2======================== 3 4Trusted Firmware-A (TF-A) implements the EL3 firmware layer for Texas Instruments K3low 5SoCs. The first generation of K3 architecture based devices used a Cortex R5 processor as a 6primary boot loader. But the K3low SoC architecture removed the R5 processor and the 7MPU A53 acts as the primary bootloader. Due to the small static memory foot print on the 8k3low devices, a two stage boot load architecture is used. In the first stage BL1 boot 9loader configures and initializes the DDR4/LPDDR4 subsystem and resets back to the 10ROMCode for second stage booting of BL31 etc. 11 12Boot Flow 13--------- 14 15:: 16 17 TF-A BL1 --> TF-A BL31 --> BL32(OP-TEE) --> TF-A BL31 --> BL33(U-Boot) --> Linux 18 \ 19 Optional direct to Linux boot 20 \ 21 --> BL33(Linux) 22 23Build Instructions 24------------------ 25 26TF-A: 27 28.. code:: shell 29 30 make CROSS_COMPILE=aarch64-none-linux-gnu- ARCH=aarch64 PLAT=k3low TARGET_BOARD=am62lx-evm 31 32 For bl1 only binary builds: 33 34.. code:: shell 35 36 make CROSS_COMPILE=aarch64-none-linux-gnu- ARCH=aarch64 PLAT=k3low TARGET_BOARD=am62lx-evm am62l_bl1 37 38OP-TEE: 39 40.. code:: shell 41 42 make ARCH=arm CROSS_COMPILE64=aarch64-none-linux-gnu- PLATFORM=k3 CFG_ARM64_core=y all 43 44A53 U-Boot: 45 46.. code:: shell 47 48 make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- am62l_evm_defconfig 49 make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- BL1=<path> BL31=<path> TEE=<path> BINMAN_INDIRS=<path> 50 51Deploy Images 52------------- 53 54.. code:: shell 55 56 cp tiboot3.bin tispl.bin u-boot.img /sdcard/boot/ 57