aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorSoby Mathew <soby.mathew@arm.com>2019-04-26 12:42:44 +0000
committerTrustedFirmware Code Review <review@review.trustedfirmware.org>2019-04-26 12:42:44 +0000
commit8742f8574bcbb513480c53645dbc5b72ea5f451e (patch)
treee6ef06ff5b713ded0bed89fd11faa57f8d45fe15 /docs
parent28dab587e94552966b01c30b4e8d51463036d0f7 (diff)
parent55617251071c07569d57b4bf9aa9f6bdef50e704 (diff)
downloadplatform_external_arm-trusted-firmware-8742f8574bcbb513480c53645dbc5b72ea5f451e.tar.gz
platform_external_arm-trusted-firmware-8742f8574bcbb513480c53645dbc5b72ea5f451e.tar.bz2
platform_external_arm-trusted-firmware-8742f8574bcbb513480c53645dbc5b72ea5f451e.zip
Merge changes from topic "rk3288" into integration
* changes: rockchip: document platform rockchip: add support for rk3288 rockchip: add common aarch32 support rockchip: rk3328: drop double declaration of entry_point storage rockchip: Allow socs with undefined wfe check bits rockchip: move pmusram assembler code to a aarch64 subdir sp_min: allow inclusion of a platform-specific linker script sp_min: make sp_min_warm_entrypoint public drivers: ti: uart: add a aarch32 variant
Diffstat (limited to 'docs')
-rw-r--r--docs/plat/rockchip.rst54
1 files changed, 54 insertions, 0 deletions
diff --git a/docs/plat/rockchip.rst b/docs/plat/rockchip.rst
new file mode 100644
index 000000000..e88706b2f
--- /dev/null
+++ b/docs/plat/rockchip.rst
@@ -0,0 +1,54 @@
+Trusted Firmware-A for Rockchip SoCs
+====================================
+
+Trusted Firmware-A supports a number of Rockchip ARM SoCs from both
+AARCH32 and AARCH64 fields.
+
+This includes right now:
+- rk3288: Quad-Core Cortex-A17 (past A12)
+- rk3328: Quad-Core Cortex-A53
+- rk3368: Octa-Core Cortex-A53
+- rk3399: Hexa-Core Cortex-A53/A72
+
+
+Boot Sequence
+=============
+
+For AARCH32:
+ Bootrom --> BL1/BL2 --> BL32 --> BL33 --> Linux kernel
+
+For AARCH64:
+ Bootrom --> BL1/BL2 --> BL31 --> BL33 --> Linux kernel
+
+BL1/2 and BL33 can currently be supplied from either:
+- Coreboot + Depthcharge
+- U-Boot - either separately as TPL+SPL or only SPL
+
+
+How to build
+============
+
+Rockchip SoCs expect TF-A's BL31 (AARCH64) or BL32 (AARCH32) to get
+integrated with other boot software like U-Boot or Coreboot, so only
+these images need to get build from the TF-A repository.
+
+For AARCH64 architectures the build command looks like
+
+ make CROSS_COMPILE=aarch64-linux-gnu- PLAT=rk3399 bl32
+
+while AARCH32 needs a slightly different command
+
+ make ARCH=aarch32 CROSS_COMPILE=arm-linux-gnueabihf- PLAT=rk3288 AARCH32_SP=sp_min bl32
+
+Both need replacing the PLAT argument with the platform from above you
+want to build for and the CROSS_COMPILE argument with you cross-
+compilation toolchain.
+
+
+How to deploy
+=============
+
+Both upstream U-Boot and Coreboot projects contain instructions on where
+to put the built images during their respective build process.
+So after successfully building TF-A just follow their build instructions
+to continue.