e42d8898476db32f1f6e31c908328689a32be6ae
[openwrt/openwrt.git] / target / linux / ath79 / generic / base-files / etc / board.d / 02_network
1 #!/bin/sh
2
3 . /lib/functions/system.sh
4 . /lib/functions/uci-defaults.sh
5 . /lib/functions/k2t.sh
6
7 ath79_setup_interfaces()
8 {
9 local board="$1"
10
11 case "$board" in
12 adtran,bsap1800-v2|\
13 adtran,bsap1840|\
14 allnet,all-wap02860ac|\
15 alfa-network,ap121f|\
16 alfa-network,pi-wifi4|\
17 arduino,yun|\
18 aruba,ap-105|\
19 avm,fritz1750e|\
20 avm,fritz300e|\
21 avm,fritzdvbc|\
22 comfast,cf-wr752ac-v1|\
23 comfast,cf-e130n-v2|\
24 devolo,dvl1200i|\
25 devolo,dvl1750c|\
26 devolo,dvl1750i|\
27 devolo,dvl1750x|\
28 dlink,dap-1330-a1|\
29 dlink,dap-1365-a1|\
30 dlink,dir-505|\
31 engenius,eap300-v2|\
32 engenius,ecb1200|\
33 engenius,ecb1750|\
34 enterasys,ws-ap3705i|\
35 glinet,gl-ar300m-lite|\
36 hak5,wifi-pineapple-nano|\
37 meraki,mr16|\
38 netgear,ex6400|\
39 netgear,ex7300|\
40 ocedo,koala|\
41 ocedo,raccoon|\
42 pcs,cap324|\
43 pisen,ts-d084|\
44 pisen,wmb001n|\
45 pisen,wmm003n|\
46 siemens,ws-ap3610|\
47 tplink,cpe210-v2|\
48 tplink,cpe210-v3|\
49 tplink,cpe510-v2|\
50 tplink,cpe510-v3|\
51 tplink,cpe610-v1|\
52 tplink,cpe610-v2|\
53 tplink,eap225-outdoor-v1|\
54 tplink,eap225-v3|\
55 tplink,eap245-v1|\
56 tplink,re350k-v1|\
57 tplink,re355-v1|\
58 tplink,re450-v1|\
59 tplink,re450-v2|\
60 tplink,re450-v3|\
61 tplink,tl-wr902ac-v1|\
62 ubnt,bullet-m-ar7240|\
63 ubnt,bullet-m-ar7241|\
64 ubnt,bullet-m-xw|\
65 ubnt,lap-120|\
66 ubnt,litebeam-ac-gen2|\
67 ubnt,nanobeam-ac|\
68 ubnt,nanobridge-m|\
69 ubnt,nanostation-ac-loco|\
70 ubnt,nanostation-loco-m|\
71 ubnt,nanostation-loco-m-xw|\
72 ubnt,picostation-m|\
73 ubnt,powerbeam-5ac-500|\
74 ubnt,powerbeam-5ac-gen2|\
75 ubnt,powerbridge-m|\
76 ubnt,rocket-m|\
77 ubnt,unifiac-lite|\
78 ubnt,unifiac-lr|\
79 ubnt,unifiac-mesh|\
80 ubnt,unifi|\
81 wd,mynet-wifi-rangeextender|\
82 winchannel,wb2000)
83 ucidef_set_interface_lan "eth0"
84 ;;
85 airtight,c-75)
86 ucidef_add_switch "switch0" \
87 "0@eth0" "2:wan" "3:lan" "6@eth1"
88 ;;
89 alfa-network,ap121fe)
90 ucidef_set_interface_lan "eth0 usb0"
91 ;;
92 alfa-network,n2q|\
93 alfa-network,n5q|\
94 devolo,dvl1200e|\
95 devolo,dvl1750e|\
96 ocedo,ursus)
97 ucidef_set_interface_lan "eth0 eth1"
98 ;;
99 avm,fritz4020|\
100 pcs,cr3000|\
101 tplink,archer-c58-v1|\
102 tplink,archer-c59-v1|\
103 tplink,archer-c59-v2)
104 ucidef_set_interface_wan "eth1"
105 ucidef_add_switch "switch0" \
106 "0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
107 ;;
108 belkin,f9j1108-v2|\
109 belkin,f9k1115-v2|\
110 tplink,archer-c5-v1|\
111 tplink,archer-c7-v1|\
112 tplink,archer-c7-v2|\
113 tplink,tl-wdr4900-v2|\
114 tplink,tl-wdr7500-v3)
115 ucidef_add_switch "switch0" \
116 "0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
117 ;;
118 buffalo,bhr-4grv|\
119 buffalo,wzr-hp-g450h)
120 ucidef_add_switch "switch0" \
121 "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
122 ;;
123 buffalo,bhr-4grv2|\
124 trendnet,tew-823dru)
125 ucidef_add_switch "switch0" \
126 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth0"
127 ;;
128 buffalo,wzr-600dhp|\
129 buffalo,wzr-hp-ag300h|\
130 tplink,archer-c25-v1|\
131 tplink,archer-c60-v1|\
132 tplink,archer-c60-v2|\
133 tplink,archer-c60-v3|\
134 tplink,tl-wdr3500-v1|\
135 tplink,tl-wr842n-v1|\
136 tplink,tl-wr842n-v3|\
137 ubnt,airrouter)
138 ucidef_set_interface_wan "eth1"
139 ucidef_add_switch "switch0" \
140 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
141 ;;
142 buffalo,wzr-hp-g302h-a1a0)
143 ucidef_add_switch "switch0" \
144 "0@eth0" "1:lan:1" "3:lan:4" "4:lan:3" "5:lan:2" "2:wan"
145 ;;
146 comfast,cf-e110n-v2|\
147 comfast,cf-e120a-v3|\
148 comfast,cf-e314n-v2|\
149 compex,wpj531-16m|\
150 tplink,cpe210-v1|\
151 tplink,cpe220-v2|\
152 tplink,cpe220-v3|\
153 tplink,cpe510-v1|\
154 tplink,wbs210-v1|\
155 tplink,wbs210-v2|\
156 tplink,wbs510-v1|\
157 tplink,wbs510-v2|\
158 ubnt,nanostation-m|\
159 ubnt,routerstation)
160 ucidef_set_interfaces_lan_wan "eth1" "eth0"
161 ;;
162 comfast,cf-e560ac)
163 ucidef_set_interface_wan "eth1"
164 ucidef_add_switch "switch0" \
165 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
166 ;;
167 comfast,cf-wr650ac-v1|\
168 comfast,cf-wr650ac-v2|\
169 zyxel,nbg6616)
170 ucidef_add_switch "switch0" \
171 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
172 ;;
173 compex,wpj344-16m|\
174 compex,wpj563)
175 ucidef_add_switch "switch0" \
176 "0@eth0" "3:lan" "2:wan"
177 ;;
178 devolo,magic-2-wifi)
179 ucidef_add_switch "switch0" \
180 "0@eth0" "2:wan" "3:lan" "4:lan"
181 ;;
182 dlink,dap-2695-a1)
183 ucidef_add_switch "switch0" "0@eth0" "2:lan" "3:wan" "6@eth1"
184 ;;
185 dlink,dch-g020-a1)
186 ucidef_add_switch "switch0" \
187 "0@eth0" "1:lan:2" "2:lan:1"
188 ;;
189 dlink,dir-825-b1)
190 ucidef_set_interface_wan "eth1"
191 ucidef_add_switch "switch0" \
192 "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
193 ;;
194 dlink,dir-825-c1|\
195 dlink,dir-835-a1|\
196 dlink,dir-842-c1|\
197 dlink,dir-842-c2|\
198 dlink,dir-842-c3|\
199 dlink,dir-859-a1|\
200 engenius,epg5000|\
201 tplink,archer-c2-v3|\
202 tplink,tl-wr1043nd-v4|\
203 tplink,tl-wr1043n-v5)
204 ucidef_add_switch "switch0" \
205 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
206 ;;
207 elecom,wrc-1750ghbk2-i|\
208 elecom,wrc-300ghbk2-i|\
209 sitecom,wlr-8100)
210 ucidef_add_switch "switch0" \
211 "0@eth0" "2:lan:4" "3:lan:3" "4:lan:2" "5:lan:1" "1:wan"
212 ;;
213 embeddedwireless,dorin)
214 ucidef_add_switch "switch0" \
215 "0@eth0" "1:wan" "2:lan:3" "3:lan:2"
216 ;;
217 engenius,enh202-v1)
218 ucidef_set_interface_wan "eth0"
219 ucidef_add_switch "switch0" \
220 "0@eth1" "4:lan:1"
221 ;;
222 engenius,ens202ext-v1)
223 ucidef_set_interface_wan "eth1"
224 ucidef_add_switch "switch0" \
225 "0@eth0" "1:lan"
226 ;;
227 engenius,ews511ap)
228 ucidef_set_interface_lan "eth0 eth1" "dhcp"
229 ;;
230 etactica,eg200)
231 ucidef_set_interface_lan "eth0" "dhcp"
232 ;;
233 glinet,gl-ar750)
234 ucidef_set_interface_wan "eth1"
235 ucidef_add_switch "switch0" \
236 "0@eth0" "1:lan" "2:lan"
237 ;;
238 iodata,etg3-r|\
239 iodata,wn-ac1167dgr|\
240 iodata,wn-ac1600dgr|\
241 iodata,wn-ac1600dgr2|\
242 iodata,wn-ag300dgr|\
243 pcs,cr5000|\
244 sitecom,wlr-7100|\
245 wd,mynet-n750)
246 ucidef_add_switch "switch0" \
247 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
248 ;;
249 librerouter,librerouter-v1)
250 ucidef_add_switch "switch0" \
251 "0@eth0" "5:wan" "6@eth1" "4:lan"
252 ;;
253 mercury,mw4530r-v1|\
254 tplink,archer-a7-v5|\
255 tplink,archer-c6-v2|\
256 tplink,archer-c6-v2-us|\
257 tplink,archer-c7-v4|\
258 tplink,archer-c7-v5|\
259 tplink,tl-wdr3600-v1|\
260 tplink,tl-wdr4300-v1|\
261 tplink,tl-wdr4300-v1-il|\
262 tplink,tl-wdr4310-v1)
263 ucidef_add_switch "switch0" \
264 "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
265 ;;
266 nec,wg1200cr|\
267 qxwlan,e1700ac-v2-8m|\
268 qxwlan,e1700ac-v2-16m|\
269 qxwlan,e750g-v8-8m|\
270 qxwlan,e750g-v8-16m|\
271 ubnt,nanobeam-ac-gen2|\
272 ubnt,nanostation-ac|\
273 yuncore,a782|\
274 yuncore,xd4200)
275 ucidef_add_switch "switch0" \
276 "0@eth0" "2:lan" "3:wan"
277 ;;
278 nec,wg800hp)
279 ucidef_add_switch "switch0" \
280 "0@eth0" "2:lan" "3:lan" "4:lan" "1:wan"
281 ;;
282 netgear,wndr3700|\
283 netgear,wndr3700-v2|\
284 netgear,wndr3800|\
285 netgear,wndr3800ch|\
286 netgear,wndrmac-v1|\
287 netgear,wndrmac-v2)
288 ucidef_set_interface_wan "eth1"
289 ucidef_add_switch "switch0" \
290 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5u@eth0"
291 ucidef_add_switch_attr "switch0" "blinkrate" 2
292 ucidef_add_switch_port_attr "switch0" 1 led 6
293 ucidef_add_switch_port_attr "switch0" 2 led 9
294 ucidef_add_switch_port_attr "switch0" 5 led 2
295 ;;
296 netgear,wnr2200-8m|\
297 netgear,wnr2200-16m)
298 ucidef_set_interface_wan "eth0"
299 ucidef_add_switch "switch0" \
300 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
301 ;;
302 phicomm,k2t)
303 ucidef_add_switch "switch0" \
304 "0@eth0" "3:lan:1" "5:lan:2" "4:wan"
305 ;;
306 qihoo,c301)
307 ucidef_set_interface_wan "eth1"
308 ucidef_add_switch "switch0" \
309 "0@eth0" "2:lan" "3:lan"
310 ;;
311 qxwlan,e558-v2-8m|\
312 qxwlan,e558-v2-16m)
313 ucidef_add_switch "switch0" \
314 "0@eth1" "4:lan" "5:lan" "6@eth0" "3:wan"
315 ;;
316 rosinson,wr818)
317 ucidef_add_switch "switch0" \
318 "0@eth0" "1:lan" "2:lan" "3:wan"
319 ;;
320 teltonika,rut955|\
321 teltonika,rut955-h7v3c0)
322 ucidef_set_interface_wan "eth1"
323 ucidef_add_switch "switch0" \
324 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1"
325 ;;
326 tplink,archer-d50-v1)
327 ucidef_add_switch "switch0" \
328 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "1:wan"
329 ;;
330 tplink,archer-d7-v1|\
331 tplink,archer-d7b-v1)
332 ucidef_add_switch "switch0" \
333 "0@eth1" "3:lan:3" "4:lan:2" "5:lan:1" "6@eth0" "2:wan:4" "1:wan:5"
334 ;;
335 tplink,eap225-wall-v2)
336 ucidef_add_switch "switch0" \
337 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
338 ;;
339 tplink,eap245-v3)
340 ucidef_add_switch "switch0" \
341 "0@eth0" "2:lan:1" "5:lan:2"
342 ;;
343 tplink,tl-mr6400-v1)
344 ucidef_set_interfaces_lan_wan "eth0.1 eth1" "usb0"
345 ucidef_add_switch "switch0" \
346 "0@eth0" "1:lan:1" "2:lan:3" "3:lan:2"
347 ;;
348 tplink,tl-wpa8630-v1|\
349 tplink,tl-wpa8630p-v2-int|\
350 tplink,tl-wpa8630p-v2.0-eu|\
351 tplink,tl-wpa8630p-v2.1-eu)
352 # port 5 (internal) is the power-line port
353 ucidef_add_switch "switch0" \
354 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "5:lan:4"
355 ;;
356 tplink,tl-wr842n-v2)
357 ucidef_set_interface_wan "eth1"
358 ucidef_add_switch "switch0" \
359 "0@eth0" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
360 ;;
361 tplink,tl-wr1043nd-v1)
362 ucidef_add_switch "switch0" \
363 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
364 ;;
365 tplink,tl-wr1043nd-v2|\
366 tplink,tl-wr1043nd-v3|\
367 tplink,tl-wr1045nd-v2)
368 ucidef_add_switch "switch0" \
369 "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
370 ;;
371 tplink,tl-wr2543-v1)
372 ucidef_add_switch "switch0" \
373 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
374 ;;
375 ubnt,aircube-isp)
376 ucidef_set_interface_wan "eth1"
377 ucidef_add_switch "switch0" \
378 "0@eth0" "2:lan:1" "3:lan:3" "4:lan:2"
379 ;;
380 ubnt,edgeswitch-5xp)
381 ucidef_set_interface_wan "eth1"
382 ucidef_add_switch "switch0" \
383 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:lan"
384 ;;
385 ubnt,edgeswitch-8xp)
386 ucidef_set_interface_wan "eth1"
387 ucidef_add_switch "switch0" \
388 "0:lan:1" "1:lan:2" "2:lan:3" "3:lan:4" "4:lan:5" "5:lan:6" "6:lan:7" "7:lan:8" "8@eth0"
389 ;;
390 ubnt,routerstation-pro)
391 ucidef_set_interface_wan "eth0"
392 ucidef_add_switch "switch0" \
393 "0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
394 ;;
395 ubnt,nanostation-m-xw)
396 ucidef_add_switch "switch0" \
397 "0@eth0" "5:lan" "1:wan"
398 ;;
399 ubnt,unifiac-mesh-pro|\
400 ubnt,unifiac-pro)
401 ucidef_add_switch "switch0" \
402 "0@eth0" "2:lan:1" "3:lan:2"
403 ;;
404 ubnt,unifi-ap-pro)
405 ucidef_add_switch "switch0" \
406 "0@eth0" "1:lan" "2:lan"
407 ;;
408 zbtlink,zbt-wd323|\
409 xiaomi,mi-router-4q)
410 ucidef_set_interface_wan "eth1"
411 ucidef_add_switch "switch0" \
412 "0@eth0" "3:lan:1" "4:lan:2"
413 ;;
414 *)
415 ucidef_set_interfaces_lan_wan "eth0" "eth1"
416 ;;
417 esac
418 }
419
420 ath79_setup_macs()
421 {
422 local board="$1"
423
424 case "$board" in
425 adtran,bsap1800-v2|\
426 adtran,bsap1840)
427 lan_mac=$(mtd_get_mac_binary "Board data" 2)
428 label_mac=$lan_mac
429 ;;
430 alfa-network,ap121f|\
431 alfa-network,ap121fe|\
432 alfa-network,n2q|\
433 alfa-network,n5q|\
434 alfa-network,pi-wifi4|\
435 alfa-network,r36a|\
436 engenius,eap300-v2|\
437 engenius,ens202ext-v1)
438 label_mac=$(mtd_get_mac_binary art 0x1002)
439 ;;
440 arduino,yun)
441 base_mac=$(mtd_get_mac_binary art 0x1002)
442 lan_mac=$(macaddr_setbit $base_mac 29)
443 [ $lan_mac = $base_mac ] && lan_mac=$(macaddr_unsetbit $base_mac 29)
444 ;;
445 avm,fritz1750e|\
446 avm,fritz450e|\
447 avm,fritzdvbc)
448 label_mac=$(fritz_tffs -n macwlan -i $(find_mtd_part "tffs (1)"))
449 ;;
450 avm,fritz300e)
451 lan_mac=$(fritz_tffs -n maca -i $(find_mtd_part "tffs (1)"))
452 label_mac=$(fritz_tffs -n macwlan -i $(find_mtd_part "tffs (1)"))
453 ;;
454 avm,fritz4020)
455 lan_mac=$(fritz_tffs -n maca -i $(find_mtd_part "tffs (1)"))
456 wan_mac=$(fritz_tffs -n macb -i $(find_mtd_part "tffs (1)"))
457 ;;
458 compex,wpj344-16m|\
459 compex,wpj563)
460 wan_mac=$(mtd_get_mac_binary u-boot 0x2e018)
461 ;;
462 devolo,magic-2-wifi)
463 label_mac=$(macaddr_add "$(mtd_get_mac_binary art 0x1002)" 3)
464 ;;
465 dlink,dap-1330-a1|\
466 dlink,dap-1365-a1|\
467 dlink,dch-g020-a1)
468 lan_mac=$(mtd_get_mac_text "mp" 0x1)
469 label_mac=$lan_mac
470 ;;
471 dlink,dap-2695-a1)
472 label_mac=$(mtd_get_mac_ascii bdcfg "wlanmac")
473 ;;
474 dlink,dir-825-b1)
475 lan_mac=$(mtd_get_mac_text "caldata" 0xffa0)
476 wan_mac=$(mtd_get_mac_text "caldata" 0xffb4)
477 ;;
478 dlink,dir-505)
479 lan_mac=$(mtd_get_mac_text "mac" 0x4)
480 ;;
481 dlink,dir-825-c1|\
482 dlink,dir-835-a1)
483 lan_mac=$(mtd_get_mac_text "mac" 0x4)
484 wan_mac=$(mtd_get_mac_text "mac" 0x18)
485 ;;
486 dlink,dir-842-c1|\
487 dlink,dir-842-c2|\
488 dlink,dir-842-c3|\
489 nec,wg1200cr)
490 lan_mac=$(mtd_get_mac_ascii devdata "lanmac")
491 wan_mac=$(mtd_get_mac_ascii devdata "wanmac")
492 label_mac=$lan_mac
493 ;;
494 dlink,dir-859-a1|\
495 qihoo,c301|\
496 wd,mynet-n750)
497 lan_mac=$(mtd_get_mac_ascii devdata "lanmac")
498 wan_mac=$(mtd_get_mac_ascii devdata "wanmac")
499 ;;
500 elecom,wrc-1750ghbk2-i|\
501 elecom,wrc-300ghbk2-i)
502 wan_mac=$(macaddr_add "$(mtd_get_mac_binary art 0x1002)" -2)
503 ;;
504 engenius,ecb1200|\
505 engenius,ecb1750)
506 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
507 label_mac=$lan_mac
508 ;;
509 engenius,enh202-v1|\
510 ubnt,airrouter|\
511 ubnt,bullet-m-ar7240|\
512 ubnt,bullet-m-ar7241|\
513 ubnt,nanobridge-m|\
514 ubnt,nanostation-loco-m|\
515 ubnt,nanostation-m|\
516 ubnt,picostation-m|\
517 ubnt,powerbridge-m|\
518 ubnt,rocket-m|\
519 ubnt,unifi)
520 label_mac=$(cat /sys/class/ieee80211/phy0/macaddress)
521 ;;
522 engenius,epg5000)
523 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
524 wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
525 ;;
526 engenius,ews511ap)
527 lan_mac=$(mtd_get_mac_text "u-boot-env" 0xe9)
528 eth1_mac=$(macaddr_add "$lan_mac" 1)
529 ucidef_set_interface "eth0" ifname "eth0" protocol "none" macaddr "$lan_mac"
530 ucidef_set_interface "eth1" ifname "eth1" protocol "none" macaddr "$eth1_mac"
531 ;;
532 enterasys,ws-ap3705i)
533 label_mac=$(mtd_get_mac_ascii u-boot-env0 ethaddr)
534 ;;
535 hak5,lan-turtle|\
536 hak5,packet-squirrel)
537 label_mac=$(mtd_get_mac_binary u-boot 0x1fc00)
538 ;;
539 iodata,etg3-r)
540 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
541 wan_mac=$(macaddr_add "$lan_mac" -1)
542 label_mac=$wan_mac
543 ;;
544 iodata,wn-ac1167dgr|\
545 iodata,wn-ac1600dgr|\
546 iodata,wn-ac1600dgr2|\
547 iodata,wn-ag300dgr)
548 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
549 wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
550 label_mac=$wan_mac
551 ;;
552 jjplus,ja76pf2)
553 wan_mac=$(fconfig -s -r -d $(find_mtd_part "RedBoot config") -n alias/ethaddr)
554 lan_mac=$(macaddr_add "$wan_mac" 1)
555 ;;
556 mercury,mw4530r-v1|\
557 tplink,tl-wdr3600-v1|\
558 tplink,tl-wdr4300-v1|\
559 tplink,tl-wdr4300-v1-il)
560 base_mac=$(mtd_get_mac_binary u-boot 0x1fc00)
561 wan_mac=$(macaddr_add "$base_mac" 1)
562 ;;
563 nec,wg800hp)
564 lan_mac=$(mtd_get_mac_text board_data 0x280)
565 wan_mac=$(mtd_get_mac_text board_data 0x480)
566 label_mac=$wan_mac
567 ;;
568 netgear,wndr3700|\
569 netgear,wndr3700-v2|\
570 netgear,wndr3800|\
571 netgear,wndrmac-v1|\
572 netgear,wndrmac-v2)
573 lan_mac=$(macaddr_setbit_la "$(mtd_get_mac_binary art 0x0)")
574 ;;
575 phicomm,k2t)
576 lan_mac=$(k2t_get_mac "lan_mac")
577 wan_mac=$(k2t_get_mac "wan_mac")
578 ;;
579 rosinson,wr818)
580 wan_mac=$(mtd_get_mac_binary factory 0x0)
581 lan_mac=$(macaddr_setbit_la "$wan_mac")
582 ;;
583 sitecom,wlr-7100|\
584 sitecom,wlr-8100)
585 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
586 wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
587 label_mac=$lan_mac
588 ;;
589 tplink,archer-a7-v5|\
590 tplink,archer-c7-v4|\
591 tplink,archer-c7-v5|\
592 tplink,tl-wr1043nd-v4|\
593 tplink,tl-wr1043n-v5)
594 base_mac=$(mtd_get_mac_binary info 0x8)
595 wan_mac=$(macaddr_add "$base_mac" 1)
596 ;;
597 trendnet,tew-823dru)
598 lan_mac=$(mtd_get_mac_text mac 0x4)
599 wan_mac=$(mtd_get_mac_text mac 0x18)
600 label_mac=$wan_mac
601 ;;
602 ubnt,litebeam-ac-gen2|\
603 ubnt,nanobeam-ac-gen2|\
604 ubnt,powerbeam-5ac-500|\
605 ubnt,powerbeam-5ac-gen2)
606 label_mac=$(mtd_get_mac_binary art 0x5006)
607 ;;
608 ubnt,routerstation|\
609 ubnt,routerstation-pro)
610 wan_mac=$(fconfig -s -r -d $(find_mtd_part "RedBoot config") -n ar7100_esa)
611 lan_mac=$(macaddr_add "$wan_mac" 1)
612 ;;
613 wd,mynet-wifi-rangeextender)
614 lan_mac=$(nvram get et0macaddr)
615 ;;
616 zyxel,nbg6616)
617 label_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
618 ;;
619 esac
620
621 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
622 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
623 [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
624 }
625
626 board_config_update
627 board=$(board_name)
628 ath79_setup_interfaces $board
629 ath79_setup_macs $board
630 board_config_flush
631
632 exit 0