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