e1e76a44f6f7e075abf8f1664239ee9ac08d7e67
[oweals/openwrt.git] / target / linux / ar71xx / base-files / etc / diag.sh
1 #!/bin/sh
2 # Copyright (C) 2009-2013 OpenWrt.org
3
4 . /lib/functions/leds.sh
5 . /lib/ar71xx.sh
6
7 get_status_led() {
8         local board=$(ar71xx_board_name)
9
10         case $board in
11         alfa-nx)
12                 status_led="alfa:green:led_8"
13                 ;;
14         all0305)
15                 status_led="eap7660d:green:ds4"
16                 ;;
17         antminer-s1|\
18         antminer-s3|\
19         antminer-r1|\
20         minibox-v1|\
21         som9331)
22                 status_led="$board:green:system"
23                 ;;
24         ap132|\
25         ap81|\
26         db120|\
27         dr344|\
28         tew-632brp|\
29         wpj344|\
30         zbt-we1526)
31                 status_led="$board:green:status"
32                 ;;
33         ap136-010|\
34         ap136-020)
35                 status_led="ap136:green:status"
36                 ;;
37         ap147-010)
38                 status_led="ap147:green:status"
39                 ;;
40         ap135-020)
41                 status_led="ap135:green:status"
42                 ;;
43         ap83|\
44         mr12|\
45         mr16|\
46         nbg6616|\
47         tl-wpa8630)
48                 status_led="$board:green:power"
49                 ;;
50         ap96)
51                 status_led="$board:green:led2"
52                 ;;
53         aw-nr580)
54                 status_led="$board:green:ready"
55                 ;;
56         bhr-4grv2|\
57         wzr-hp-ag300h|\
58         wzr-hp-g300nh2)
59                 status_led="buffalo:red:diag"
60                 ;;
61         bsb)
62                 status_led="$board:red:sys"
63                 ;;
64         bullet-m|\
65         rocket-m|\
66         rocket-m-xw|\
67         nano-m|\
68         nanostation-m|\
69         nanostation-m-xw|\
70         loco-m-xw)
71                 status_led="ubnt:green:link4"
72                 ;;
73         rocket-m-ti)
74                 status_led="ubnt:green:link6"
75                 ;;
76         bxu2000n-2-a1)
77                 status_led="bhu:green:status"
78                 ;;
79         cap324)
80                 status_led="pcs:green:power"
81                 ;;
82         c-55|\
83         c-60)
84                 status_led="$board:green:pwr"
85                 ;;
86         cap4200ag)
87                 status_led="senao:green:pwr"
88                 ;;
89         cf-e316n-v2|\
90         cf-e520n|\
91         cf-e530n)
92                 status_led="$board:blue:wan"
93                 ;;
94         cf-e320n-v2)
95                 status_led="$board:blue:wlan"
96                 ;;
97         cpe510)
98                 status_led="tp-link:green:link4"
99                 ;;
100         cr3000)
101                 status_led="pcs:amber:power"
102                 ;;
103         cr5000)
104                 status_led="pcs:amber:power"
105                 ;;
106         dgl-5500-a1|\
107         dhp-1565-a1|\
108         dir-505-a1|\
109         dir-600-a1|\
110         dir-615-e1|\
111         dir-615-i1|\
112         dir-615-e4)
113                 status_led="d-link:green:power"
114                 ;;
115         dir-615-c1)
116                 status_led="d-link:green:status"
117                 ;;
118         dir-825-b1)
119                 status_led="d-link:orange:power"
120                 ;;
121         dir-825-c1|\
122         dir-835-a1)
123                 status_led="d-link:amber:power"
124                 ;;
125         dir-869-a1)
126                 status_led="d-link:white:status"
127                 ;;
128         dlan-hotspot)
129                 status_led="devolo:green:wifi"
130                 ;;
131         dlan-pro-500-wp)
132                 status_led="devolo:green:wlan-2g"
133                 ;;
134         dlan-pro-1200-ac)
135                 status_led="devolo:status:wlan"
136                 ;;
137         dr531)
138                 status_led="$board:green:sig4"
139                 ;;
140         dragino2|\
141         oolite)
142                 status_led="$board:red:system"
143                 ;;
144         dw33d)
145                 status_led="$board:blue:status"
146                 ;;
147         eap120)
148                 status_led="$(ar71xx_board_name):green:system"
149                 ;;
150         eap300v2)
151                 status_led="engenius:blue:power"
152                 ;;
153         eap7660d)
154                 status_led="$board:green:ds4"
155                 ;;
156         el-mini|\
157         el-m150)
158                 status_led="easylink:green:system"
159                 ;;
160         ew-dorin|\
161         ew-dorin-router)
162                 status_led="dorin:green:status"
163                 ;;
164         f9k1115v2)
165                 status_led="belkin:blue:status"
166                 ;;
167         gl-inet)
168                 status_led="$board:green:lan"
169                 ;;
170         epg5000|\
171         esr1750)
172                 status_led="$board:amber:power"
173                 ;;
174         esr900)
175                 status_led="engenius:amber:power"
176                 ;;
177         hiwifi-hc6361)
178                 status_led="hiwifi:blue:system"
179                 ;;
180         hornet-ub|\
181         hornet-ub-x2)
182                 status_led="alfa:blue:wps"
183                 ;;
184         ja76pf|\
185         ja76pf2)
186                 status_led="jjplus:green:led1"
187                 ;;
188         jwap230)
189                 status_led="$board:green:led1"
190                 ;;
191         ls-sr71)
192                 status_led="ubnt:green:d22"
193                 ;;
194         mc-mac1200r)
195                 status_led="mercury:green:system"
196                 ;;
197         mr18|\
198         z1)
199                 status_led="$board:green:tricolor0"
200                 ;;
201         mr600)
202                 status_led="$board:orange:power"
203                 ;;
204         mr600v2)
205                 status_led="mr600:blue:power"
206                 ;;
207         mr1750|\
208         mr1750v2)
209                 status_led="mr1750:blue:power"
210                 ;;
211         mr900|\
212         mr900v2)
213                 status_led="mr900:blue:power"
214                 ;;
215         mynet-n600|\
216         mynet-n750)
217                 status_led="wd:blue:power"
218                 ;;
219         mynet-rext)
220                 status_led="wd:blue:power"
221                 ;;
222         mzk-w04nu|\
223         mzk-w300nh)
224                 status_led="planex:green:status"
225                 ;;
226         nbg460n_550n_550nh)
227                 status_led="nbg460n:green:power"
228                 ;;
229         nbg6716)
230                 status_led="$board:white:power"
231                 ;;
232         om2p|\
233         om2pv2|\
234         om2p-hs|\
235         om2p-hsv2|\
236         om2p-hsv3|\
237         om2p-lc)
238                 status_led="om2p:blue:power"
239                 ;;
240         om5p|\
241         om5p-an)
242                 status_led="om5p:blue:power"
243                 ;;
244         om5p-ac|\
245         om5p-acv2)
246                 status_led="om5pac:blue:power"
247                 ;;
248         omy-g1)
249                 status_led="omy:green:wlan"
250                 ;;
251         omy-x1)
252                 status_led="omy:green:power"
253                 ;;
254         onion-omega)
255                 status_led="onion:amber:system"
256                 ;;
257         pb44)
258                 status_led="$board:amber:jump1"
259                 ;;
260         rb-2011l|\
261         rb-2011uas|\
262         rb-2011uas-2hnd)
263                 status_led="rb:green:usr"
264                 ;;
265         rb-411|\
266         rb-411u|\
267         rb-433|\
268         rb-433u|\
269         rb-450|\
270         rb-450g|\
271         rb-493)
272                 status_led="rb4xx:yellow:user"
273                 ;;
274         rb-750)
275                 status_led="rb750:green:act"
276                 ;;
277         rb-911g-2hpnd|\
278         rb-911g-5hpacd|\
279         rb-911g-5hpnd|\
280         rb-912uag-2hpnd|\
281         rb-912uag-5hpnd)
282                 status_led="rb:green:user"
283                 ;;
284         rb-951ui-2hnd)
285                 status_led="rb:green:act"
286                 ;;
287         rb-sxt2n|\
288         rb-sxt5n)
289                 status_led="rb:green:power"
290                 ;;
291         routerstation|\
292         routerstation-pro)
293                 status_led="ubnt:green:rf"
294                 ;;
295         rw2458n)
296                 status_led="$board:green:d3"
297                 ;;
298         smart-300)
299                 status_led="nc-link:green:system"
300                 ;;
301         qihoo-c301)
302                 status_led="qihoo:green:status"
303                 ;;
304         tellstick-znet-lite)
305                 status_led="tellstick:white:system"
306                 ;;
307         tew-673gru)
308                 status_led="trendnet:blue:wps"
309                 ;;
310         tew-712br|\
311         tew-732br|\
312         tew-823dru)
313                 status_led="trendnet:green:power"
314                 ;;
315         tl-mr3020)
316                 status_led="tp-link:green:wps"
317                 ;;
318         tl-wa750re)
319                 status_led="tp-link:orange:re"
320                 ;;
321         tl-wa850re)
322                 status_led="tp-link:blue:re"
323                 ;;
324         tl-wa860re)
325                 status_led="tp-link:green:power"
326                 ;;
327         tl-mr3220|\
328         tl-mr3220-v2|\
329         tl-mr3420|\
330         tl-mr3420-v2|\
331         tl-wa701nd-v2|\
332         tl-wa801nd-v2|\
333         tl-wa901nd|\
334         tl-wa901nd-v2|\
335         tl-wa901nd-v3|\
336         tl-wa901nd-v4|\
337         tl-wdr3320-v2|\
338         tl-wdr3500|\
339         tl-wr1041n-v2|\
340         tl-wr1043nd|\
341         tl-wr1043nd-v2|\
342         tl-wr741nd|\
343         tl-wr741nd-v4|\
344         tl-wr841n-v1|\
345         tl-wr841n-v7|\
346         tl-wr841n-v8|\
347         tl-wr841n-v11|\
348         tl-wa830re-v2|\
349         tl-wr842n-v2|\
350         tl-wr842n-v3|\
351         tl-wr941nd|\
352         tl-wr941nd-v5)
353                 status_led="tp-link:green:system"
354                 ;;
355         archer-c5|\
356         archer-c7|\
357         tl-wdr4900-v2|\
358         tl-mr10u|\
359         tl-mr12u|\
360         tl-mr13u|\
361         tl-wdr4300|\
362         tl-wr703n|\
363         tl-wr710n|\
364         tl-wr720n-v3|\
365         tl-wr802n-v1|\
366         tl-wr810n|\
367         tl-wr941nd-v6)
368                 status_led="tp-link:blue:system"
369                 ;;
370         tl-wr841n-v9)
371                 status_led="tp-link:green:qss"
372                 ;;
373         tl-wr2543n)
374                 status_led="tp-link:green:wps"
375                 ;;
376         tl-wdr6500-v2)
377                 status_led="tp-link:white:system"
378                 ;;
379         tube2h)
380                 status_led="alfa:green:signal4"
381                 ;;
382         unifi)
383                 status_led="ubnt:green:dome"
384                 ;;
385         uap-pro|\
386         unifiac-lite|\
387         unifiac-pro)
388                 status_led="ubnt:white:dome"
389                 ;;
390         unifi-outdoor-plus)
391                 status_led="ubnt:white:front"
392                 ;;
393         airgateway|\
394         airgatewaypro)
395                 status_led="ubnt:white:status"
396                 ;;
397         whr-g301n|\
398         whr-hp-g300n|\
399         whr-hp-gn|\
400         wzr-hp-g300nh)
401                 status_led="buffalo:green:router"
402                 ;;
403         wlae-ag300n)
404                 status_led="buffalo:green:status"
405                 ;;
406         r6100|\
407         wndap360|\
408         wndr3700|\
409         wndr3700v4|\
410         wndr4300|\
411         wnr2000|\
412         wnr2000-v3|\
413         wnr2200|\
414         wnr612-v2|\
415         wnr1000-v2|\
416         wpn824n)
417                 status_led="netgear:green:power"
418                 ;;
419         wp543)
420                 status_led="$board:green:diag"
421                 ;;
422         wpj342|\
423         wpj531|\
424         wpj558)
425                 status_led="$board:green:sig3"
426                 ;;
427         wrt400n|\
428         wrt160nl)
429                 status_led="$board:blue:wps"
430                 ;;
431         zcn-1523h-2|\
432         zcn-1523h-5)
433                 status_led="zcn-1523h:amber:init"
434                 ;;
435         wlr8100)
436                 status_led="sitecom:amber:status"
437                 ;;
438         esac
439 }
440
441 set_state() {
442         get_status_led
443
444         case "$1" in
445         preinit)
446                 status_led_blink_preinit
447                 ;;
448         failsafe)
449                 status_led_blink_failsafe
450                 ;;
451         preinit_regular)
452                 status_led_blink_preinit_regular
453                 ;;
454         done)
455                 status_led_on
456                 case $(ar71xx_board_name) in
457                 gl-ar300m)
458                         fw_printenv lc >/dev/null 2>&1 && fw_setenv "bootcount" 0
459                         ;;
460                 qihoo-c301)
461                         local n=$(fw_printenv activeregion | cut -d = -f 2)
462                         fw_setenv "image${n}trynum" 0
463                         ;;
464                 esac
465                 ;;
466         esac
467 }