xref: /rk3399_ARM-atf/docs/plat/arm/tc/index.rst (revision c76da4ecabce719c321ba27b323d04de4878894f)
1TC Total Compute Platform
2==========================
3
4Some of the features of TC platform referenced in TF-A include:
5
6- A `System Control Processor <https://github.com/ARM-software/SCP-firmware>`_
7  to abstract power and system management tasks away from application
8  processors. The RAM firmware for SCP is included in the TF-A FIP and is
9  loaded by AP BL2 from FIP in flash to SRAM for copying by SCP (SCP has access
10  to AP SRAM).
11- GICv4
12- Trusted Board Boot
13- SCMI
14- MHUv2
15
16The TF-A build is specified by the option `TARGET_PLATFORM` which represents
17the Total Compute platform number. The platforms support the CPU variants
18listed as below:
19
20-  TC3 has support for Cortex A520, Cortex A725 and Cortex x925.
21
22Boot Sequence
23-------------
24
25The execution begins from SCP_BL1. SCP_BL1 powers up the AP which starts
26executing AP_BL1 and then executes AP_BL2 which loads the SCP_BL2 from
27FIP to SRAM. The SCP has access to AP SRAM. The address and size of SCP_BL2
28is communicated to SCP using SDS. SCP copies SCP_BL2 from SRAM to its own
29RAM and starts executing it. The AP then continues executing the rest of TF-A
30stages including BL31 runtime stage and hands off executing to
31Non-secure world (u-boot).
32
33Build Procedure (TF-A only)
34~~~~~~~~~~~~~~~~~~~~~~~~~~~
35
36-  Obtain `Arm toolchain`_ and set the CROSS_COMPILE environment variable to
37   point to the toolchain folder.
38
39-  Build TF-A:
40
41   .. code:: shell
42
43      make PLAT=tc BL33=<path_to_uboot.bin> \
44      SCP_BL2=<path_to_scp_ramfw.bin> TARGET_PLATFORM={3} all fip
45
46   Enable TBBR by adding the following options to the make command:
47
48   .. code:: shell
49
50      MBEDTLS_DIR=<path_to_mbedtls_directory>  \
51      TRUSTED_BOARD_BOOT=1 \
52      GENERATE_COT=1 \
53      ARM_ROTPK_LOCATION=devel_rsa  \
54      ROT_KEY=plat/arm/board/common/rotpk/arm_rotprivk_rsa.pem
55
56--------------
57
58*Copyright (c) 2020-2025, Arm Limited. All rights reserved.*
59
60.. _Arm Toolchain: https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/downloads
61