xref: /OK3568_Linux_fs/buildroot/board/stmicroelectronics/common/stm32mp157/post-image.sh (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1#!/usr/bin/env bash
2
3#
4# atf_image extracts the ATF binary image from DTB_FILE_NAME that appears in
5# BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES in ${BR_CONFIG},
6# then prints the corresponding file name for the genimage
7# configuration file
8#
9atf_image()
10{
11	local ATF_VARIABLES="$(sed -n 's/^BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="\([\/a-zA-Z0-9_=. \-]*\)"$/\1/p' ${BR2_CONFIG})"
12
13	if grep -Eq "DTB_FILE_NAME=stm32mp157c-dk2.dtb" <<< ${ATF_VARIABLES}; then
14		echo "tf-a-stm32mp157c-dk2.stm32"
15	elif grep -Eq "DTB_FILE_NAME=stm32mp157a-dk1.dtb" <<< ${ATF_VARIABLES}; then
16                echo "tf-a-stm32mp157a-dk1.stm32"
17	elif grep -Eq "DTB_FILE_NAME=stm32mp157a-avenger96.dtb" <<< ${ATF_VARIABLES}; then
18                echo "tf-a-stm32mp157a-avenger96.stm32"
19	fi
20}
21
22main()
23{
24	local ATFBIN="$(atf_image)"
25	local GENIMAGE_CFG="$(mktemp --suffix genimage.cfg)"
26	local GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp"
27
28	sed -e "s/%ATFBIN%/${ATFBIN}/" \
29		board/stmicroelectronics/common/stm32mp157/genimage.cfg.template > ${GENIMAGE_CFG}
30
31	support/scripts/genimage.sh -c ${GENIMAGE_CFG}
32
33	rm -f ${GENIMAGE_CFG}
34
35	exit $?
36}
37
38main $@
39