package/rockchip-rkbin: new package

This patch adds a package for the Rockchip ATF binary blobs. These
binaries are needed to build U-Boot for some Rockchip SoCs (e.g.,
RK3588).

As there as so many binary blobs, for each suported SoCs, it is not
practical to introduce a choice, so one must manually define which
blobs (for bl31, tpl and optee) to use from the repository, that
match their actual board.

Signed-off-by: Kilian Zinnecker <kilian.zinnecker@mail.de>
[yann.morin.1998@free.fr:
  - drop custom version
  - simplify copying blobs
  - slightly tweak help texts
  - add hash for license file
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
Kilian Zinnecker 2023-07-26 20:04:31 +02:00 committed by Yann E. MORIN
parent 0cbbb0190a
commit 8d1180aa48
5 changed files with 64 additions and 0 deletions

View File

@ -1803,6 +1803,9 @@ F: package/ramsmp/
N: Kieran Bingham <kieran.bingham@ideasonboard.com>
F: package/libcamera/
N: Kilian Zinnecker <kilian.zinnecker@mail.de>
F: package/rockchip-rkbin/
N: Klaus Heinrich Kiwi <klaus@linux.vnet.ibm.com>
F: package/wqy-zenhei/

View File

@ -580,6 +580,7 @@ endmenu
source "package/read-edid/Config.in"
source "package/rng-tools/Config.in"
source "package/rockchip-mali/Config.in"
source "package/rockchip-rkbin/Config.in"
source "package/rpi-userland/Config.in"
source "package/rs485conf/Config.in"
source "package/rtc-tools/Config.in"

View File

@ -0,0 +1,27 @@
config BR2_PACKAGE_ROCKCHIP_RKBIN
bool "rockchip-rkbin"
depends on BR2_arm || BR2_aarch64
help
This package provides Rockchip SoC binary blobs for U-Boot.
if BR2_PACKAGE_ROCKCHIP_RKBIN
config BR2_PACKAGE_ROCKCHIP_RKBIN_TPL_FILENAME
string "Rockchip rkbin tpl file path"
help
Fath to the tpl file inside the rkbin repository. The
specified file will be copied and used by U-Boot as tpl.
config BR2_PACKAGE_ROCKCHIP_RKBIN_BL31_FILENAME
string "Rockchip rkbin bl31 file path"
help
Path to the bl31 file inside the rkbin repository. The
specified file will be copied and used by U-Boot as bl31.
config BR2_PACKAGE_ROCKCHIP_RKBIN_TEE_FILENAME
string "Rockchip rkbin tee file path"
help
Path to the TEE file inside the rkbin repository. The
specified file will be copied and used by U-Boot as TEE.
endif # BR2_PACKAGE_ROCKCHIP_RKBIN

View File

@ -0,0 +1,3 @@
# Locally computed
sha256 bd8d19ace202ff26d1c0b4d7744cd467cd0093801dc674dde57290159eedee2b rockchip-rkbin-b4558da0860ca48bf1a571dd33ccba580b9abe23-br1.tar.gz
sha256 1f2e25ae65f3af774e6f141f84253d6a05d489fb0b88b311220d70471c023c9c LICENSE

View File

@ -0,0 +1,30 @@
################################################################################
#
# rockchip-rkbin
#
################################################################################
ROCKCHIP_RKBIN_VERSION = b4558da0860ca48bf1a571dd33ccba580b9abe23
ROCKCHIP_RKBIN_SITE = https://github.com/rockchip-linux/rkbin.git
ROCKCHIP_RKBIN_SITE_METHOD = git
ROCKCHIP_RKBIN_LICENSE = PROPRIETARY
ROCKCHIP_RKBIN_LICENSE_FILES = LICENSE
ROCKCHIP_RKBIN_INSTALL_IMAGES = YES
ROCKCHIP_RKBIN_INSTALL_TARGET = NO
ROCKCHIP_RKBIN_BL31_FILENAME = $(call qstrip,$(BR2_PACKAGE_ROCKCHIP_RKBIN_BL31_FILENAME))
ROCKCHIP_RKBIN_TPL_FILENAME = $(call qstrip,$(BR2_PACKAGE_ROCKCHIP_RKBIN_TPL_FILENAME))
ROCKCHIP_RKBIN_TEE_FILENAME = $(call qstrip,$(BR2_PACKAGE_ROCKCHIP_RKBIN_TEE_FILENAME))
define ROCKCHIP_RKBIN_INSTALL_IMAGES_CMDS
$(foreach f, \
$(ROCKCHIP_RKBIN_BL31_FILENAME) \
$(ROCKCHIP_RKBIN_TPL_FILENAME) \
$(ROCKCHIP_RKBIN_TEE_FILENAME) \
, \
$(INSTALL) -D -m 0644 -t $(BINARIES_DIR) $(@D)/$(f)
)
endef
$(eval $(generic-package))