1*91f16700SchasingluluTexas Instruments K3 2*91f16700Schasinglulu==================== 3*91f16700Schasinglulu 4*91f16700SchasingluluTrusted Firmware-A (TF-A) implements the EL3 firmware layer for Texas Instruments K3 SoCs. 5*91f16700Schasinglulu 6*91f16700SchasingluluBoot Flow 7*91f16700Schasinglulu--------- 8*91f16700Schasinglulu 9*91f16700Schasinglulu:: 10*91f16700Schasinglulu 11*91f16700Schasinglulu R5(U-Boot) --> TF-A BL31 --> BL32(OP-TEE) --> TF-A BL31 --> BL33(U-Boot) --> Linux 12*91f16700Schasinglulu \ 13*91f16700Schasinglulu Optional direct to Linux boot 14*91f16700Schasinglulu \ 15*91f16700Schasinglulu --> BL33(Linux) 16*91f16700Schasinglulu 17*91f16700SchasingluluTexas Instruments K3 SoCs contain an R5 processor used as the boot master, it 18*91f16700Schasinglululoads the needed images for A53 startup, because of this we do not need BL1 or 19*91f16700SchasingluluBL2 TF-A stages. 20*91f16700Schasinglulu 21*91f16700SchasingluluBuild Instructions 22*91f16700Schasinglulu------------------ 23*91f16700Schasinglulu 24*91f16700Schasingluluhttps://github.com/ARM-software/arm-trusted-firmware.git 25*91f16700Schasinglulu 26*91f16700SchasingluluTF-A: 27*91f16700Schasinglulu 28*91f16700Schasinglulu.. code:: shell 29*91f16700Schasinglulu 30*91f16700Schasinglulu make CROSS_COMPILE=aarch64-linux-gnu- PLAT=k3 SPD=opteed all 31*91f16700Schasinglulu 32*91f16700SchasingluluOP-TEE: 33*91f16700Schasinglulu 34*91f16700Schasinglulu.. code:: shell 35*91f16700Schasinglulu 36*91f16700Schasinglulu make ARCH=arm CROSS_COMPILE64=aarch64-linux-gnu- PLATFORM=k3 CFG_ARM64_core=y all 37*91f16700Schasinglulu 38*91f16700SchasingluluR5 U-Boot: 39*91f16700Schasinglulu 40*91f16700Schasinglulu.. code:: shell 41*91f16700Schasinglulu 42*91f16700Schasinglulu make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- am65x_evm_r5_defconfig 43*91f16700Schasinglulu make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- SYSFW=<path to SYSFW> 44*91f16700Schasinglulu 45*91f16700SchasingluluA53 U-Boot: 46*91f16700Schasinglulu 47*91f16700Schasinglulu.. code:: shell 48*91f16700Schasinglulu 49*91f16700Schasinglulu make ARCH=arm CROSS_COMPILE=aarch64-linux-gnu- am65x_evm_a53_defconfig 50*91f16700Schasinglulu make ARCH=arm CROSS_COMPILE=aarch64-linux-gnu- ATF=<path> TEE=<path> 51*91f16700Schasinglulu 52*91f16700SchasingluluDeploy Images 53*91f16700Schasinglulu------------- 54*91f16700Schasinglulu 55*91f16700Schasinglulu.. code:: shell 56*91f16700Schasinglulu 57*91f16700Schasinglulu cp tiboot3.bin tispl.bin u-boot.img /sdcard/boot/ 58