1
0
Fork 0
mirror of https://github.com/u-boot/u-boot.git synced 2025-04-27 16:01:27 +00:00

doc: rockchip: Update and improve info on rk3308, TPL and TF-A

Update and improve documentation about build steps for SoCs that
require using TF-A and TPL binaries provided by Rockchip, such as
rk3308. Add rk3308 boards case to rST document. Add ROCK Pi S in
the list of supported boards. Minor page format improvements.

Signed-off-by: Massimo Pegorer <massimo.pegorer+oss@gmail.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
This commit is contained in:
Massimo Pegorer 2023-09-09 11:33:33 +02:00 committed by Kever Yang
parent 9e13fef00b
commit 9841fe2119
2 changed files with 36 additions and 17 deletions

View file

@ -38,16 +38,8 @@ Building
(or you can use another cross compiler if you prefer)
2. To build RK3308 board:
- Get the rkbin
=> git clone https://github.com/rockchip-linux/rkbin.git
- Compile U-Boot
=> cd /path/to/u-boot
=> export BL31=/path/to/rkbin/bin/rk33/rk3308_bl31_v2.22.elf
=> make roc-cc-rk3308_defconfig
=> make CROSS_COMPILE=aarch64-linux-gnu- all
=> ./tools/mkimage -n rk3308 -T rksd -d /path/to/rkbin/bin/rk33/rk3308_ddr_589MHz_uart2_m0_v1.26.bin idbloader.img
=> cat spl/u-boot-spl.bin >> idbloader.img
See doc/board/rockchip/rockchip.rst
3. To build RK3399 board:

View file

@ -53,6 +53,7 @@ List of mainline supported Rockchip boards:
- Google Speedy (chromebook_speedy)
- Amarula Vyasa-RK3288 (vyasa-rk3288)
* rk3308
- Radxa ROCK Pi S (rock-pi-s-rk3308)
- Rockchip Evb-RK3308 (evb-rk3308)
- Roc-cc-RK3308 (roc-cc-rk3308)
* rk3326
@ -143,6 +144,19 @@ To build TF-A:
Specify the PLAT= with desired Rockchip platform to build TF-A for.
For SoCs whose TF-A code is not available as open source, use BL31 binary provided by Rockchip:
.. code-block:: bash
git clone --depth 1 https://github.com/rockchip-linux/rkbin
TPL
^^^
For some SoCs U-Boot sources lack of support to inizialize DRAM.
In these cases, to get a fully functional image following :ref:`PackageWithTPLandSPL`, use DDR binary provided by Rockchip rkbin repository as ROCKCHIP_TPL when building U-Boot.
Otherwise, follow :ref:`PackageWithRockchipMiniloader`.
U-Boot
^^^^^^
@ -173,6 +187,15 @@ To build rk3288 boards:
make evb-rk3288_defconfig
make CROSS_COMPILE=arm-linux-gnueabihf-
To build rk3308 boards:
.. code-block:: bash
export BL31=../rkbin/bin/rk33/rk3308_bl31_v2.26.elf
export ROCKCHIP_TPL=../rkbin/bin/rk33/rk3308_ddr_589MHz_uartX_mY_v2.07.bin
make evb-rk3308_defconfig
make CROSS_COMPILE=aarch64-linux-gnu-
To build rk3328 boards:
.. code-block:: bash
@ -219,11 +242,13 @@ To build rk3588 boards:
Flashing
--------
.. _`PackageWithTPLandSPL`:
1. Package the image with U-Boot TPL/SPL
-----------------------------------------
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
SD Card
^^^^^^^
"""""""
All Rockchip platforms (except rk3128 which doesn't use SPL) are now
supporting a single boot image using binman.
@ -236,7 +261,7 @@ To write an image that boots from a SD card (assumed to be /dev/sda):
sync
eMMC
^^^^
""""
eMMC flash would probe on mmc0 in most of the Rockchip platforms.
@ -275,7 +300,7 @@ For Rockchip 32-bit platforms the U-Boot proper image
is u-boot-dtb.img
SPI
^^^
"""
Write u-boot-rockchip-spi.bin to offset 0 of SPI flash.
@ -287,8 +312,10 @@ Copy u-boot-rockchip-spi.bin into SD card and boot from SD:
load mmc 1:1 $kernel_addr_r u-boot-rockchip-spi.bin
sf update $fileaddr 0 $filesize
.. _`PackageWithRockchipMiniloader`:
2. Package the image with Rockchip miniloader
---------------------------------------------
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Image package with Rockchip miniloader requires rkbin [1].
@ -328,14 +355,14 @@ Note:
2. 0x200000 is a load address and is an option for some platforms.
3. Package the RK3066 image with U-Boot TPL/SPL on NAND
-------------------------------------------------------
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Unlike later SoC models the rk3066 BootROM doesn't have SDMMC support.
If all other boot options fail then it enters into a BootROM mode on the USB OTG port.
This method loads TPL/SPL on NAND with U-Boot and kernel on SD card.
SD Card
^^^^^^^
"""""""
U-Boot expects a GPT partition map and a boot directory structure with files on the SD card.
@ -370,7 +397,7 @@ To write a U-Boot image to the SD card (assumed to be /dev/sda):
sync
NAND
^^^^
""""
Bring device in BootROM mode: