diff options
author | Kever Yang <kever.yang@rock-chips.com> | 2019-11-15 10:27:07 +0800 |
---|---|---|
committer | Kever Yang <kever.yang@rock-chips.com> | 2019-11-23 22:29:49 +0800 |
commit | 65325fba5a8d6bcafb2fc1662bd82b348b735dc2 (patch) | |
tree | a6d90d96d5ba459f701cd4279302d5329c5509c0 /arch/arm/mach-rockchip/fit_spl_optee.sh | |
parent | d4a31e8ee5592072d8d5208b3e950cba2d89b6bd (diff) |
rockchip: Convert to use FIT generator for optee
Use generator script so that we can use environment for TEE source.
$TEE for tee.bin, and if file not exist, the script can report a warning,
and meke the build success without a error.
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Diffstat (limited to 'arch/arm/mach-rockchip/fit_spl_optee.sh')
-rwxr-xr-x | arch/arm/mach-rockchip/fit_spl_optee.sh | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/arch/arm/mach-rockchip/fit_spl_optee.sh b/arch/arm/mach-rockchip/fit_spl_optee.sh new file mode 100755 index 0000000000..89ef04312c --- /dev/null +++ b/arch/arm/mach-rockchip/fit_spl_optee.sh @@ -0,0 +1,78 @@ +#!/bin/sh +# SPDX-License-Identifier: GPL-2.0+ +# +# Copyright (C) 2019 Rockchip Electronic Co.,Ltd +# +# Script to generate FIT image source for 32-bit Rockchip SoCs with +# U-Boot proper, OPTEE, and devicetree. +# +# usage: $0 <dt_name> + +[ -z "$TEE" ] && TEE="tee.bin" + +if [ ! -f $TEE ]; then + echo "WARNING: TEE file $TEE NOT found, U-Boot.itb is non-functional" >&2 + echo "Please export path for TEE or copy tee.bin to U-Boot folder" >&2 + TEE=/dev/null +fi + +dtname=$1 + +cat << __HEADER_EOF +/* + * Copyright (C) 2017-2019 Rockchip Electronic Co.,Ltd + * + * Simple U-boot FIT source file containing U-Boot, dtb and optee + */ + +/dts-v1/; + +/ { + description = "FIT image with OP-TEE support"; + #address-cells = <1>; + + images { + uboot { + description = "U-Boot"; + data = /incbin/("u-boot-nodtb.bin"); + type = "standalone"; + os = "U-Boot"; + arch = "arm"; + compression = "none"; + load = <0x61000000>; + }; + optee { + description = "OP-TEE"; + data = /incbin/("$TEE"); + type = "firmware"; + arch = "arm"; + os = "tee"; + compression = "none"; + load = <0x68400000>; + entry = <0x68400000>; + }; + fdt { + description = "$(basename $dtname .dtb)"; + data = /incbin/("$dtname"); + type = "flat_dt"; + compression = "none"; + }; +__HEADER_EOF + +cat << __CONF_HEADER_EOF + }; + + configurations { + default = "conf"; + conf { + description = "$(basename $dtname .dtb)"; + firmware = "optee"; + loadables = "uboot"; + fdt = "fdt"; + }; +__CONF_HEADER_EOF + +cat << __ITS_EOF + }; +}; +__ITS_EOF |