1#!/bin/bash
2
3COMMON_DIR=$(cd "$(dirname "$(realpath "$0")")/.."; pwd)
4SDK_DIR=$(realpath $COMMON_DIR/../../..)
5UPGRADETOOL=$SDK_DIR/tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool/upgrade_tool
6ROCKDEV_DIR=$SDK_DIR/rockdev
7LOADER=$ROCKDEV_DIR/MiniLoaderAll.bin
8PARAMETER=$ROCKDEV_DIR/parameter.txt
9UBOOT=$ROCKDEV_DIR/uboot.img
10TRUST=$ROCKDEV_DIR/trust.img
11BOOT=$ROCKDEV_DIR/boot.img
12RECOVERY=$ROCKDEV_DIR/recovery.img
13OEM=$ROCKDEV_DIR/oem.img
14MISC=$ROCKDEV_DIR/misc.img
15ROOTFS=$ROCKDEV_DIR/rootfs.img
16USERDATA=$ROCKDEV_DIR/userdata.img
17UPDATE=$ROCKDEV_DIR/update.img
18
19if [ ! -n "$1" ];then
20echo "flash all images as default"
21FLASH_TYPE=all
22else
23FLASH_TYPE="$1"
24fi
25
26if [ $FLASH_TYPE = all ]
27then
28	$UPGRADETOOL ul -noreset $LOADER
29	$UPGRADETOOL di -p $PARAMETER
30	$UPGRADETOOL di -uboot $UBOOT
31	$UPGRADETOOL di -trust $TRUST
32	$UPGRADETOOL di -b $BOOT
33	$UPGRADETOOL di -r $RECOVERY
34	$UPGRADETOOL di -m $MISC
35	$UPGRADETOOL di -oem $OEM
36	$UPGRADETOOL di -userdata $USERDATA
37	$UPGRADETOOL di -rootfs $ROOTFS
38	$UPGRADETOOL rd
39fi
40
41if [ $FLASH_TYPE = tb ]
42then
43	$UPGRADETOOL ul -noreset $LOADER
44	$UPGRADETOOL di -p $PARAMETER
45	$UPGRADETOOL di -uboot $UBOOT
46	$UPGRADETOOL di -b $BOOT
47	$UPGRADETOOL rd
48fi
49
50if [ $FLASH_TYPE = norecovery ]; then
51	$UPGRADETOOL ul -noreset $LOADER
52	$UPGRADETOOL di -p $PARAMETER
53	$UPGRADETOOL di -uboot $UBOOT
54	$UPGRADETOOL di -trust $TRUST
55	$UPGRADETOOL di -b $BOOT
56	$UPGRADETOOL di -oem $OEM
57	$UPGRADETOOL di -userdata $USERDATA
58	$UPGRADETOOL di -rootfs $ROOTFS
59fi
60
61if [ $FLASH_TYPE = loader ]
62then
63	if [ -n "$2" ];then
64		LOADER=$2
65	fi
66	echo "flash loader: $LOADER"
67	$UPGRADETOOL ul $LOADER
68	exit 0
69fi
70
71if [ $FLASH_TYPE = parameter ]
72then
73	if [ -n "$2" ];then
74		PARAMETER=$2
75	fi
76	echo "flash parameter: $PARAMETER"
77	$UPGRADETOOL di -p $PARAMETER
78fi
79
80if [ $FLASH_TYPE = resource ]
81then
82	if [ -n "$2" ];then
83		RESOURCE=$2
84	fi
85	echo "flash resource: $RESOURCE"
86	$UPGRADETOOL di -resource $RESOURCE
87fi
88
89if [ $FLASH_TYPE = uboot ]
90then
91	if [ -n "$2" ];then
92		UBOOT=$2
93	fi
94	echo "flash uboot: $UBOOT"
95	$UPGRADETOOL di -uboot $UBOOT
96fi
97
98if [ $FLASH_TYPE = trust ]
99then
100	if [ -n "$2" ];then
101		TRUST=$2
102	fi
103	echo "flash trust: $TRUST"
104	$UPGRADETOOL di -trust $TRUST
105fi
106
107if [ $FLASH_TYPE = boot ]
108then
109	if [ -n "$2" ];then
110		BOOT=$2
111	fi
112	echo "flash boot: $BOOT"
113	$UPGRADETOOL di -b $BOOT
114fi
115
116if [ $FLASH_TYPE = recovery ]
117then
118	if [ -n "$2" ];then
119		RECOVERY=$2
120	fi
121	echo "flash recovery: $RECOVERY"
122	$UPGRADETOOL di -r $RECOVERY
123fi
124
125if [ $FLASH_TYPE = misc ]
126then
127	if [ -n "$2" ];then
128		MISC=$2
129	fi
130	echo "flash misc: $MISC"
131	$UPGRADETOOL di -misc $MISC
132fi
133
134if [ $FLASH_TYPE = oem ]
135then
136	if [ -n "$2" ];then
137		OEM=$2
138	fi
139	echo "flash oem: $OEM"
140	$UPGRADETOOL di -oem $OEM
141fi
142
143if [ $FLASH_TYPE = userdata ]
144then
145	if [ -n "$2" ];then
146		USERDATA=$2
147	fi
148	echo "flash userdata: $USERDATA"
149	$UPGRADETOOL di -userdata $USERDATA
150fi
151
152if [ $FLASH_TYPE = rootfs ]
153then
154	if [ -n "$2" ];then
155		ROOTFS=$2
156	fi
157	echo "flash rootfs: $ROOTFS"
158	$UPGRADETOOL di -rootfs $ROOTFS
159fi
160
161if [ $FLASH_TYPE = update ]
162then
163	$UPGRADETOOL uf $UPDATE
164fi
165
166if [ $FLASH_TYPE = rd ]
167then
168	$UPGRADETOOL rd
169fi
170
171if [ $FLASH_TYPE = erase ]
172then
173	$UPGRADETOOL EF $LOADER
174fi
175
176