xref: /rk3399_rockchip-uboot/scripts/pack_resource.sh (revision b71a17c51e3eb1b5da55c1e419c625dca28aa12e)
18b099091SJoseph Chen#!/bin/sh
28b099091SJoseph Chen#
38b099091SJoseph Chen# Copyright (c) 2019 Fuzhou Rockchip Electronics Co., Ltd
48b099091SJoseph Chen#
58b099091SJoseph Chen# SPDX-License-Identifier: GPL-2.0
68b099091SJoseph Chen#
78b099091SJoseph Chen
8*b71a17c5SJoseph ChenRSCE_OLD=$1
9*b71a17c5SJoseph ChenRSCE_NEW=resource.img
108b099091SJoseph ChenTOOL=../rkbin/tools/resource_tool
11*b71a17c5SJoseph ChenIMAGES=./tools/images/
12*b71a17c5SJoseph ChenTMP_DIR=.resource_tmp
138b099091SJoseph Chen
148b099091SJoseph Chenusage()
158b099091SJoseph Chen{
168b099091SJoseph Chen	echo "Usage:"
178b099091SJoseph Chen	echo "  ./pack_resource <input resource.img>"
188b099091SJoseph Chen}
198b099091SJoseph Chen
208b099091SJoseph Chenprepare()
218b099091SJoseph Chen{
228b099091SJoseph Chen	echo
23*b71a17c5SJoseph Chen	if [ "${RSCE_OLD}" = '--help' -o "${RSCE_OLD}" = '-h' -o "${RSCE_OLD}" = '--h' ]; then
248b099091SJoseph Chen		usage
258b099091SJoseph Chen		exit 0
26*b71a17c5SJoseph Chen	elif [ ! -d "${IMAGES}" ];then
27*b71a17c5SJoseph Chen		echo "ERROR: No ${RESOURCE}"
288b099091SJoseph Chen		exit 1
29*b71a17c5SJoseph Chen	elif [ -z "${RSCE_OLD}" ];then
308b099091SJoseph Chen		usage
318b099091SJoseph Chen		exit 1
32*b71a17c5SJoseph Chen	elif [ ! -f "${RSCE_OLD}" ];then
33*b71a17c5SJoseph Chen		echo "ERROR: No ${RSCE_OLD}"
348b099091SJoseph Chen		exit 1
358b099091SJoseph Chen	fi
368b099091SJoseph Chen}
378b099091SJoseph Chen
38*b71a17c5SJoseph Chenappend_images_to_resource()
398b099091SJoseph Chen{
40*b71a17c5SJoseph Chen	rm -rf ${TMP_DIR} && mkdir -p ${TMP_DIR}
418b099091SJoseph Chen
42*b71a17c5SJoseph Chen	echo "Pack ${IMAGES} & ${RSCE_OLD} to ${RSCE_NEW} ..."
43*b71a17c5SJoseph Chen	if [ -f "${RSCE_OLD}" ];then
44*b71a17c5SJoseph Chen		echo "Unpacking old image(${RSCE_OLD}):"
45*b71a17c5SJoseph Chen		${TOOL} --unpack --verbose --image=${RSCE_OLD} ${TMP_DIR} 2>&1 | grep entry | sed "s/^.*://" | xargs echo
468b099091SJoseph Chen	fi
47*b71a17c5SJoseph Chen
48*b71a17c5SJoseph Chen	if [ -d "${IMAGES}" ];then
49*b71a17c5SJoseph Chen		cp -r ${IMAGES}/* ${TMP_DIR}
508b099091SJoseph Chen	else
51*b71a17c5SJoseph Chen		cp -r ${IMAGES}   ${TMP_DIR}
528b099091SJoseph Chen	fi
53*b71a17c5SJoseph Chen	${TOOL} --pack --root=${TMP_DIR} --image=${RSCE_NEW} `find ${TMP_DIR} -type f|sort`
54*b71a17c5SJoseph Chen
558b099091SJoseph Chen	echo
56*b71a17c5SJoseph Chen	echo "Packed resources:"
57*b71a17c5SJoseph Chen	${TOOL} --unpack --verbose --image=${RSCE_NEW} ${TMP_DIR} 2>&1 | grep entry | sed "s/^.*://" | xargs echo
58*b71a17c5SJoseph Chen
59*b71a17c5SJoseph Chen	rm -rf ${TMP_DIR}
60*b71a17c5SJoseph Chen	echo
61*b71a17c5SJoseph Chen	echo "./resource.img with battery images is ready"
628b099091SJoseph Chen}
638b099091SJoseph Chen
648b099091SJoseph Chenprepare
65*b71a17c5SJoseph Chenappend_images_to_resource
66*b71a17c5SJoseph Chen
67