ar71xx: migrate led and network setup to board detection framework
[openwrt.git] / target / linux / ar71xx / base-files / etc / board.d / 02_network
1 #!/bin/sh
2 #
3 # Copyright (C) 2011-2015 OpenWrt.org
4 #
5
6 . /lib/functions/uci-defaults-new.sh
7 . /lib/ar71xx.sh
8
9 board_config_update
10
11 ucidef_set_interface_loopback
12
13 board=$(ar71xx_board_name)
14
15
16 case "$board" in
17 all0315n |\
18 all0258n |\
19 ja76pf2|\
20 rocket-m-ti |\
21 ubnt-unifi-outdoor)
22         ucidef_set_interface_lan "eth0 eth1"
23         ;;
24
25 ap132 |\
26 wlr8100)
27         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
28         ucidef_add_switch "switch0" "1" "1"
29         ucidef_add_switch_vlan "switch0" "1" "0t 2 3 4 5"
30         ucidef_add_switch_vlan "switch0" "2" "0t 1"
31         ;;
32
33 esr1750 |\
34 epg5000)
35         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
36         ucidef_add_switch "switch0" "1" "1"
37         ucidef_add_switch_vlan "switch0" "1" "0t 1 2 3 4"
38         ucidef_add_switch_vlan "switch0" "2" "0t 5"
39         ;;
40
41 ap136-010)
42         ucidef_set_interfaces_lan_wan "eth0" "eth1"
43         ucidef_add_switch "switch0" "1" "1"
44         ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 4"
45         ucidef_add_switch_vlan "switch0" "2" "5 6"
46         ;;
47
48 ap147-010)
49         ucidef_set_interfaces_lan_wan "eth0" "eth1"
50         ucidef_add_switch "switch0" "1" "1"
51         ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 4"
52         ucidef_add_switch_vlan "switch0" "2" "5 6"
53         ;;
54
55 ap136-020 |\
56 ap135-020 |\
57 tl-wr1043nd-v2 |\
58 wzr-450hp2)
59         ucidef_set_interfaces_lan_wan "eth1" "eth0"
60         ucidef_add_switch "switch0" "1" "1"
61         ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 4"
62         ucidef_add_switch_vlan "switch0" "2" "5 6"
63         ;;
64
65 archer-c5 |\
66 archer-c7 |\
67 tl-wdr4900-v2)
68         ucidef_set_interfaces_lan_wan "eth1" "eth0"
69         ucidef_add_switch "switch0" "1" "1"
70         ucidef_add_switch_vlan "switch0" "1" "0 2 3 4 5"
71         ucidef_add_switch_vlan "switch0" "2" "1 6"
72         ;;
73
74 bsb)
75         ucidef_set_interfaces_lan_wan "eth1" "eth0"
76         ucidef_add_switch "switch0" "1" "1"
77         ucidef_add_switch_vlan "switch0" "1" "0 1 3"
78         ucidef_set_interface_wlan
79         ;;
80
81 cpe510)
82         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
83         ucidef_add_switch "switch0" "1" "1"
84         ucidef_add_switch_vlan "switch0" "1" "0t 5"
85         ucidef_add_switch_vlan "switch0" "2" "0t 4"
86         ;;
87
88 airgatewaypro)
89         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
90         ucidef_add_switch "switch0" "1" "1"
91         ucidef_add_switch_vlan "switch0" "1" "0t 4"
92         ucidef_add_switch_vlan "switch0" "2" "0t 5"
93         ;;
94
95 db120 |\
96 rb-2011l | \
97 rb-2011uas |\
98 rb-2011uias |\
99 rb-2011uas-2hnd|\
100 rb-2011uias-2hnd)
101         ucidef_set_interfaces_lan_wan "eth0.1 eth1" "eth0.2"
102         ucidef_add_switch "switch0" "1" "1"
103         ucidef_add_switch_vlan "switch0" "1" "0t 2 3 4 5"
104         ucidef_add_switch_vlan "switch0" "2" "0t 1"
105         ucidef_add_switch "switch1" "1" "1"
106         ucidef_add_switch_vlan "switch1" "1" "0 1 2 3 4 5"
107
108         case "$board" in
109         rb-2011uas* | rb-2011uias | rb-2011uias-2hnd)
110                 ucidef_set_interface_raw "sfp" "eth0.3"
111                 ucidef_add_switch_vlan "switch0" "3" "0t 6"
112                 ;;
113         esac
114         ;;
115
116 dir-825-b1|\
117 tew-673gru)
118         ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
119         ucidef_add_switch "switch0" "1" "1"
120         ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 5t"
121         ;;
122
123 f9k1115v2)
124         ucidef_set_interfaces_lan_wan "eth1" "eth0"
125         ucidef_add_switch "switch0" "1" "1"
126         ucidef_add_switch_vlan "switch0" "1" "2 3 4 5 6"
127         ucidef_add_switch_vlan "switch0" "2" "0 1"
128         ;;
129
130 nbg460n_550n_550nh)
131         ucidef_set_interfaces_lan_wan "eth0" "eth1"
132         ucidef_add_switch "switch0" "1" "1"
133         ucidef_add_switch_vlan "switch0" "0" "0 1 2 3 5"
134         ;;
135
136 nbg6616 |\
137 nbg6716)
138         ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
139         ucidef_add_switch "switch0" "1" "1"
140         ucidef_add_switch_vlan "switch0" "1" "0t 1 2 3 4"
141         ucidef_add_switch_vlan "switch0" "2" "5 6"
142         ;;
143
144 ap143 |\
145 rb-433 |\
146 rb-433u)
147         ucidef_set_interfaces_lan_wan "eth1" "eth0"
148         ucidef_add_switch "switch0" "1" "1"
149         ucidef_add_switch_vlan "switch0" "1" "1 2 5"
150         ;;
151
152 rb-435g)
153         ucidef_set_interfaces_lan_wan "eth1" "eth0"
154         ucidef_add_switch "switch0" "1" "1"
155         ucidef_add_switch_vlan "switch0" "1" "0 1 2"
156         ;;
157
158 rb-450)
159         ucidef_set_interfaces_lan_wan "eth1" "eth0"
160         ucidef_add_switch "switch0" "1" "1"
161         ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 5"
162         ;;
163
164 rb-450g |\
165 routerstation-pro)
166         ucidef_set_interfaces_lan_wan "eth1" "eth0"
167         ucidef_add_switch "switch0" "1" "1"
168         ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 4"
169         ;;
170
171 ap136 |\
172 rb-750gl |\
173 rb-751g |\
174 rb-951g-2hnd |\
175 wzr-hp-g450h)
176         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
177         ucidef_add_switch "switch0" "1" "1"
178         ucidef_add_switch_vlan "switch0" "1" "0t 2 3 4 5"
179         ucidef_add_switch_vlan "switch0" "2" "0t 1"
180         ;;
181
182 rb-951ui-2hnd)
183         ucidef_set_interfaces_lan_wan "eth1" "eth0"
184         ;;
185
186 rb-493g)
187         ucidef_set_interfaces_lan_wan "eth0 eth1.1" "eth1.2"
188         ucidef_add_switch "switch0" "1" "1"
189         ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 4"
190         ucidef_add_switch "switch1" "1" "1"
191         ucidef_add_switch_vlan "switch1" "1" "0t 1 2 3 4"
192         ucidef_add_switch_vlan "switch1" "2" "0t 5"
193         ;;
194
195 wzr-hp-g300nh2 |\
196 pb92 |\
197 ap113)
198         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
199         ucidef_add_switch "switch0" "1" "1"
200         ucidef_add_switch_vlan "switch0" "1" "0t 1 3 4 5"
201         ucidef_add_switch_vlan "switch0" "2" "0t 2"
202         ;;
203
204 el-m150)
205         ucidef_set_interfaces_lan_wan "eth1" "eth0"
206         ucidef_add_switch "switch0" "1" "1"
207         ucidef_add_switch_vlan "switch0" "1" "0 1 3"
208         ;;
209
210 tl-wdr4300|\
211 tl-wr1041n-v2)
212         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
213         ucidef_add_switch "switch0" "1" "1"
214         ucidef_add_switch_vlan "switch0" "1" "0t 2 3 4 5"
215         ucidef_add_switch_vlan "switch0" "2" "0t 1"
216         ;;
217
218 tl-wr1043nd)
219         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
220         ucidef_add_switch "switch0" "1" "1"
221         ucidef_add_switch_vlan "switch0" "1" "1 2 3 4 5t"
222         ucidef_add_switch_vlan "switch0" "2" "0 5t"
223         ;;
224
225 tl-wr2543n)
226         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
227         ucidef_add_switch "switch0" "1" "1"
228         ucidef_add_switch_vlan "switch0" "1" "1 2 3 4 9t"
229         ucidef_add_switch_vlan "switch0" "2" "0 9t"
230         ;;
231
232 tl-wr841n-v1|\
233 tl-wr941nd)
234         ucidef_set_interface_raw "eth" "eth0"
235         ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
236         ;;
237
238 dir-615-i1 |\
239 r6100 |\
240 smart-300 |\
241 tl-mr3420-v2 |\
242 tl-wr841n-v8 |\
243 tl-wr842n-v2 |\
244 tl-wr941nd-v5 |\
245 tl-wr941nd-v6 |\
246 tl-wdr6500-v2 |\
247 wnr2000-v3 |\
248 wnr2000-v4 |\
249 wnr2200 |\
250 wnr612-v2 |\
251 wnr1000-v2)
252         ucidef_set_interfaces_lan_wan "eth1" "eth0"
253         ucidef_add_switch "switch0" "1" "1"
254         ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 4"
255         ;;
256
257 uap-pro)
258         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
259         ucidef_add_switch "switch0" "1" "1"
260         ucidef_add_switch_vlan "switch0" "1" "0t 1"
261         ucidef_add_switch_vlan "switch0" "2" "0t 2"
262         ;;
263
264 nanostation-m-xw)
265         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
266         ucidef_add_switch "switch0" "1" "1"
267         ucidef_add_switch_vlan "switch0" "1" "0t 5"
268         ucidef_add_switch_vlan "switch0" "2" "0t 1"
269         ;;
270
271 wrt160nl)
272         ucidef_set_interfaces_lan_wan "eth0" "eth1"
273         ucidef_add_switch "switch0" "1" "1"
274         ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 4 5"
275         ;;
276
277 wzr-hp-g300nh)
278         ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
279         ucidef_add_switch "switch0" "1" "1"
280         ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 5t"
281         ;;
282
283 dgl-5500-a1 |\
284 dir-825-c1)
285         local mac
286         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
287         ucidef_add_switch "switch0" "1" "1"
288         ucidef_add_switch_vlan "switch0" "1" "0t 1 2 3 4"
289         ucidef_add_switch_vlan "switch0" "2" "0t 5"
290         mac=$(mtd_get_mac_ascii nvram "wan_mac")
291         [ -n "$mac" ] && ucidef_set_interface_macaddr "wan" "$mac"
292         ;;
293
294 mynet-n750)
295         local mac
296         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
297         ucidef_add_switch "switch0" "1" "1"
298         ucidef_add_switch_vlan "switch0" "1" "0t 1 2 3 4"
299         ucidef_add_switch_vlan "switch0" "2" "0t 5"
300         mac=$(mtd_get_mac_ascii devdata "wanmac")
301         [ -n "$mac" ] && ucidef_set_interface_macaddr "wan" "$mac"
302         ;;
303
304 onion-omega)
305         ucidef_set_interface_lan "wlan0"
306         ;;
307
308 dhp-1565-a1 |\
309 dir-835-a1 |\
310 wndr3700v4 | \
311 wndr4300)
312         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
313         ucidef_add_switch "switch0" "1" "1"
314         ucidef_add_switch_vlan "switch0" "1" "0t 1 2 3 4"
315         ucidef_add_switch_vlan "switch0" "2" "0t 5"
316         mac_lan=$(mtd_get_mac_binary caldata 0)
317         [ -n "$mac_lan" ] && ucidef_set_interface_macaddr "lan" "$mac_lan"
318         mac_wan=$(mtd_get_mac_binary caldata 6)
319         [ -n "$mac_wan" ] && ucidef_set_interface_macaddr "wan" "$mac_wan"
320         ;;
321
322 esr900)
323         local mac
324         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
325         ucidef_add_switch "switch0" "1" "1"
326         ucidef_add_switch_vlan "switch0" "1" "0t 1 2 3 4"
327         ucidef_add_switch_vlan "switch0" "2" "0t 5"
328         mac=$(mtd_get_mac_ascii u-boot-env "wanaddr")
329         [ -n "$mac" ] && ucidef_set_interface_macaddr "wan" "$mac"
330         ;;
331
332 dlan-pro-500-wp)
333         ucidef_set_interface_lan "eth0 eth1"
334         ;;
335
336 dlan-pro-1200-ac)
337         ucidef_set_interface_lan "eth0"
338         ucidef_add_switch "switch0" "1" "0"
339         ucidef_add_switch_vlan "switch0" "0" "0 2 3 4"
340         ;;
341
342 all0305 |\
343 antminer-s1 |\
344 antminer-s3 |\
345 aw-nr580 |\
346 bullet-m |\
347 cap4200ag |\
348 eap300v2 |\
349 eap7660d |\
350 el-mini |\
351 loco-m-xw |\
352 mr1750 |\
353 mr600 |\
354 mr600v2 |\
355 mr900 |\
356 mr900v2 |\
357 rb-411 |\
358 rb-911g-2hpnd |\
359 rb-911g-5hpacd |\
360 rb-911g-5hpnd |\
361 rb-912uag-2hpnd |\
362 rb-912uag-5hpnd |\
363 rb-sxt2n |\
364 rb-sxt5n |\
365 rocket-m-xw |\
366 tl-mr10u |\
367 tl-mr11u |\
368 tl-mr12u |\
369 tl-mr13u |\
370 tl-mr3020 |\
371 tl-mr3040 |\
372 tl-mr3040-v2 |\
373 tl-wa701nd-v2 |\
374 tl-wa7210n-v2 |\
375 tl-wa750re |\
376 tl-wa850re |\
377 tl-wa830re-v2 |\
378 tl-wa801nd-v2 |\
379 tl-wa901nd |\
380 tl-wa901nd-v2 |\
381 tl-wa901nd-v3 |\
382 tl-wr703n |\
383 tube2h |\
384 wndap360 |\
385 mynet-rext |\
386 wp543)
387         ucidef_set_interface_lan "eth0"
388         ;;
389
390 arduino-yun | \
391 dir-505-a1)
392         ucidef_set_interface_lan "eth1"
393         ;;
394
395 alfa-ap96 |\
396 alfa-nx |\
397 ap83 |\
398 gl-inet |\
399 jwap003 |\
400 pb42 |\
401 pb44 |\
402 routerstation|\
403 tl-wr710n |\
404 tl-wr720n-v3|\
405 wpe72)
406         ucidef_set_interfaces_lan_wan "eth1" "eth0"
407         ;;
408
409 wpj344)
410         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
411         ucidef_add_switch "switch0" "1" "1"
412         ucidef_add_switch_vlan "switch0" "1" "0t 3"
413         ucidef_add_switch_vlan "switch0" "2" "0t 2"
414         ;;
415
416 wpj531)
417         ucidef_set_interfaces_lan_wan "eth0" "eth1"
418         ;;
419
420 wpj558)
421         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
422         ucidef_add_switch "switch0" "1" "1"
423         ucidef_add_switch_vlan "switch0" "1" "5 6t"
424         ucidef_add_switch_vlan "switch0" "2" "1 6t"
425         ;;
426
427 ap121 |\
428 ap121-mini |\
429 ap96 |\
430 airrouter |\
431 dir-600-a1 |\
432 dir-615-c1 |\
433 dir-615-e1 |\
434 dir-615-e4 |\
435 hiwifi-hc6361 |\
436 ja76pf |\
437 mc-mac1200r|\
438 minibox-v1 |\
439 mynet-n600 |\
440 oolite |\
441 qihoo-c301 |\
442 rb-750 |\
443 rb-751 |\
444 tew-632brp |\
445 tew-712br |\
446 tl-mr3220 |\
447 tl-mr3220-v2 |\
448 tl-mr3420 |\
449 tl-wdr3320-v2 |\
450 tl-wdr3500 |\
451 tl-wr741nd |\
452 tl-wr741nd-v4 |\
453 tl-wr841n-v7 |\
454 tl-wr841n-v9 |\
455 whr-g301n |\
456 whr-hp-g300n |\
457 whr-hp-gn |\
458 wzr-hp-ag300h)
459         ucidef_set_interfaces_lan_wan "eth0" "eth1"
460         ucidef_add_switch "switch0" "1" "1"
461         ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 4"
462         ;;
463
464 wzr-hp-g450h)
465         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
466         ucidef_add_switch "switch0" "1" "1"
467         ucidef_add_switch_vlan "switch0" "1" "0t 2 3 4 5"
468         ucidef_add_switch_vlan "switch0" "2" "0t 1"
469         ;;
470
471 ew-dorin)
472         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
473         ucidef_add_switch "switch0" "1" "1"
474         ucidef_add_switch_vlan "switch0" "1" "0t 1 2"
475         ucidef_add_switch_vlan "switch0" "2" "0t 3"
476         ;;
477
478 ew-dorin-router)
479         ucidef_set_interfaces_lan_wan "eth0" "eth1"
480         ucidef_add_switch "switch0" "1" "1"
481         ucidef_add_switch_vlan "switch0" "1" "0 2 3"
482         ;;
483
484 wndr3700)
485         ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
486         ucidef_add_switch "switch0" "1" "1"
487         ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 5t"
488         # Blinkrate: 0=43ms; 1=84ms; 2=120ms; 3=170ms; 4=340ms; 5=670ms
489         uci set network.@switch[-1].blinkrate='2'
490
491         ucidef_add_switch_port "switch0" "1"
492         # Port 1 controls the GREEN configuration of LEDs for
493         # the switch and the section does not correspond to a real
494         # switch port.
495         #
496         # 0=LED off; 1=Collision/FDX; 2=Link/activity; 3=1000 Mb/s;
497         # 4=100 Mb/s; 5=10 Mb/s; 6=1000 Mb/s+activity; 7=100 Mb/s+activity;
498         # 8=10 Mb/s+activity; 9=10/100 Mb/s+activity; 10: Fiber;
499         # 11: Fault; 12: Link/activity(tx); 13: Link/activity(rx);
500         # 14: Link (master); 15: separate register
501         uci set network.@switch_port[-1].led='6'
502
503         ucidef_add_switch_port "switch0" "2"
504         # Port 2 controls the ORANGE configuration of LEDs for
505         # the switch and the section does not correspond to a real
506         # switch port.
507         #
508         # See the key above for switch port 1 for the meaning of the
509         # 'led' setting below.
510         uci set network.@switch_port[-1].led='9'
511
512         ucidef_add_switch_port "switch0" "5"
513         # Port 5 controls the configuration of the WAN LED and the
514         # section does not correspond to a real switch port.
515         #
516         # To toggle the use of green or orange LEDs for the WAN port,
517         # see the LED setting for wndr3700:green:wan in /etc/config/system.
518         #
519         # See the key above for switch port 1 for the meaning of the
520         # 'led' setting below.
521         uci set network.@switch_port[-1].led='2'
522         ;;
523
524 *)
525         ucidef_set_interfaces_lan_wan "eth0" "eth1"
526         ;;
527 esac
528
529 board_config_flush
530
531 exit 0