meta-rockchip/recipes-bsp/rkbin/rockchip-rkbin-optee-os_git.bb
Quentin Schulz 68afa1d772 bsp: rkbin: optee-os: factor out do_deploy to be SoC-agnostic
The do_deploy task is essentially the same for all SoCs, install a file
from a specific path to another one.

No magic involved, so let's rather have one generic do_deploy task. For
this to work nicely, we check that all necessary variables are set and
notify the developer otherwise. This may be useful whenever a new SoC
will be supported by this recipe.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
2025-05-26 12:11:14 -04:00

46 lines
1.4 KiB
BlitzBasic

DESCRIPTION = "Rockchip OP-TEE OS (BL32) blob"
require rockchip-rkbin.inc
PROVIDES += "optee-os"
RKBIN_BINDIR:rk3308 ?= "bin/rk33/"
RKBIN_BINVERS:rk3308 ?= "v2.08"
RKBIN_BINFILE:rk3308 ?= "rk3308_bl32_${RKBIN_BINVERS}.bin"
RKBIN_DEPLOY_FILENAME:rk3308 ?= "tee-rk3308.bin"
RKBIN_BINVERS_RK356x ?= "v2.14"
RKBIN_BINDIR:rk3566 ?= "bin/rk35/"
RKBIN_BINVERS:rk3566 ?= "${RKBIN_BINVERS_RK356x}"
# NOTE: the following are not typos
# the rk3566 uses the same bl32 as the rk3568
RKBIN_BINFILE:rk3566 ?= "rk3568_bl32_${RKBIN_BINVERS}.bin"
RKBIN_DEPLOY_FILENAME:rk3566 ?= "tee-rk3566.bin"
RKBIN_BINDIR:rk3568 ?= "bin/rk35/"
RKBIN_BINVERS:rk3568 ?= "${RKBIN_BINVERS_RK356x}"
RKBIN_BINFILE:rk3568 ?= "rk3568_bl32_${RKBIN_BINVERS}.bin"
RKBIN_DEPLOY_FILENAME:rk3568 ?= "tee-rk3568.bin"
RKBIN_BINDIR:rk3588s ?= "bin/rk35/"
RKBIN_BINVERS:rk3588s ?= "v1.17"
RKBIN_BINFILE:rk3588s ?= "rk3588_bl32_${RKBIN_BINVERS}.bin"
RKBIN_DEPLOY_FILENAME:rk3588s ?= "tee-rk3588.bin"
do_deploy() {
if [ -z "${RKBIN_BINDIR}" ]; then
bbfatal "Non-empty RKBIN_BINDIR:<MACHINE> required!"
fi
if [ -z "${RKBIN_BINFILE}" ]; then
bbfatal "Non-empty RKBIN_BINFILE:<MACHINE> required!"
fi
if [ -z "${RKBIN_DEPLOY_FILENAME}" ]; then
bbfatal "Non-empty RKBIN_DEPLOY_FILENAME:<MACHINE> required!"
fi
# Prebuilt OPTEE-OS
install -m 644 ${S}/${RKBIN_BINDIR}${RKBIN_BINFILE} ${DEPLOYDIR}/${RKBIN_DEPLOY_FILENAME}
}