]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
arm-trusted-firmware-rockchip: support rk3588 18295/head
authorStijn Tintel <stijn@linux-ipv6.be>
Tue, 18 Mar 2025 08:56:25 +0000 (10:56 +0200)
committerStijn Tintel <stijn@linux-ipv6.be>
Sun, 6 Apr 2025 11:22:19 +0000 (14:22 +0300)
ATF supports rk3588 since version 2.12, so let's enable it in
arm-trusted-firmware-rockchip.

We still need the TPL to initialize RAM, but keeping rk3588 in rkbin
would cause a duplicate package name, so rename rk3588 to rk3588-tpl in
rkbin.

Finally, point uboot-rockchip for rk3588 to bl31 built by this package,
and add a dependency on the new trusted-firmware-a-rk3588-tpl pacakge.

While this doesn't necessarily add features, we now no longer rely on
the rk3588_bl31_v1.45.elf blob provided by Rockchip, which is always a
good thing.

Tested on Radxa ROCK 5B+.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
package/boot/arm-trusted-firmware-rockchip/Makefile
package/boot/rkbin/Makefile
package/boot/uboot-rockchip/Makefile

index b517c9e37d23506c1ce83f4421e0b08453d223f5..7ed8e9d328fdd6b53ef6d9217e62d7c5da088c92 100644 (file)
@@ -34,9 +34,15 @@ define Trusted-Firmware-A/rk3399
   PLAT:=rk3399
 endef
 
+define Trusted-Firmware-A/rk3588
+  BUILD_SUBTARGET:=armv8
+  PLAT:=rk3588
+endef
+
 TFA_TARGETS:= \
        rk3328 \
-       rk3399
+       rk3399 \
+       rk3588
 
 ifeq ($(BUILD_VARIANT),rk3399)
   M0_GCC_NAME:=gcc-arm
index d895c06547b0b788efffa3badd280bc02695ccb3..86b440692aaacc9ac34ab0c50a55eeb189a05564 100644 (file)
@@ -57,9 +57,8 @@ define Trusted-Firmware-A/rk3568-e25
   TPL:=rk35/rk3568_ddr_1560MHz_uart2_m0_115200_v1.21.bin
 endef
 
-define Trusted-Firmware-A/rk3588
+define Trusted-Firmware-A/rk3588-tpl
   BUILD_SUBTARGET:=armv8
-  ATF:=rk35/rk3588_bl31_v1.45.elf
   TPL:=rk35/rk3588_ddr_lp4_2112MHz_lp5_2400MHz_v1.16.bin
 endef
 
@@ -69,7 +68,7 @@ TFA_TARGETS:= \
        rk3566 \
        rk3568 \
        rk3568-e25 \
-       rk3588
+       rk3588-tpl
 
 ifeq ($(BUILD_VARIANT),rk3308-rock-pi-s)
   TPL_FILE:=rk3308_ddr_589MHz_uart0_m0_v2.07.bin
@@ -109,7 +108,9 @@ endef
 define Package/trusted-firmware-a/install
        $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
 
+ifneq ($(ATF),)
        $(CP) $(PKG_BUILD_DIR)/bin/$(ATF) $(STAGING_DIR_IMAGE)/
+endif
        $(CP) $(PKG_BUILD_DIR)/bin/$(TPL) $(STAGING_DIR_IMAGE)/
 endef
 
index ed93b63c34319dd5be28009e5a02ca5ef090fb20..a9367539aafbbf93db5b7dcf5726d3bcc4a79649 100644 (file)
@@ -247,8 +247,10 @@ endef
 
 define U-Boot/rk3588/Default
   BUILD_SUBTARGET:=armv8
-  DEPENDS:=+PACKAGE_u-boot-$(1):trusted-firmware-a-rk3588
-  ATF:=rk3588_bl31_v1.45.elf
+  DEPENDS:= \
+       +PACKAGE_u-boot-$(1):trusted-firmware-a-rk3588 \
+       +PACKAGE_u-boot-$(1):trusted-firmware-a-rk3588-tpl
+  ATF:=rk3588_bl31.elf
   TPL:=rk3588_ddr_lp4_2112MHz_lp5_2400MHz_v1.16.bin
 endef