-
Notifications
You must be signed in to change notification settings - Fork 10
/
add_hash.sh
executable file
·78 lines (68 loc) · 1.97 KB
/
add_hash.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#!/bin/bash
set -e
BUILD_FILE=u-boot.bin
BUILD_MODE=uboot
show_help()
{
printf "\n add_hash.sh - add git log hash value into uboot,boot0,sboot,fes \n"
echo " eg :"
echo " ./add_hash.sh -f input_file -m file_flag "
echo " file_flag = uboot or boot0 or sboot"
printf "\n\n"
}
build_uboot()
{
dd if=./${BUILD_FILE} of=./uboot_back bs=1280 count=1 status=noxfer 2> /dev/null
dd if=./cur.log of=./uboot_back ibs=64 conv=notrunc,sync oflag=append obs=64 count=1 status=noxfer 2> /dev/null
dd if=./${BUILD_FILE} of=./uboot_back ibs=1344 obs=1344 conv=notrunc oflag=append skip=1 status=noxfer 2> /dev/null
mv uboot_back ${BUILD_FILE}
}
build_boot0()
{
dd if=${BUILD_FILE} of=./boot0_back bs=760 count=1 status=noxfer 2> /dev/null
dd if=./cur.log of=./boot0_back ibs=64 conv=notrunc,sync oflag=append obs=64 count=1 status=noxfer 2> /dev/null
dd if=${BUILD_FILE} of=./boot0_back ibs=824 obs=824 conv=notrunc oflag=append skip=1 status=noxfer 2> /dev/null
mv boot0_back ${BUILD_FILE}
}
build_sboot()
{
dd if=${BUILD_FILE} of=./sboot_back bs=48 count=1 status=noxfer 2> /dev/null
dd if=./cur.log of=./sboot_back ibs=64 conv=notrunc,sync oflag=append obs=64 count=1 status=noxfer 2> /dev/null
dd if=${BUILD_FILE} of=./sboot_back ibs=112 obs=112 conv=notrunc oflag=append skip=1 status=noxfer 2> /dev/null
mv sboot_back ${BUILD_FILE}
}
do_common()
{
if [ -s ./cur.log ] ; then
if [ "x${BUILD_MODE}" = "xuboot" ] ; then
echo " build_uboot "
build_uboot
elif [ "x${BUILD_MODE}" = "xboot0" ] ; then
echo "build_boot0"
build_boot0
elif [ "x${BUILD_MODE}" = "xsboot" ] ; then
echo "build_sboot"
build_sboot
else
echo "build none"
fi
else
echo "not set commit log"
fi
}
while getopts f:m: OPTION
do
case $OPTION in
f)
BUILD_FILE=$OPTARG
;;
m)
BUILD_MODE=$OPTARG
;;
*)
show_help
exit
;;
esac
done
do_common