a9b78e4350dea383f809967675d8ee5e555a204c
[openwrt/staging/hauke.git] / target / linux / ath79 / generic / base-files / etc / board.d / 02_network
1
2 . /lib/functions/system.sh
3 . /lib/functions/uci-defaults.sh
4 . /lib/functions/k2t.sh
5
6 ath79_setup_interfaces()
7 {
8 local board="$1"
9
10 case "$board" in
11 adtran,bsap1800-v2|\
12 adtran,bsap1840|\
13 allnet,all-wap02860ac|\
14 alfa-network,ap121f|\
15 alfa-network,pi-wifi4|\
16 alfa-network,tube-2hq|\
17 araknis,an-300-ap-i-n|\
18 araknis,an-500-ap-i-ac|\
19 araknis,an-700-ap-i-ac|\
20 arduino,yun|\
21 aruba,ap-105|\
22 aruba,ap-175|\
23 asus,rp-ac51|\
24 asus,rp-ac66|\
25 avm,fritz1750e|\
26 avm,fritz300e|\
27 avm,fritzdvbc|\
28 comfast,cf-wr752ac-v1|\
29 comfast,cf-e130n-v2|\
30 comfast,cf-e380ac-v2|\
31 devolo,dvl1200i|\
32 devolo,dvl1750c|\
33 devolo,dvl1750i|\
34 devolo,dvl1750x|\
35 dlink,dap-1330-a1|\
36 dlink,dap-1365-a1|\
37 dlink,dap-2230-a1|\
38 dlink,dap-2660-a1|\
39 dlink,dap-2680-a1|\
40 dlink,dap-3320-a1|\
41 dlink,dir-505|\
42 engenius,eap1200h|\
43 engenius,eap1750h|\
44 engenius,eap600|\
45 engenius,ecb1200|\
46 engenius,ecb1750|\
47 engenius,ecb600|\
48 enterasys,ws-ap3705i|\
49 extreme-networks,ws-ap3805i|\
50 fortinet,fap-220-b|\
51 fortinet,fap-221-b|\
52 glinet,gl-ar300m-lite|\
53 glinet,gl-usb150|\
54 hak5,wifi-pineapple-nano|\
55 meraki,mr16|\
56 netgear,ex7300|\
57 netgear,ex7300-v2|\
58 netgear,wndap360|\
59 ocedo,koala|\
60 ocedo,raccoon|\
61 onion,omega|\
62 openmesh,mr600-v1|\
63 openmesh,mr600-v2|\
64 openmesh,mr900-v1|\
65 openmesh,mr900-v2|\
66 openmesh,mr1750-v1|\
67 openmesh,mr1750-v2|\
68 pcs,cap324|\
69 pisen,ts-d084|\
70 pisen,wmb001n|\
71 pisen,wmm003n|\
72 ruckus,zf7321|\
73 ruckus,zf7341|\
74 ruckus,zf7351|\
75 siemens,ws-ap3610|\
76 sophos,ap15|\
77 sophos,ap55|\
78 sophos,ap55c|\
79 sophos,ap100|\
80 sophos,ap100c|\
81 tplink,cpe210-v2|\
82 tplink,cpe210-v3|\
83 tplink,cpe510-v2|\
84 tplink,cpe510-v3|\
85 tplink,cpe605-v1|\
86 tplink,cpe610-v1|\
87 tplink,cpe610-v2|\
88 tplink,cpe710-v1|\
89 tplink,eap225-outdoor-v1|\
90 tplink,eap225-outdoor-v3|\
91 tplink,eap225-v1|\
92 tplink,eap225-v3|\
93 tplink,eap225-v4|\
94 tplink,eap245-v1|\
95 tplink,re350k-v1|\
96 tplink,re355-v1|\
97 tplink,re450-v1|\
98 tplink,re450-v2|\
99 tplink,re450-v3|\
100 tplink,re455-v1|\
101 tplink,tl-wa1201-v2|\
102 tplink,tl-wr902ac-v1|\
103 ubnt,bullet-ac|\
104 ubnt,bullet-m-xw|\
105 ubnt,lap-120|\
106 ubnt,litebeam-ac-gen2|\
107 ubnt,nanobeam-ac|\
108 ubnt,nanobeam-ac-xc|\
109 ubnt,nanostation-ac-loco|\
110 ubnt,nanostation-loco-m-xw|\
111 ubnt,powerbeam-5ac-500|\
112 ubnt,powerbeam-5ac-gen2|\
113 ubnt,powerbeam-m2-xw|\
114 ubnt,powerbeam-m5-xw|\
115 ubnt,powerbridge-m|\
116 ubnt,rocket-5ac-lite|\
117 ubnt,rocket-m|\
118 ubnt,unifiac-lite|\
119 ubnt,unifiac-lr|\
120 ubnt,unifiac-mesh|\
121 ubnt,unifi|\
122 watchguard,ap100|\
123 watchguard,ap200|\
124 watchguard,ap300|\
125 wd,mynet-wifi-rangeextender|\
126 winchannel,wb2000|\
127 zyxel,nwa1100-nh|\
128 zyxel,nwa1121-ni|\
129 zyxel,nwa1123-ac|\
130 zyxel,nwa1123-ni)
131 ucidef_set_interface_lan "eth0"
132 ;;
133 airtight,c-75)
134 ucidef_add_switch "switch0" \
135 "0@eth0" "2:wan" "3:lan" "6@eth1"
136 ;;
137 alfa-network,ap121fe)
138 ucidef_set_interface_lan "eth0 usb0"
139 ;;
140 alfa-network,n2q|\
141 alfa-network,n5q|\
142 devolo,dvl1200e|\
143 devolo,dvl1750e|\
144 engenius,enstationac-v1|\
145 engenius,ews511ap|\
146 engenius,ews660ap|\
147 ocedo,ursus|\
148 ruckus,zf7363|\
149 ruckus,zf7372|\
150 ubnt,unifi-ap-outdoor-plus)
151 ucidef_set_interface_lan "eth0 eth1"
152 ;;
153 asus,pl-ac56)
154 # port 6 (internal) is the power-line port
155 ucidef_add_switch "switch0" \
156 "0@eth0" "1:lan:1" "2:lan:2" "3:lan:3" "6:lan:4"
157 ;;
158 asus,zenwifi-cd6n)
159 ucidef_add_switch "switch0" \
160 "0@eth0" "1:lan:1" "4:lan:2"
161 ;;
162 asus,zenwifi-cd6r)
163 ucidef_add_switch "switch0" \
164 "0@eth0" "1:lan:2" "3:lan:1" "4:lan:3" "2:wan"
165 ;;
166 atheros,db120)
167 ucidef_add_switch "switch0" \
168 "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
169 ucidef_add_switch "switch1" \
170 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:lan"
171 ;;
172 avm,fritz4020|\
173 pcs,cr3000|\
174 tplink,archer-c58-v1|\
175 tplink,archer-c59-v1|\
176 tplink,archer-c59-v2|\
177 wd,mynet-n600)
178 ucidef_set_interface_wan "eth1"
179 ucidef_add_switch "switch0" \
180 "0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
181 ;;
182 belkin,f9j1108-v2|\
183 belkin,f9k1115-v2|\
184 tplink,archer-c5-v1|\
185 tplink,archer-c7-v1|\
186 tplink,archer-c7-v2|\
187 tplink,tl-wdr4900-v2|\
188 tplink,tl-wdr7500-v3)
189 ucidef_add_switch "switch0" \
190 "0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
191 ;;
192 buffalo,bhr-4grv|\
193 buffalo,wzr-hp-g450h)
194 ucidef_add_switch "switch0" \
195 "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
196 ;;
197 buffalo,bhr-4grv2|\
198 trendnet,tew-823dru)
199 ucidef_add_switch "switch0" \
200 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth0"
201 ;;
202 buffalo,wzr-600dhp|\
203 buffalo,wzr-hp-ag300h|\
204 tplink,archer-c25-v1|\
205 tplink,archer-c60-v1|\
206 tplink,archer-c60-v2|\
207 tplink,archer-c60-v3|\
208 tplink,tl-wdr3500-v1|\
209 tplink,tl-wr842n-v1|\
210 tplink,tl-wr842n-v3)
211 ucidef_set_interface_wan "eth1"
212 ucidef_add_switch "switch0" \
213 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
214 ;;
215 teltonika,rut300)
216 ucidef_set_interface_wan "eth1"
217 ucidef_add_switch "switch0" \
218 "0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
219 ;;
220 buffalo,wzr-hp-g300nh-rb|\
221 buffalo,wzr-hp-g300nh-s|\
222 dlink,dir-825-b1|\
223 trendnet,tew-673gru)
224 ucidef_set_interface_wan "eth1"
225 ucidef_add_switch "switch0" \
226 "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
227 ;;
228 buffalo,wzr-hp-g302h-a1a0)
229 ucidef_add_switch "switch0" \
230 "0@eth0" "1:lan:1" "3:lan:4" "4:lan:3" "5:lan:2" "2:wan"
231 ;;
232 alcatel,hh40v|\
233 comfast,cf-e110n-v2|\
234 comfast,cf-e120a-v3|\
235 comfast,cf-e314n-v2|\
236 compex,wpj531-16m|\
237 openmesh,a40|\
238 openmesh,a60|\
239 openmesh,om2p-v1|\
240 openmesh,om2p-v4|\
241 openmesh,om2p-hs-v4|\
242 plasmacloud,pa300|\
243 plasmacloud,pa300e|\
244 tplink,cpe210-v1|\
245 tplink,cpe220-v2|\
246 tplink,cpe220-v3|\
247 tplink,cpe510-v1|\
248 tplink,wbs210-v1|\
249 tplink,wbs210-v2|\
250 tplink,wbs510-v1|\
251 tplink,wbs510-v2|\
252 ubnt,routerstation)
253 ucidef_set_interfaces_lan_wan "eth1" "eth0"
254 ;;
255 comfast,cf-e375ac|\
256 moxa,awk-1137c)
257 ucidef_add_switch "switch0" \
258 "0@eth0" "1:wan" "2:lan"
259 ;;
260 comfast,cf-e560ac|\
261 qca,ap143-8m|\
262 qca,ap143-16m|\
263 tplink,tl-wr841hp-v3|\
264 tplink,tl-wdr6500-v2)
265 ucidef_set_interface_wan "eth1"
266 ucidef_add_switch "switch0" \
267 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
268 ;;
269 comfast,cf-wr650ac-v1|\
270 comfast,cf-wr650ac-v2|\
271 zyxel,nbg6616)
272 ucidef_add_switch "switch0" \
273 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
274 ;;
275 compex,wpj344-16m|\
276 compex,wpj563)
277 ucidef_add_switch "switch0" \
278 "0@eth0" "3:lan" "2:wan"
279 ;;
280 compex,wpj558-16m)
281 ucidef_add_switch "switch0" \
282 "1:wan" "5:lan" "6@eth0"
283 ;;
284 devolo,dlan-pro-1200plus-ac|\
285 devolo,magic-2-wifi)
286 ucidef_add_switch "switch0" \
287 "0@eth0" "2:wan" "3:lan" "4:lan"
288 ;;
289 dlink,covr-p2500-a1)
290 ucidef_add_switch "switch0" \
291 "0@eth0" "1:lan" "2:lan" "3:wan" "4:plc"
292 ;;
293 dlink,dap-2695-a1)
294 ucidef_add_switch "switch0" \
295 "0@eth0" "2:lan" "3:wan" "6@eth1"
296 ;;
297 dlink,dap-3662-a1)
298 ucidef_add_switch "switch0" \
299 "0@eth0" "1:lan:2" "2:lan:1" "6@eth1"
300 ;;
301 dlink,dch-g020-a1)
302 ucidef_add_switch "switch0" \
303 "0@eth0" "1:lan:2" "2:lan:1"
304 ;;
305 dlink,dir-629-a1|\
306 dlink,dir-825-c1|\
307 dlink,dir-835-a1|\
308 dlink,dir-842-c1|\
309 dlink,dir-842-c2|\
310 dlink,dir-842-c3|\
311 dlink,dir-859-a1|\
312 dlink,dir-859-a3|\
313 dlink,dir-869-a1|\
314 engenius,epg5000|\
315 engenius,esr1200|\
316 engenius,esr1750|\
317 engenius,esr900|\
318 sitecom,wlr-7100|\
319 tplink,archer-c2-v3|\
320 tplink,tl-wr1043nd-v4|\
321 tplink,tl-wr1043n-v5)
322 ucidef_add_switch "switch0" \
323 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
324 ;;
325 elecom,wrc-1750ghbk2-i|\
326 elecom,wrc-300ghbk2-i|\
327 sitecom,wlr-8100)
328 ucidef_add_switch "switch0" \
329 "0@eth0" "2:lan:4" "3:lan:3" "4:lan:2" "5:lan:1" "1:wan"
330 ;;
331 embeddedwireless,balin)
332 ucidef_add_switch "switch0" \
333 "0@eth0" "5:lan:1" "4:lan:2" "3:wan"
334 ;;
335 embeddedwireless,dorin)
336 ucidef_add_switch "switch0" \
337 "0@eth0" "1:wan" "2:lan:3" "3:lan:2"
338 ;;
339 engenius,eap300-v2)
340 ucidef_add_switch "switch0" \
341 "0@eth0" "1:lan"
342 ;;
343 engenius,ens202ext-v1)
344 ucidef_set_interface_lan "eth1"
345 ucidef_add_switch "switch0" \
346 "0@eth0" "1:lan"
347 ;;
348 etactica,eg200)
349 ucidef_set_interface_lan "eth0" "dhcp"
350 ;;
351 glinet,gl-ar750)
352 ucidef_set_interface_wan "eth1"
353 ucidef_add_switch "switch0" \
354 "0@eth0" "1:lan" "2:lan"
355 ;;
356 glinet,gl-x300b)
357 ucidef_set_interface_wan "eth1"
358 ucidef_add_switch "switch0" \
359 "0@eth0" "4:lan"
360 ;;
361 iodata,etg3-r|\
362 iodata,wn-ac1167dgr|\
363 iodata,wn-ac1600dgr|\
364 iodata,wn-ac1600dgr2|\
365 iodata,wn-ag300dgr|\
366 pcs,cr5000|\
367 wd,mynet-n750)
368 ucidef_add_switch "switch0" \
369 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
370 ;;
371 jjplus,jwap230)
372 ucidef_add_switch "switch0" \
373 "0@eth0" "5:wan:1" "1:lan:2" "6@eth1"
374 ;;
375 joyit,jt-or750i)
376 ucidef_set_interface_wan "eth1"
377 ucidef_add_switch "switch0" \
378 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1"
379 ;;
380 kuwfi,c910)
381 ucidef_set_interface_wan "eth1"
382 ucidef_add_switch "switch0" \
383 "0@eth0" "1:lan:2" "4:lan:1"
384 ;;
385 letv,lba-047-ch)
386 ucidef_set_interface_wan "eth0"
387 ucidef_add_switch "switch0" \
388 "0@eth1" "3:lan:2" "4:lan:1"
389 ;;
390 librerouter,librerouter-v1)
391 ucidef_add_switch "switch0" \
392 "0@eth0" "5:wan" "6@eth1" "4:lan"
393 ;;
394 meraki,mr12)
395 ucidef_set_interface_lan "eth0"
396 ucidef_add_switch "switch0" \
397 "0@eth1" "1:lan"
398 ;;
399 asus,rt-ac59u|\
400 asus,rt-ac59u-v2|\
401 mercury,mw4530r-v1|\
402 tplink,archer-a7-v5|\
403 tplink,archer-a9-v6|\
404 tplink,archer-c6-v2|\
405 tplink,archer-c6-v2-us|\
406 tplink,archer-c7-v4|\
407 tplink,archer-c7-v5|\
408 tplink,tl-wdr3600-v1|\
409 tplink,tl-wdr4300-v1|\
410 tplink,tl-wdr4300-v1-il|\
411 tplink,tl-wdr4310-v1)
412 ucidef_add_switch "switch0" \
413 "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
414 ;;
415 nec,wf1200cr)
416 ucidef_set_interface_wan "eth1"
417 ucidef_add_switch "switch0" \
418 "0@eth0" "1:lan"
419 ;;
420 nec,wg1200cr|\
421 qxwlan,e1700ac-v2-8m|\
422 qxwlan,e1700ac-v2-16m|\
423 qxwlan,e750g-v8-8m|\
424 qxwlan,e750g-v8-16m|\
425 ubnt,nanobeam-ac-gen2|\
426 ubnt,nanostation-ac|\
427 yuncore,a782|\
428 yuncore,xd3200|\
429 yuncore,xd4200)
430 ucidef_add_switch "switch0" \
431 "0@eth0" "2:lan" "3:wan"
432 ;;
433 nec,wg800hp|\
434 xiaomi,aiot-ac2350)
435 ucidef_add_switch "switch0" \
436 "0@eth0" "2:lan" "3:lan" "4:lan" "1:wan"
437 ;;
438 netgear,wndr3700|\
439 netgear,wndr3700-v2|\
440 netgear,wndr3800|\
441 netgear,wndr3800ch|\
442 netgear,wndrmac-v1|\
443 netgear,wndrmac-v2)
444 ucidef_set_interface_wan "eth1"
445 ucidef_add_switch "switch0" \
446 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5u@eth0"
447 ucidef_add_switch_attr "switch0" "blinkrate" 2
448 ucidef_add_switch_port_attr "switch0" 1 led 6
449 ucidef_add_switch_port_attr "switch0" 2 led 9
450 ucidef_add_switch_port_attr "switch0" 5 led 2
451 ;;
452 netgear,wnr2200-8m|\
453 netgear,wnr2200-16m)
454 ucidef_set_interface_wan "eth0"
455 ucidef_add_switch "switch0" \
456 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
457 ;;
458 phicomm,k2t)
459 ucidef_add_switch "switch0" \
460 "0@eth0" "3:lan:1" "5:lan:2" "4:wan"
461 ;;
462 qihoo,c301)
463 ucidef_set_interface_wan "eth1"
464 ucidef_add_switch "switch0" \
465 "0@eth0" "2:lan" "3:lan"
466 ;;
467 qxwlan,e558-v2-8m|\
468 qxwlan,e558-v2-16m)
469 ucidef_add_switch "switch0" \
470 "0@eth1" "4:lan" "5:lan" "6@eth0" "3:wan"
471 ;;
472 rosinson,wr818)
473 ucidef_add_switch "switch0" \
474 "0@eth0" "1:lan" "2:lan" "3:wan"
475 ;;
476 ruckus,zf7025)
477 ucidef_set_interface_lan "eth0 eth1"
478 ucidef_add_switch "switch0" \
479 "0u@eth1" "4:lan:1" "3:lan:2" "2:lan:3" "1:lan:4"
480 ;;
481 teltonika,rut955|\
482 teltonika,rut955-h7v3c0)
483 ucidef_set_interface_wan "eth1"
484 ucidef_add_switch "switch0" \
485 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1"
486 ;;
487 tplink,archer-d50-v1)
488 ucidef_add_switch "switch0" \
489 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "1:wan"
490 ;;
491 tplink,archer-d7-v1|\
492 tplink,archer-d7b-v1)
493 ucidef_add_switch "switch0" \
494 "0@eth1" "3:lan:3" "4:lan:2" "5:lan:1" "6@eth0" "2:wan:4" "1:wan:5"
495 ;;
496 tplink,eap225-wall-v2)
497 ucidef_add_switch "switch0" \
498 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
499 ;;
500 tplink,eap245-v3)
501 ucidef_add_switch "switch0" \
502 "0@eth0" "2:lan:1" "5:lan:2"
503 ;;
504 tplink,tl-mr6400-v1)
505 ucidef_set_interfaces_lan_wan "eth0.1 eth1" "usb0"
506 ucidef_add_switch "switch0" \
507 "0@eth0" "1:lan:1" "2:lan:3" "3:lan:2"
508 ;;
509 tplink,tl-wpa8630-v1)
510 # port 5 (internal) is the power-line port
511 ucidef_add_switch "switch0" \
512 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "5:lan:4"
513 ;;
514 tplink,tl-wr841hp-v2|\
515 tplink,tl-wr842n-v2|\
516 tplink,tl-wr941hp-v1)
517 ucidef_set_interface_wan "eth1"
518 ucidef_add_switch "switch0" \
519 "0@eth0" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
520 ;;
521 tplink,tl-wr1043nd-v1)
522 ucidef_add_switch "switch0" \
523 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
524 ;;
525 tplink,tl-wr1043nd-v2|\
526 tplink,tl-wr1043nd-v3|\
527 tplink,tl-wr1045nd-v2)
528 ucidef_add_switch "switch0" \
529 "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
530 ;;
531 tplink,tl-wr2543-v1)
532 ucidef_add_switch "switch0" \
533 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
534 ;;
535 ubnt,aircube-ac)
536 ucidef_add_switch "switch0" \
537 "0@eth0" "2:lan:1" "3:lan:2" "5:lan:3" "4:wan"
538 ;;
539 ubnt,aircube-isp)
540 ucidef_set_interface_wan "eth1"
541 ucidef_add_switch "switch0" \
542 "0@eth0" "2:lan:1" "3:lan:3" "4:lan:2"
543 ;;
544 ubnt,edgeswitch-5xp)
545 ucidef_set_interface_wan "eth1"
546 ucidef_add_switch "switch0" \
547 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:lan"
548 ;;
549 ubnt,edgeswitch-8xp)
550 ucidef_set_interface_wan "eth1"
551 ucidef_add_switch "switch0" \
552 "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"
553 ;;
554 ubnt,routerstation-pro)
555 ucidef_set_interface_wan "eth0"
556 ucidef_add_switch "switch0" \
557 "0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
558 ;;
559 ubnt,nanostation-m-xw)
560 ucidef_add_switch "switch0" \
561 "0@eth0" "5:lan" "1:wan"
562 ;;
563 ubnt,unifiac-mesh-pro|\
564 ubnt,unifiac-pro)
565 ucidef_add_switch "switch0" \
566 "0@eth0" "2:lan:1" "3:lan:2"
567 ;;
568 ubnt,unifi-ap-pro)
569 ucidef_add_switch "switch0" \
570 "0@eth0" "1:lan" "2:lan"
571 ;;
572 tplink,deco-m4r-v1|\
573 tplink,deco-s4-v2)
574 ucidef_add_switch "switch0" \
575 "0@eth0" "3:lan:1" "5:lan:2"
576 ;;
577 hiwifi,hc6361|\
578 xiaomi,mi-router-4q|\
579 zbtlink,zbt-wd323)
580 ucidef_set_interface_wan "eth1"
581 ucidef_add_switch "switch0" \
582 "0@eth0" "3:lan:1" "4:lan:2"
583 ;;
584 *)
585 ucidef_set_interfaces_lan_wan "eth0" "eth1"
586 ;;
587 esac
588 }
589
590 ath79_setup_macs()
591 {
592 local board="$1"
593
594 case "$board" in
595 adtran,bsap1800-v2|\
596 adtran,bsap1840)
597 lan_mac=$(mtd_get_mac_binary "Board data" 2)
598 label_mac=$lan_mac
599 ;;
600 alfa-network,ap121f|\
601 alfa-network,ap121fe|\
602 alfa-network,n2q|\
603 alfa-network,n5q|\
604 alfa-network,pi-wifi4|\
605 alfa-network,r36a|\
606 alfa-network,tube-2hq|\
607 engenius,eap300-v2|\
608 engenius,ens202ext-v1)
609 label_mac=$(mtd_get_mac_binary art 0x1002)
610 ;;
611 arduino,yun)
612 base_mac=$(mtd_get_mac_binary art 0x1002)
613 lan_mac=$(macaddr_setbit $base_mac 29)
614 [ $lan_mac = $base_mac ] && lan_mac=$(macaddr_unsetbit $base_mac 29)
615 ;;
616 avm,fritz1750e|\
617 avm,fritz450e|\
618 avm,fritzdvbc)
619 label_mac=$(fritz_tffs -n macwlan -i $(find_mtd_part "tffs (1)"))
620 ;;
621 avm,fritz300e)
622 lan_mac=$(fritz_tffs -n maca -i $(find_mtd_part "tffs (1)"))
623 label_mac=$(fritz_tffs -n macwlan -i $(find_mtd_part "tffs (1)"))
624 ;;
625 avm,fritz4020)
626 lan_mac=$(fritz_tffs -n maca -i $(find_mtd_part "tffs (1)"))
627 wan_mac=$(fritz_tffs -n macb -i $(find_mtd_part "tffs (1)"))
628 ;;
629 comfast,cf-e375ac)
630 wan_mac=$(macaddr_add $(mtd_get_mac_binary art 0x0) 1)
631 ;;
632 compex,wpj344-16m|\
633 compex,wpj558-16m|\
634 compex,wpj563)
635 wan_mac=$(mtd_get_mac_binary u-boot 0x2e018)
636 ;;
637 devolo,dlan-pro-1200plus-ac|\
638 devolo,magic-2-wifi)
639 label_mac=$(macaddr_add "$(mtd_get_mac_binary art 0x1002)" 3)
640 ;;
641 dlink,covr-p2500-a1)
642 lan_mac=$(mtd_get_mac_ascii art "protest_lan_mac")
643 wan_mac=$(mtd_get_mac_ascii art "protest_lan_mac")
644 label_mac=$(mtd_get_mac_ascii art "protest_plc_mac")
645 plc_mac=$(mtd_get_mac_ascii art "protest_plc_mac")
646 [ -n "$plc_mac" ] && ucidef_set_interface_macaddr "plc" $plc_mac
647 ;;
648 dlink,dap-1330-a1|\
649 dlink,dap-1365-a1|\
650 dlink,dch-g020-a1)
651 lan_mac=$(mtd_get_mac_text "mp" 0x1)
652 label_mac=$lan_mac
653 ;;
654 dlink,dap-2230-a1|\
655 dlink,dap-2660-a1|\
656 dlink,dap-2680-a1|\
657 dlink,dap-3320-a1)
658 lan_mac=$(mtd_get_mac_ascii bdcfg "lanmac")
659 label_mac=$lan_mac
660 ;;
661 dlink,dap-2695-a1|\
662 dlink,dap-3662-a1)
663 label_mac=$(mtd_get_mac_ascii bdcfg "wlanmac")
664 ;;
665 dlink,dir-629-a1)
666 wan_mac=$(mtd_get_mac_text "mfcdata" 0x6a)
667 ;;
668 trendnet,tew-673gru)
669 lan_mac=$(mtd_get_mac_text "caldata" 0xffa0)
670 wan_mac=$(mtd_get_mac_text "caldata" 0xffb4)
671 label_mac=$wan_mac
672 ;;
673 dlink,dir-505)
674 lan_mac=$(mtd_get_mac_text "mac" 0x4)
675 ;;
676 dlink,dir-825-c1|\
677 dlink,dir-835-a1)
678 wan_mac=$(mtd_get_mac_text "mac" 0x18)
679 ;;
680 dlink,dir-842-c1|\
681 dlink,dir-842-c2|\
682 dlink,dir-842-c3)
683 lan_mac=$(mtd_get_mac_ascii devdata "lanmac")
684 wan_mac=$(mtd_get_mac_ascii devdata "wanmac")
685 label_mac=$lan_mac
686 ;;
687 dlink,dir-859-a1|\
688 dlink,dir-869-a1)
689 lan_mac=$(mtd_get_mac_text "devdata" 0xc9)
690 wan_mac=$(mtd_get_mac_text "devdata" 0x79)
691 ;;
692 dlink,dir-859-a3)
693 lan_mac=$(get_mac_label)
694 wan_mac=$(macaddr_add "$lan_mac" 3)
695 ;;
696 qihoo,c301|\
697 wd,mynet-n600|\
698 wd,mynet-n750)
699 lan_mac=$(mtd_get_mac_ascii devdata "lanmac")
700 wan_mac=$(mtd_get_mac_ascii devdata "wanmac")
701 ;;
702 elecom,wrc-1750ghbk2-i|\
703 elecom,wrc-300ghbk2-i)
704 wan_mac=$(mtd_get_mac_ascii hwconfig "HW.WAN.MAC.Address")
705 label_mac=$wan_mac
706 ;;
707 engenius,ecb1200|\
708 engenius,ecb1750)
709 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
710 label_mac=$lan_mac
711 ;;
712 engenius,epg5000|\
713 engenius,esr1200|\
714 engenius,esr1750|\
715 engenius,esr900)
716 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
717 wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
718 ;;
719 engenius,ews511ap)
720 lan_mac=$(mtd_get_mac_text "u-boot-env" 0xe9)
721 eth1_mac=$(macaddr_add "$lan_mac" 1)
722 ucidef_set_interface "eth0" ifname "eth0" protocol "none" macaddr "$lan_mac"
723 ucidef_set_interface "eth1" ifname "eth1" protocol "none" macaddr "$eth1_mac"
724 ;;
725 enterasys,ws-ap3705i)
726 label_mac=$(mtd_get_mac_ascii u-boot-env0 ethaddr)
727 ;;
728 fortinet,fap-221-b)
729 lan_mac=$(mtd_get_mac_text u-boot 0x3ff80 12)
730 label_mac=$lan_mac
731 ;;
732 hak5,lan-turtle|\
733 hak5,packet-squirrel)
734 label_mac=$(mtd_get_mac_binary u-boot 0x1fc00)
735 ;;
736 iodata,etg3-r)
737 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
738 wan_mac=$(macaddr_add "$lan_mac" -1)
739 label_mac=$wan_mac
740 ;;
741 iodata,wn-ac1167dgr|\
742 iodata,wn-ac1600dgr|\
743 iodata,wn-ac1600dgr2|\
744 iodata,wn-ag300dgr)
745 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
746 wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
747 label_mac=$wan_mac
748 ;;
749 mercury,mw4530r-v1|\
750 tplink,tl-wdr3600-v1|\
751 tplink,tl-wdr4300-v1|\
752 tplink,tl-wdr4300-v1-il)
753 base_mac=$(mtd_get_mac_binary u-boot 0x1fc00)
754 wan_mac=$(macaddr_add "$base_mac" 1)
755 ;;
756 tplink,deco-s4-v2)
757 lan_mac=$(mtd_get_mac_encrypted_deco $(find_mtd_part config))
758 label_mac=$lan_mac
759 ;;
760 moxa,awk-1137c)
761 lan_mac=$(mtd_get_mac_ascii u-boot-env mac_addr)
762 wan_mac=$(mtd_get_mac_ascii u-boot-env mac_addr)
763 label_mac=$lan_mac
764 ;;
765 nec,wf1200cr|\
766 nec,wg1200cr)
767 lan_mac=$(mtd_get_mac_ascii devdata "lanmac")
768 wan_mac=$(mtd_get_mac_ascii devdata "wanmac")
769 label_mac=$wan_mac
770 ;;
771 nec,wg800hp)
772 lan_mac=$(mtd_get_mac_text board_data 0x280)
773 wan_mac=$(mtd_get_mac_text board_data 0x480)
774 label_mac=$wan_mac
775 ;;
776 comfast,cf-e380ac-v2|\
777 netgear,wndr3700|\
778 netgear,wndr3700-v2|\
779 netgear,wndr3800|\
780 netgear,wndrmac-v1|\
781 netgear,wndrmac-v2)
782 lan_mac=$(macaddr_setbit_la "$(mtd_get_mac_binary art 0x0)")
783 ;;
784 phicomm,k2t)
785 lan_mac=$(k2t_get_mac "lan_mac")
786 wan_mac=$(k2t_get_mac "wan_mac")
787 ;;
788 rosinson,wr818)
789 wan_mac=$(mtd_get_mac_binary factory 0x0)
790 lan_mac=$(macaddr_setbit_la "$wan_mac")
791 ;;
792 ruckus,zf7025|\
793 ruckus,zf7321|\
794 ruckus,zf7341|\
795 ruckus,zf7351|\
796 ruckus,zf7363|\
797 ruckus,zf7372)
798 lan_mac=$(mtd_get_mac_binary board-data 0x807E)
799 label_mac=$lan_mac
800 ;;
801 sitecom,wlr-7100|\
802 sitecom,wlr-8100)
803 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
804 wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
805 label_mac=$lan_mac
806 ;;
807 tplink,archer-a7-v5|\
808 tplink,archer-a9-v6|\
809 tplink,archer-c7-v4|\
810 tplink,archer-c7-v5|\
811 tplink,tl-wr1043nd-v4|\
812 tplink,tl-wr1043n-v5)
813 base_mac=$(mtd_get_mac_binary info 0x8)
814 wan_mac=$(macaddr_add "$base_mac" 1)
815 ;;
816 trendnet,tew-823dru)
817 lan_mac=$(mtd_get_mac_text mac 0x4)
818 wan_mac=$(mtd_get_mac_text mac 0x18)
819 label_mac=$wan_mac
820 ;;
821 ubnt,powerbridge-m|\
822 ubnt,rocket-m|\
823 ubnt,unifi)
824 label_mac=$(cat /sys/class/ieee80211/phy0/macaddress)
825 ;;
826 ubnt,litebeam-ac-gen2|\
827 ubnt,nanobeam-ac-gen2|\
828 ubnt,nanobeam-ac-xc|\
829 ubnt,powerbeam-5ac-500|\
830 ubnt,powerbeam-5ac-gen2)
831 label_mac=$(mtd_get_mac_binary art 0x5006)
832 ;;
833 ubnt,routerstation|\
834 ubnt,routerstation-pro)
835 wan_mac=$(fconfig -s -r -d $(find_mtd_part "RedBoot config") -n ar7100_esa)
836 lan_mac=$(macaddr_add "$wan_mac" 1)
837 ;;
838 wd,mynet-wifi-rangeextender)
839 lan_mac=$(nvram get et0macaddr)
840 ;;
841 xiaomi,aiot-ac2350)
842 lan_mac=$(mtd_get_mac_binary art 0x1002)
843 ;;
844 zyxel,nbg6616)
845 label_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
846 ;;
847 esac
848
849 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
850 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
851 [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
852 }
853
854 board_config_update
855 board=$(board_name)
856 ath79_setup_interfaces $board
857 ath79_setup_macs $board
858 board_config_flush
859
860 exit 0