Merge tag 'u-boot-rockchip-20231007' of https://source.denx.de/u-boot/custodians/u-boot-rockchip
- Add Board: rk3568 Bananapi R2Pro; - Update pcie bifurcation support; - dwc_eth_qos controller support for rk3568 and rk3588; - Compressed binary support for U-Boot on rockchip platform; - dts and config updates for different board and soc; [ trini: Fix conflict on include/spl.h ] Signed-off-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
@@ -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:
|
||||
|
||||
|
||||
@@ -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
|
||||
@@ -101,9 +102,11 @@ List of mainline supported Rockchip boards:
|
||||
|
||||
* rk3568
|
||||
- Rockchip Evb-RK3568 (evb-rk3568)
|
||||
- Banana Pi BPI-R2 Pro (bpi-r2-pro-rk3568)
|
||||
- EmbedFire LubanCat 2 (lubancat-2-rk3568)
|
||||
- FriendlyElec NanoPi R5C (nanopi-r5c-rk3568)
|
||||
- FriendlyElec NanoPi R5S (nanopi-r5s-rk3568)
|
||||
- Generic RK3566/RK3568 (generic-rk3568)
|
||||
- Hardkernel ODROID-M1 (odroid-m1-rk3568)
|
||||
- Radxa E25 Carrier Board (radxa-e25-rk3568)
|
||||
- Radxa ROCK 3 Model A (rock-3a-rk3568)
|
||||
@@ -142,6 +145,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
|
||||
^^^^^^
|
||||
|
||||
@@ -172,6 +188,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
|
||||
@@ -218,11 +243,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.
|
||||
@@ -235,7 +262,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.
|
||||
|
||||
@@ -274,7 +301,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.
|
||||
|
||||
@@ -286,8 +313,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].
|
||||
|
||||
@@ -327,14 +356,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.
|
||||
|
||||
@@ -369,7 +398,7 @@ To write a U-Boot image to the SD card (assumed to be /dev/sda):
|
||||
sync
|
||||
|
||||
NAND
|
||||
^^^^
|
||||
""""
|
||||
|
||||
Bring device in BootROM mode:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user