1Rockchip SoCs
2=============
3
4Trusted Firmware-A supports a number of Rockchip ARM SoCs from both
5AARCH32 and AARCH64 fields.
6
7This includes right now:
8-  px30: Quad-Core Cortex-A53
9-  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
13
14
15Boot Sequence
16-------------
17
18For AARCH32:
19    Bootrom --> BL1/BL2 --> BL32 --> BL33 --> Linux kernel
20
21For AARCH64:
22    Bootrom --> BL1/BL2 --> BL31 --> BL33 --> Linux kernel
23
24BL1/2 and BL33 can currently be supplied from either:
25-  Coreboot + Depthcharge
26-  U-Boot - either separately as TPL+SPL or only SPL
27
28
29How to build
30------------
31
32Rockchip SoCs expect TF-A's BL31 (AARCH64) or BL32 (AARCH32) to get
33integrated with other boot software like U-Boot or Coreboot, so only
34these images need to get build from the TF-A repository.
35
36For AARCH64 architectures the build command looks like
37
38    make CROSS_COMPILE=aarch64-linux-gnu- PLAT=rk3399 bl32
39
40while AARCH32 needs a slightly different command
41
42    make ARCH=aarch32 CROSS_COMPILE=arm-linux-gnueabihf- PLAT=rk3288 AARCH32_SP=sp_min bl32
43
44Both need replacing the PLAT argument with the platform from above you
45want to build for and the CROSS_COMPILE argument with you cross-
46compilation toolchain.
47
48
49How to deploy
50-------------
51
52Both upstream U-Boot and Coreboot projects contain instructions on where
53to put the built images during their respective build process.
54So after successfully building TF-A just follow their build instructions
55to continue.
56