xref: /OK3568_Linux_fs/buildroot/board/atmel/flasher.sh (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun#!/usr/bin/env bash
2*4882a593Smuzhiyun
3*4882a593SmuzhiyunBUILDIR=$1
4*4882a593SmuzhiyunTTY=$2
5*4882a593SmuzhiyunBOARD=$3
6*4882a593Smuzhiyun
7*4882a593Smuzhiyunfamily_at91sam9260ek="at91sam9260ek"
8*4882a593Smuzhiyunmach_at91sam9260ek="at91sam9260-ek"
9*4882a593Smuzhiyundtb_at91sam9260ek="at91sam9260ek.dtb"
10*4882a593Smuzhiyun
11*4882a593Smuzhiyunfamily_at91sam9g45m10ek="at91sam9m10g45ek"
12*4882a593Smuzhiyunmach_at91sam9g45m10ek="at91sam9m10-g45-ek"
13*4882a593Smuzhiyundtb_at91sam9g45m10ek="at91sam9m10g45ek.dtb"
14*4882a593Smuzhiyun
15*4882a593Smuzhiyunfamily_at91sam9rlek="at91sam9rlek"
16*4882a593Smuzhiyunmach_at91sam9rlek="at91sam9rl64-ek"
17*4882a593Smuzhiyundtb_at91sam9rlek="at91sam9rlek.dtb"
18*4882a593Smuzhiyun
19*4882a593Smuzhiyunfamily_at91sam9g15ek="at91sam9x5ek"
20*4882a593Smuzhiyunmach_at91sam9g15ek="at91sam9g15-ek"
21*4882a593Smuzhiyundtb_at91sam9g15ek="at91sam9g15ek.dtb"
22*4882a593Smuzhiyun
23*4882a593Smuzhiyunfamily_at91sam9g20ek="at91sam9g20ek"
24*4882a593Smuzhiyunmach_at91sam9g20ek="at91sam9g20-ek"
25*4882a593Smuzhiyundtb_at91sam9g20ek="at91sam9g20ek.dtb"
26*4882a593Smuzhiyun
27*4882a593Smuzhiyunfamily_at91sam9g25ek="at91sam9x5ek"
28*4882a593Smuzhiyunmach_at91sam9g25ek="at91sam9g25-ek"
29*4882a593Smuzhiyundtb_at91sam9g25ek="at91sam9g25ek.dtb"
30*4882a593Smuzhiyun
31*4882a593Smuzhiyunfamily_at91sam9g35ek="at91sam9x5ek"
32*4882a593Smuzhiyunmach_at91sam9g35ek="at91sam9g35-ek"
33*4882a593Smuzhiyundtb_at91sam9g35ek="at91sam9g35ek.dtb"
34*4882a593Smuzhiyun
35*4882a593Smuzhiyunfamily_at91sam9x25ek="at91sam9x5ek"
36*4882a593Smuzhiyunmach_at91sam9x25ek="at91sam9x25-ek"
37*4882a593Smuzhiyundtb_at91sam9x25ek="at91sam9x25ek.dtb"
38*4882a593Smuzhiyun
39*4882a593Smuzhiyunfamily_at91sam9x35ek="at91sam9x5ek"
40*4882a593Smuzhiyunmach_at91sam9x35ek="at91sam9x35-ek"
41*4882a593Smuzhiyundtb_at91sam9x35ek="at91sam9x35ek.dtb"
42*4882a593Smuzhiyun
43*4882a593Smuzhiyunfamily_sama5d31ek="sama5d3xek"
44*4882a593Smuzhiyunmach_sama5d31ek="at91sama5d3x-ek"
45*4882a593Smuzhiyundtb_sama5d31ek="sama5d31ek.dtb"
46*4882a593Smuzhiyun
47*4882a593Smuzhiyunfamily_sama5d31ek_revc="sama5d3xek"
48*4882a593Smuzhiyunmach_sama5d31ek_revc="at91sama5d3x-ek"
49*4882a593Smuzhiyundtb_sama5d31ek_revc="sama5d31ek_revc.dtb"
50*4882a593Smuzhiyun
51*4882a593Smuzhiyunfamily_sama5d33ek="sama5d3xek"
52*4882a593Smuzhiyunmach_sama5d33ek="at91sama5d3x-ek"
53*4882a593Smuzhiyundtb_sama5d33ek="sama5d33ek.dtb"
54*4882a593Smuzhiyun
55*4882a593Smuzhiyunfamily_sama5d33ek_revc="sama5d3xek"
56*4882a593Smuzhiyunmach_sama5d33ek_revc="at91sama5d3x-ek"
57*4882a593Smuzhiyundtb_sama5d33ek_revc="sama5d33ek_revc.dtb"
58*4882a593Smuzhiyun
59*4882a593Smuzhiyunfamily_sama5d34ek="sama5d3xek"
60*4882a593Smuzhiyunmach_sama5d34ek="at91sama5d3x-ek"
61*4882a593Smuzhiyundtb_sama5d34ek="sama5d34ek.dtb"
62*4882a593Smuzhiyun
63*4882a593Smuzhiyunfamily_sama5d34ek_revc="sama5d3xek"
64*4882a593Smuzhiyunmach_sama5d34ek_revc="at91sama5d3x-ek"
65*4882a593Smuzhiyundtb_sama5d34ek_revc="sama5d34ek_revc.dtb"
66*4882a593Smuzhiyun
67*4882a593Smuzhiyunfamily_sama5d35ek="sama5d3xek"
68*4882a593Smuzhiyunmach_sama5d35ek="at91sama5d3x-ek"
69*4882a593Smuzhiyundtb_sama5d35ek="sama5d35ek.dtb"
70*4882a593Smuzhiyun
71*4882a593Smuzhiyunfamily_sama5d35ek_revc="sama5d3xek"
72*4882a593Smuzhiyunmach_sama5d35ek_revc="at91sama5d3x-ek"
73*4882a593Smuzhiyundtb_sama5d35ek_revc="sama5d35ek_revc.dtb"
74*4882a593Smuzhiyun
75*4882a593Smuzhiyunfamily_sama5d36ek="sama5d3xek"
76*4882a593Smuzhiyunmach_sama5d36ek="at91sama5d3x-ek"
77*4882a593Smuzhiyundtb_sama5d36ek="sama5d36ek.dtb"
78*4882a593Smuzhiyun
79*4882a593Smuzhiyunfamily_sama5d36ek_revc="sama5d3xek"
80*4882a593Smuzhiyunmach_sama5d36ek_revc="at91sama5d3x-ek"
81*4882a593Smuzhiyundtb_sama5d36ek_revc="sama5d36ek_revc.dtb"
82*4882a593Smuzhiyun
83*4882a593Smuzhiyunfamily_sama5d3_xplained="sama5d3_xplained"
84*4882a593Smuzhiyunmach_sama5d3_xplained="at91sama5d3x-xplained"
85*4882a593Smuzhiyundtb_sama5d3_xplained="at91-sama5d3_xplained.dtb"
86*4882a593Smuzhiyun
87*4882a593Smuzhiyunfamily_sama5d4ek="sama5d4ek"
88*4882a593Smuzhiyunmach_sama5d4ek="at91sama5d4x-ek"
89*4882a593Smuzhiyundtb_sama5d4ek="at91-sama5d4ek.dtb"
90*4882a593Smuzhiyun
91*4882a593Smuzhiyunfamily_sama5d4_xplained="sama5d4_xplained"
92*4882a593Smuzhiyunmach_sama5d4_xplained="at91sama5d4x-ek"
93*4882a593Smuzhiyundtb_sama5d4_xplained="at91-sama5d4_xplained.dtb"
94*4882a593Smuzhiyun
95*4882a593Smuzhiyunusage() {
96*4882a593Smuzhiyun	cat << EOF
97*4882a593SmuzhiyunUsage:
98*4882a593Smuzhiyun  $0 <builddir_path> <interface> <board>
99*4882a593Smuzhiyun
100*4882a593SmuzhiyunAvailable boards:
101*4882a593Smuzhiyun  at91sam9260ek
102*4882a593Smuzhiyun  at91sam9g45m10ek
103*4882a593Smuzhiyun  at91sam9rlek
104*4882a593Smuzhiyun  at91sam9g15ek
105*4882a593Smuzhiyun  at91sam9g20ek
106*4882a593Smuzhiyun  at91sam9g25ek
107*4882a593Smuzhiyun  at91sam9x25ek
108*4882a593Smuzhiyun  at91sam9g35ek
109*4882a593Smuzhiyun  at91sam9x35ek
110*4882a593Smuzhiyun  sama5d31ek
111*4882a593Smuzhiyun  sama5d33ek
112*4882a593Smuzhiyun  sama5d34ek
113*4882a593Smuzhiyun  sama5d35ek
114*4882a593Smuzhiyun  sama5d36ek
115*4882a593Smuzhiyun  sama5d31ek_revc (Until rev. C)
116*4882a593Smuzhiyun  sama5d33ek_revc (Until rev. C)
117*4882a593Smuzhiyun  sama5d34ek_revc (Until rev. C)
118*4882a593Smuzhiyun  sama5d35ek_revc (Until rev. C)
119*4882a593Smuzhiyun  sama5d36ek_revc (Until rev. C)
120*4882a593Smuzhiyun  sama5d3_xplained
121*4882a593Smuzhiyun  sama5d4ek
122*4882a593Smuzhiyun  sama5d4_xplained
123*4882a593Smuzhiyun
124*4882a593SmuzhiyunExample:
125*4882a593Smuzhiyun  $0 ./output /dev/ttyACM0 at91sam9g45m10ek
126*4882a593SmuzhiyunEOF
127*4882a593Smuzhiyun}
128*4882a593Smuzhiyun
129*4882a593SmuzhiyunF="family_$BOARD"
130*4882a593SmuzhiyunM="mach_$BOARD"
131*4882a593SmuzhiyunD="dtb_$BOARD"
132*4882a593Smuzhiyun
133*4882a593Smuzhiyunif [[ $# != 3 || -z ${!F} ]]; then
134*4882a593Smuzhiyun	usage
135*4882a593Smuzhiyun	exit 1
136*4882a593Smuzhiyunfi
137*4882a593Smuzhiyun
138*4882a593Smuzhiyunvideo_mode="video=LVDS-1:800x480-16"
139*4882a593Smuzhiyunif [[ $BOARD == "*pda4" ]]; then
140*4882a593Smuzhiyun	video_mode="video=LVDS-1:480x272-16"
141*4882a593Smuzhiyunfi
142*4882a593Smuzhiyun
143*4882a593Smuzhiyunecho "Executing: ${!F} O=$1/images $1/host/bin/sam-ba $TTY ${!M} $(dirname $0)/nandflash.tcl -- ${!F} ${!D} $video_mode"
144*4882a593Smuzhiyunexport O=$1/images
145*4882a593Smuzhiyun$1/host/bin/sam-ba $TTY ${!M} $(dirname $0)/nandflash.tcl -- ${!F} ${!D} $video_mode
146