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