blob: 18e4b71ee9483c1bf7b1000bce53762a36557da2 [file] [log] [blame]
Hangyu Li03c5cc12024-09-12 18:55:36 +08001#!/bin/bash
2
3set -e
4# set -x
5
6#
7# Settings
8#
9BASEDIR_TOP=$1
10SOC=$2
11INPUT=$3
12OUTPUT=$4
13
14TOOLBIN=${BASEDIR_TOP}/tools/zstd
15AMFC_ZSTD_HDR=${BASEDIR_TOP}/amfc_zstd_hdr.bin
16
17COMPRESS_ORG=${BASEDIR_TOP}/${INPUT}.org
18COMPRESS_ZSTD=${BASEDIR_TOP}/${INPUT}.zstd
19
20mv -f $INPUT $COMPRESS_ORG
21
22${TOOLBIN} ${COMPRESS_ORG} -9 -o ${COMPRESS_ZSTD}
23bin_org_size=`stat -c %s ${COMPRESS_ORG}`
24bin_zstd_size=`stat -c %s ${COMPRESS_ZSTD}`
Hangyu Li8f3c4062024-12-16 18:18:51 +080025if [ "$SOC" == "t6d" ]; then
26 printf "%s" "@ZSTD" > "${AMFC_ZSTD_HDR}"
27else
28 printf "%s" "ZSTD" > "${AMFC_ZSTD_HDR}"
29fi
Hangyu Li03c5cc12024-09-12 18:55:36 +080030
31printf "%02x%02x%02x%02x" $[(bin_org_size) & 0xff] \
32$[((bin_org_size) >> 8) & 0xff] $[((bin_org_size) >> 16) & 0xff] \
33$[((bin_org_size) >> 24) & 0xff] | xxd -r -ps >> ${AMFC_ZSTD_HDR}
34
35printf "%02x%02x%02x%02x" $[(bin_zstd_size) & 0xff] \
36$[((bin_zstd_size) >> 8) & 0xff] $[((bin_zstd_size) >> 16) & 0xff] \
37$[((bin_zstd_size) >> 24) & 0xff] | xxd -r -ps >> ${AMFC_ZSTD_HDR}
38
39cat ${AMFC_ZSTD_HDR} ${COMPRESS_ZSTD} > ${OUTPUT}
40rm ${AMFC_ZSTD_HDR} -f
41
42# vim: set tabstop=2 expandtab shiftwidth=2: