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