blob: 016bed70726aed6bb6d78f775774ed4f882650b7 [file] [log] [blame]
Paul Beesleyf3653a62019-05-22 11:22:44 +01001Rockchip SoCs
2=============
Heiko Stuebner2333a512019-04-19 12:35:47 +02003
4Trusted Firmware-A supports a number of Rockchip ARM SoCs from both
5AARCH32 and AARCH64 fields.
6
7This includes right now:
XiaoDong Huang83f79a82019-06-13 10:55:50 +08008- px30: Quad-Core Cortex-A53
Heiko Stuebner2333a512019-04-19 12:35:47 +02009- rk3288: Quad-Core Cortex-A17 (past A12)
10- rk3328: Quad-Core Cortex-A53
11- rk3368: Octa-Core Cortex-A53
12- rk3399: Hexa-Core Cortex-A53/A72
shengfei Xu9b9e5222022-09-30 08:56:21 +000013- rk3566/rk3568: Quad-Core Cortex-A55
XiaoDong Huang1c167792025-02-07 18:07:46 +080014- rk3576: Octa-Core Cortex-A53/A72
XiaoDong Huangdcf89f32023-06-26 16:43:30 +080015- rk3588: Octa-Core Cortex-A55/A76
Heiko Stuebner2333a512019-04-19 12:35:47 +020016
17
18Boot Sequence
Paul Beesleyf3653a62019-05-22 11:22:44 +010019-------------
Heiko Stuebner2333a512019-04-19 12:35:47 +020020
21For AARCH32:
22 Bootrom --> BL1/BL2 --> BL32 --> BL33 --> Linux kernel
23
24For AARCH64:
25 Bootrom --> BL1/BL2 --> BL31 --> BL33 --> Linux kernel
26
27BL1/2 and BL33 can currently be supplied from either:
28- Coreboot + Depthcharge
29- U-Boot - either separately as TPL+SPL or only SPL
30
31
32How to build
Paul Beesleyf3653a62019-05-22 11:22:44 +010033------------
Heiko Stuebner2333a512019-04-19 12:35:47 +020034
35Rockchip SoCs expect TF-A's BL31 (AARCH64) or BL32 (AARCH32) to get
36integrated with other boot software like U-Boot or Coreboot, so only
37these images need to get build from the TF-A repository.
38
39For AARCH64 architectures the build command looks like
40
Michael Trimarchi02fda052024-01-14 09:30:10 +010041 make CROSS_COMPILE=aarch64-linux-gnu- PLAT=rk3399 bl31
Heiko Stuebner2333a512019-04-19 12:35:47 +020042
43while AARCH32 needs a slightly different command
44
45 make ARCH=aarch32 CROSS_COMPILE=arm-linux-gnueabihf- PLAT=rk3288 AARCH32_SP=sp_min bl32
46
47Both need replacing the PLAT argument with the platform from above you
48want to build for and the CROSS_COMPILE argument with you cross-
49compilation toolchain.
50
51
52How to deploy
Paul Beesleyf3653a62019-05-22 11:22:44 +010053-------------
Heiko Stuebner2333a512019-04-19 12:35:47 +020054
55Both upstream U-Boot and Coreboot projects contain instructions on where
56to put the built images during their respective build process.
57So after successfully building TF-A just follow their build instructions
58to continue.