Lines Matching +full:- +full:ne
5 # SPDX-License-Identifier: GPL-2.0
7 set -e
13 echo " $0 -f [fit/itb] -o [out]"
19 if [ $# -ne 4 -a $# -ne 2 ]; then
24 while [ $# -gt 0 ]; do
26 -f)
30 -o)
41 if [ ! -f ${ITB} ]; then
49 if [ -z ${OUT} ]; then
56 mkdir -p ${OUT}
59 for NAME in `fdtget -l ${ITB} /images`
63 OFFS=`fdtget -ti ${ITB} ${NODE} data-position`
64 SIZE=`fdtget -ti ${ITB} ${NODE} data-size`
65 if [ -z ${OFFS} ]; then
69 if [ ${SIZE} -ne 0 ]; then
76 ALGO=`fdtget -ts ${ITB} ${NODE}/hash algo`
77 if [ -z ${ALGO} ]; then
78 printf " %-20s: %d bytes" ${NAME} ${SIZE}
80 VALUE=`fdtget -tx ${ITB} ${NODE}/hash value`
87 HEX=`echo ${VALUE} | awk -v idx=$i '{ print $idx }'`
88 if [ -z ${HEX} ]; then
96 printf " %-20s: %d bytes... %s" ${NAME} ${SIZE} ${ALGO}
97 if [ "${CSUM}" == "${HASH}" -o ${SIZE} -eq 0 ]; then
100 echo "-"
113 cp -a ${ITB} ${TMP_ITB}
116 for NAME in `fdtget -l ${ITB} /images`; do
117 COMPRESSION=`fdtget -ts ${ITB} /images/${NAME} compression`
118 …if [ "${COMPRESSION}" == "gzip" ] && fdtget -l "${TMP_ITB}" /images/${NAME}/digest >/dev/null 2>&1…
119 fdtput -t s ${TMP_ITB} /images/${NAME} data "/INCBIN/(${NAME}.gz)"
122 gzip -dk ${OUT}/${NAME}.gz
123 openssl dgst -sha256 -binary -out ${OUT}/${NAME}.digest ${OUT}/${NAME}
124 fdtput -t s ${TMP_ITB} /images/${NAME}/digest digest "/INCBIN/(${NAME}.digest)"
125 …elif [ "${COMPRESSION}" == "lzma" ] && fdtget -l "${TMP_ITB}" /images/${NAME}/digest >/dev/null 2>…
126 fdtput -t s ${TMP_ITB} /images/${NAME} data "/INCBIN/(${NAME}.lzma)"
128 SIZE=`ls -l ${OUT}/${NAME} | awk '{ print $5 }'`
129 SIZE=$(echo "obase=10;$(($SIZE-4))"|bc)
132 lzma -df ${OUT}/${NAME}.lzma
133 openssl dgst -sha256 -binary -out ${OUT}/${NAME}.digest ${OUT}/${NAME}
135 fdtput -t s ${TMP_ITB} /images/${NAME}/digest digest "/INCBIN/(${NAME}.digest)"
137 fdtput -t s ${TMP_ITB} /images/${NAME} data "/INCBIN/(${NAME})"
141 DTC=$(find . -type f -name "dtc")
142 if [ -z ${DTC} ]; then
146 ${DTC} -I dtb -O dts ${TMP_ITB} -o ${ITS}
148 rm -f ${TMP_ITB}
150 # fixup placeholder: data = "/INCBIN/(...)"; -> data = /incbin/("...");
151 sed -i "s/\"\/INCBIN\/(\(.*\))\"/\/incbin\/(\"\1\")/" ${ITS}
154 sed -i "/memreserve/d" ${ITS}
155 sed -i "/timestamp/d" ${ITS}
156 sed -i "/data-size/d" ${ITS}
157 sed -i "/data-position/d" ${ITS}
158 sed -i "/value/d" ${ITS}
159 sed -i "/hashed-strings/d" ${ITS}
160 sed -i "/hashed-nodes/d" ${ITS}
161 sed -i "/signer-version/d" ${ITS}
162 sed -i "/signer-name/d" ${ITS}
163 sed -i "/version/d" ${ITS}
164 sed -i "/totalsize/d" ${ITS}
165 sed -i "s/digest =/value =/g" ${ITS}