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