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