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