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