3 .
/lib
/functions
/system.sh
4 .
/lib
/functions
/uci-defaults.sh
5 .
/lib
/functions
/k2t.sh
7 ath79_setup_interfaces
()
14 allnet
,all-wap02860ac|\
16 alfa-network
,pi-wifi4|\
22 comfast
,cf-wr752ac-v1|\
32 enterasys
,ws-ap3705i|\
33 glinet
,gl-ar300m-lite|\
34 hak5
,wifi-pineapple-nano|\
57 tplink
,tl-wr902ac-v1|\
58 ubnt
,bullet-m-ar7240|\
59 ubnt
,bullet-m-ar7241|\
62 ubnt
,litebeam-ac-gen2|\
65 ubnt
,nanostation-ac-loco|\
66 ubnt
,nanostation-loco-m|\
67 ubnt
,nanostation-loco-m-xw|\
69 ubnt
,powerbeam-5ac-500|\
70 ubnt
,powerbeam-5ac-gen2|\
77 wd
,mynet-wifi-rangeextender|\
79 ucidef_set_interface_lan
"eth0"
82 ucidef_set_interface_lan
"eth0 usb0"
89 ucidef_set_interface_lan
"eth0 eth1"
93 tplink
,archer-c58-v1|\
94 tplink
,archer-c59-v1|\
96 ucidef_set_interface_wan
"eth1"
97 ucidef_add_switch
"switch0" \
98 "0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
101 buffalo
,wzr-hp-g450h
)
102 ucidef_add_switch
"switch0" \
103 "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
107 ucidef_add_switch
"switch0" \
108 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth0"
111 buffalo
,wzr-hp-ag300h|\
112 tplink
,archer-c25-v1|\
113 tplink
,archer-c60-v1|\
114 tplink
,archer-c60-v2|\
115 tplink
,archer-c60-v3|\
116 tplink
,tl-wdr3500-v1|\
117 tplink
,tl-wr842n-v1|\
118 tplink
,tl-wr842n-v3|\
120 ucidef_set_interface_wan
"eth1"
121 ucidef_add_switch
"switch0" \
122 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
124 buffalo
,wzr-hp-g302h-a1a0
)
125 ucidef_add_switch
"switch0" \
126 "0@eth0" "1:lan:1" "3:lan:4" "4:lan:3" "5:lan:2" "2:wan"
128 comfast
,cf-e110n-v2|\
129 comfast
,cf-e120a-v3|\
130 comfast
,cf-e314n-v2|\
142 ucidef_set_interfaces_lan_wan
"eth1" "eth0"
145 ucidef_set_interface_wan
"eth1"
146 ucidef_add_switch
"switch0" \
147 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
149 comfast
,cf-wr650ac-v1|\
150 comfast
,cf-wr650ac-v2|\
152 ucidef_add_switch
"switch0" \
153 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
157 ucidef_add_switch
"switch0" \
158 "0@eth0" "3:lan" "2:wan"
161 ucidef_add_switch
"switch0" \
162 "0@eth0" "2:wan" "3:lan" "4:lan"
165 ucidef_add_switch
"switch0" "0@eth0" "2:lan" "3:wan" "6@eth1"
168 ucidef_add_switch
"switch0" \
169 "0@eth0" "1:lan:2" "2:lan:1"
172 ucidef_set_interface_wan
"eth1"
173 ucidef_add_switch
"switch0" \
174 "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
183 tplink
,archer-c2-v3|\
184 tplink
,tl-wr1043nd-v4|\
185 tplink
,tl-wr1043n-v5
)
186 ucidef_add_switch
"switch0" \
187 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
189 elecom
,wrc-1750ghbk2-i|\
190 elecom
,wrc-300ghbk2-i|\
192 ucidef_add_switch
"switch0" \
193 "0@eth0" "2:lan:4" "3:lan:3" "4:lan:2" "5:lan:1" "1:wan"
195 embeddedwireless
,dorin
)
196 ucidef_add_switch
"switch0" \
197 "0@eth0" "1:wan" "2:lan:3" "3:lan:2"
200 ucidef_set_interface_wan
"eth0"
201 ucidef_add_switch
"switch0" \
204 engenius
,ens202ext-v1
)
205 ucidef_set_interface_wan
"eth1"
206 ucidef_add_switch
"switch0" \
210 ucidef_set_interface_lan
"eth0 eth1" "dhcp"
213 ucidef_set_interface_lan
"eth0" "dhcp"
216 ucidef_set_interface_wan
"eth1"
217 ucidef_add_switch
"switch0" \
218 "0@eth0" "1:lan" "2:lan"
221 iodata
,wn-ac1167dgr|\
222 iodata
,wn-ac1600dgr|\
223 iodata
,wn-ac1600dgr2|\
228 ucidef_add_switch
"switch0" \
229 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
231 librerouter
,librerouter-v1
)
232 ucidef_add_switch
"switch0" \
233 "0@eth0" "5:wan" "6@eth1" "4:lan"
236 tplink
,archer-a7-v5|\
237 tplink
,archer-c6-v2|\
238 tplink
,archer-c6-v2-us|\
239 tplink
,archer-c7-v4|\
240 tplink
,archer-c7-v5|\
241 tplink
,tl-wdr3600-v1|\
242 tplink
,tl-wdr4300-v1|\
243 tplink
,tl-wdr4300-v1-il|\
244 tplink
,tl-wdr4310-v1
)
245 ucidef_add_switch
"switch0" \
246 "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
249 qxwlan
,e1700ac-v2-8m|\
250 qxwlan
,e1700ac-v2-16m|\
252 qxwlan
,e750g-v8-16m|\
253 ubnt
,nanobeam-ac-gen2|\
254 ubnt
,nanostation-ac|\
257 ucidef_add_switch
"switch0" \
258 "0@eth0" "2:lan" "3:wan"
261 ucidef_add_switch
"switch0" \
262 "0@eth0" "2:lan" "3:lan" "4:lan" "1:wan"
265 netgear
,wndr3700-v2|\
270 ucidef_set_interface_wan
"eth1"
271 ucidef_add_switch
"switch0" \
272 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5u@eth0"
273 ucidef_add_switch_attr
"switch0" "blinkrate" 2
274 ucidef_add_switch_port_attr
"switch0" 1 led
6
275 ucidef_add_switch_port_attr
"switch0" 2 led
9
276 ucidef_add_switch_port_attr
"switch0" 5 led
2
280 ucidef_set_interface_wan
"eth0"
281 ucidef_add_switch
"switch0" \
282 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
285 ucidef_add_switch
"switch0" \
286 "0@eth0" "3:lan:1" "5:lan:2" "4:wan"
289 ucidef_set_interface_wan
"eth1"
290 ucidef_add_switch
"switch0" \
291 "0@eth0" "2:lan" "3:lan"
295 ucidef_add_switch
"switch0" \
296 "0@eth1" "4:lan" "5:lan" "6@eth0" "3:wan"
299 ucidef_add_switch
"switch0" \
300 "0@eth0" "1:lan" "2:lan" "3:wan"
303 teltonika
,rut955-h7v3c0
)
304 ucidef_set_interface_wan
"eth1"
305 ucidef_add_switch
"switch0" \
306 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1"
308 tplink
,archer-c5-v1|\
309 tplink
,archer-c7-v1|\
310 tplink
,archer-c7-v2|\
311 tplink
,tl-wdr4900-v2
)
312 ucidef_add_switch
"switch0" \
313 "0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
315 tplink
,archer-d50-v1
)
316 ucidef_add_switch
"switch0" \
317 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "1:wan"
319 tplink
,archer-d7-v1|\
320 tplink
,archer-d7b-v1
)
321 ucidef_add_switch
"switch0" \
322 "0@eth1" "3:lan:3" "4:lan:2" "5:lan:1" "6@eth0" "2:wan:4" "1:wan:5"
324 tplink
,eap225-wall-v2
)
325 ucidef_add_switch
"switch0" \
326 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
329 ucidef_add_switch
"switch0" \
330 "0@eth0" "2:lan:1" "5:lan:2"
333 ucidef_set_interfaces_lan_wan
"eth0.1 eth1" "usb0"
334 ucidef_add_switch
"switch0" \
335 "0@eth0" "1:lan:1" "2:lan:3" "3:lan:2"
337 tplink
,tl-wpa8630-v1|\
338 tplink
,tl-wpa8630p-v2-int|\
339 tplink
,tl-wpa8630p-v2.0
-eu|\
340 tplink
,tl-wpa8630p-v2.1
-eu)
341 # port 5 (internal) is the power-line port
342 ucidef_add_switch
"switch0" \
343 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "5:lan:4"
346 ucidef_set_interface_wan
"eth1"
347 ucidef_add_switch
"switch0" \
348 "0@eth0" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
350 tplink
,tl-wr1043nd-v1
)
351 ucidef_add_switch
"switch0" \
352 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
354 tplink
,tl-wr1043nd-v2|\
355 tplink
,tl-wr1043nd-v3|\
356 tplink
,tl-wr1045nd-v2
)
357 ucidef_add_switch
"switch0" \
358 "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
361 ucidef_add_switch
"switch0" \
362 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
365 ucidef_set_interface_wan
"eth1"
366 ucidef_add_switch
"switch0" \
367 "0@eth0" "2:lan:1" "3:lan:3" "4:lan:2"
370 ucidef_set_interface_wan
"eth1"
371 ucidef_add_switch
"switch0" \
372 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:lan"
375 ucidef_set_interface_wan
"eth1"
376 ucidef_add_switch
"switch0" \
377 "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"
379 ubnt
,routerstation-pro
)
380 ucidef_set_interface_wan
"eth0"
381 ucidef_add_switch
"switch0" \
382 "0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
384 ubnt
,nanostation-m-xw
)
385 ucidef_add_switch
"switch0" \
386 "0@eth0" "5:lan" "1:wan"
388 ubnt
,unifiac-mesh-pro|\
390 ucidef_add_switch
"switch0" \
391 "0@eth0" "2:lan:1" "3:lan:2"
394 ucidef_add_switch
"switch0" \
395 "0@eth0" "1:lan" "2:lan"
399 ucidef_set_interface_wan
"eth1"
400 ucidef_add_switch
"switch0" \
401 "0@eth0" "3:lan:1" "4:lan:2"
404 ucidef_set_interfaces_lan_wan
"eth0" "eth1"
416 lan_mac
=$
(mtd_get_mac_binary
"Board data" 2)
419 alfa-network
,ap121f|\
420 alfa-network
,ap121fe|\
423 alfa-network
,pi-wifi4|\
425 engenius
,ens202ext-v1
)
426 label_mac
=$
(mtd_get_mac_binary art
0x1002)
429 base_mac
=$
(mtd_get_mac_binary art
0x1002)
430 lan_mac
=$
(macaddr_setbit
$base_mac 29)
431 [ $lan_mac = $base_mac ] && lan_mac
=$
(macaddr_unsetbit
$base_mac 29)
436 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
439 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
440 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
443 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
444 wan_mac
=$
(fritz_tffs
-n macb
-i $
(find_mtd_part
"tffs (1)"))
448 wan_mac
=$
(mtd_get_mac_binary u-boot
0x2e018)
451 label_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" 3)
456 lan_mac
=$
(mtd_get_mac_text
"mp" 0x1)
460 label_mac
=$
(mtd_get_mac_ascii bdcfg
"wlanmac")
463 lan_mac
=$
(mtd_get_mac_text
"caldata" 0xffa0)
464 wan_mac
=$
(mtd_get_mac_text
"caldata" 0xffb4)
467 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
471 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
472 wan_mac
=$
(mtd_get_mac_text
"mac" 0x18)
478 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
479 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
485 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
486 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
488 elecom
,wrc-1750ghbk2-i|\
489 elecom
,wrc-300ghbk2-i
)
490 wan_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" -2)
493 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
494 label_mac
=$
(mtd_get_mac_ascii u-boot-env athaddr
)
498 ubnt
,bullet-m-ar7240|\
499 ubnt
,bullet-m-ar7241|\
501 ubnt
,nanostation-loco-m|\
507 label_mac
=$
(cat /sys
/class
/ieee80211
/phy
0/macaddress
)
510 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
511 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
514 lan_mac
=$
(mtd_get_mac_text
"u-boot-env" 0xe9)
515 eth1_mac
=$
(macaddr_add
"$lan_mac" 1)
516 ucidef_set_interface
"eth0" ifname
"eth0" protocol
"none" macaddr
"$lan_mac"
517 ucidef_set_interface
"eth1" ifname
"eth1" protocol
"none" macaddr
"$eth1_mac"
519 enterasys
,ws-ap3705i
)
520 label_mac
=$
(mtd_get_mac_ascii u-boot-env0 ethaddr
)
523 hak5
,packet-squirrel
)
524 label_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
527 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
528 wan_mac
=$
(macaddr_add
"$lan_mac" -1)
531 iodata
,wn-ac1167dgr|\
532 iodata
,wn-ac1600dgr|\
533 iodata
,wn-ac1600dgr2|\
535 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
536 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
540 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n alias
/ethaddr
)
541 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
544 tplink
,tl-wdr3600-v1|\
545 tplink
,tl-wdr4300-v1|\
546 tplink
,tl-wdr4300-v1-il
)
547 base_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
548 wan_mac
=$
(macaddr_add
"$base_mac" 1)
551 lan_mac
=$
(mtd_get_mac_text board_data
0x280)
552 wan_mac
=$
(mtd_get_mac_text board_data
0x480)
556 netgear
,wndr3700-v2|\
560 lan_mac
=$
(macaddr_setbit_la
"$(mtd_get_mac_binary art 0x0)")
563 lan_mac
=$
(k2t_get_mac
"lan_mac")
564 wan_mac
=$
(k2t_get_mac
"wan_mac")
567 wan_mac
=$
(mtd_get_mac_binary factory
0x0)
568 lan_mac
=$
(macaddr_setbit_la
"$wan_mac")
572 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
573 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
576 tplink
,archer-a7-v5|\
577 tplink
,archer-c7-v4|\
578 tplink
,archer-c7-v5|\
579 tplink
,tl-wr1043nd-v4|\
580 tplink
,tl-wr1043n-v5
)
581 base_mac
=$
(mtd_get_mac_binary info
0x8)
582 wan_mac
=$
(macaddr_add
"$base_mac" 1)
585 lan_mac
=$
(mtd_get_mac_text mac
0x4)
586 wan_mac
=$
(mtd_get_mac_text mac
0x18)
589 ubnt
,litebeam-ac-gen2|\
590 ubnt
,nanobeam-ac-gen2|\
591 ubnt
,powerbeam-5ac-500|\
592 ubnt
,powerbeam-5ac-gen2
)
593 label_mac
=$
(mtd_get_mac_binary art
0x5006)
596 ubnt
,routerstation-pro
)
597 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n ar7100_esa
)
598 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
600 wd
,mynet-wifi-rangeextender
)
601 lan_mac
=$
(nvram get et0macaddr
)
604 label_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
608 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr
"lan" $lan_mac
609 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr
"wan" $wan_mac
610 [ -n "$label_mac" ] && ucidef_set_label_macaddr
$label_mac
615 ath79_setup_interfaces
$board
616 ath79_setup_macs
$board