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