rockchip.rst 1.6 KB

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