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|\
40 enterasys
,ws-ap3705i|\
41 glinet
,gl-ar300m-lite|\
43 hak5
,wifi-pineapple-nano|\
66 tplink
,eap225-outdoor-v1|\
74 tplink
,tl-wr902ac-v1|\
76 ubnt
,bullet-m-ar7240|\
77 ubnt
,bullet-m-ar7241|\
80 ubnt
,litebeam-ac-gen2|\
83 ubnt
,nanostation-ac-loco|\
84 ubnt
,nanostation-loco-m|\
85 ubnt
,nanostation-loco-m-xw|\
87 ubnt
,powerbeam-5ac-500|\
88 ubnt
,powerbeam-5ac-gen2|\
95 wd
,mynet-wifi-rangeextender|\
97 ucidef_set_interface_lan
"eth0"
100 ucidef_add_switch
"switch0" \
101 "0@eth0" "2:wan" "3:lan" "6@eth1"
103 alfa-network
,ap121fe
)
104 ucidef_set_interface_lan
"eth0 usb0"
111 ucidef_set_interface_lan
"eth0 eth1"
115 tplink
,archer-c58-v1|\
116 tplink
,archer-c59-v1|\
117 tplink
,archer-c59-v2
)
118 ucidef_set_interface_wan
"eth1"
119 ucidef_add_switch
"switch0" \
120 "0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
124 tplink
,archer-c5-v1|\
125 tplink
,archer-c7-v1|\
126 tplink
,archer-c7-v2|\
127 tplink
,tl-wdr4900-v2|\
128 tplink
,tl-wdr7500-v3
)
129 ucidef_add_switch
"switch0" \
130 "0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
133 buffalo
,wzr-hp-g450h
)
134 ucidef_add_switch
"switch0" \
135 "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
139 ucidef_add_switch
"switch0" \
140 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth0"
143 buffalo
,wzr-hp-ag300h|\
144 tplink
,archer-c25-v1|\
145 tplink
,archer-c60-v1|\
146 tplink
,archer-c60-v2|\
147 tplink
,archer-c60-v3|\
148 tplink
,tl-wdr3500-v1|\
149 tplink
,tl-wr842n-v1|\
150 tplink
,tl-wr842n-v3|\
152 ucidef_set_interface_wan
"eth1"
153 ucidef_add_switch
"switch0" \
154 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
156 buffalo
,wzr-hp-g302h-a1a0
)
157 ucidef_add_switch
"switch0" \
158 "0@eth0" "1:lan:1" "3:lan:4" "4:lan:3" "5:lan:2" "2:wan"
160 comfast
,cf-e110n-v2|\
161 comfast
,cf-e120a-v3|\
162 comfast
,cf-e314n-v2|\
165 openmesh
,om2p-hs-v4|\
178 ucidef_set_interfaces_lan_wan
"eth1" "eth0"
181 ucidef_set_interface_wan
"eth1"
182 ucidef_add_switch
"switch0" \
183 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
185 comfast
,cf-wr650ac-v1|\
186 comfast
,cf-wr650ac-v2|\
188 ucidef_add_switch
"switch0" \
189 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
193 ucidef_add_switch
"switch0" \
194 "0@eth0" "3:lan" "2:wan"
197 ucidef_add_switch
"switch0" \
198 "0@eth0" "2:wan" "3:lan" "4:lan"
201 ucidef_add_switch
"switch0" "0@eth0" "2:lan" "3:wan" "6@eth1"
204 ucidef_add_switch
"switch0" \
205 "0@eth0" "1:lan:2" "2:lan:1"
208 ucidef_set_interface_wan
"eth1"
209 ucidef_add_switch
"switch0" \
210 "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
219 tplink
,archer-c2-v3|\
220 tplink
,tl-wr1043nd-v4|\
221 tplink
,tl-wr1043n-v5
)
222 ucidef_add_switch
"switch0" \
223 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
225 elecom
,wrc-1750ghbk2-i|\
226 elecom
,wrc-300ghbk2-i|\
228 ucidef_add_switch
"switch0" \
229 "0@eth0" "2:lan:4" "3:lan:3" "4:lan:2" "5:lan:1" "1:wan"
231 embeddedwireless
,dorin
)
232 ucidef_add_switch
"switch0" \
233 "0@eth0" "1:wan" "2:lan:3" "3:lan:2"
235 engenius
,ens202ext-v1
)
236 ucidef_set_interface_wan
"eth1"
237 ucidef_add_switch
"switch0" \
241 ucidef_set_interface_lan
"eth0 eth1" "dhcp"
244 ucidef_set_interface_lan
"eth0" "dhcp"
247 ucidef_set_interface_wan
"eth1"
248 ucidef_add_switch
"switch0" \
249 "0@eth0" "1:lan" "2:lan"
252 iodata
,wn-ac1167dgr|\
253 iodata
,wn-ac1600dgr|\
254 iodata
,wn-ac1600dgr2|\
259 ucidef_add_switch
"switch0" \
260 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
262 librerouter
,librerouter-v1
)
263 ucidef_add_switch
"switch0" \
264 "0@eth0" "5:wan" "6@eth1" "4:lan"
267 tplink
,archer-a7-v5|\
268 tplink
,archer-c6-v2|\
269 tplink
,archer-c6-v2-us|\
270 tplink
,archer-c7-v4|\
271 tplink
,archer-c7-v5|\
272 tplink
,tl-wdr3600-v1|\
273 tplink
,tl-wdr4300-v1|\
274 tplink
,tl-wdr4300-v1-il|\
275 tplink
,tl-wdr4310-v1
)
276 ucidef_add_switch
"switch0" \
277 "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
280 qxwlan
,e1700ac-v2-8m|\
281 qxwlan
,e1700ac-v2-16m|\
283 qxwlan
,e750g-v8-16m|\
284 ubnt
,nanobeam-ac-gen2|\
285 ubnt
,nanostation-ac|\
288 ucidef_add_switch
"switch0" \
289 "0@eth0" "2:lan" "3:wan"
292 ucidef_add_switch
"switch0" \
293 "0@eth0" "2:lan" "3:lan" "4:lan" "1:wan"
296 netgear
,wndr3700-v2|\
301 ucidef_set_interface_wan
"eth1"
302 ucidef_add_switch
"switch0" \
303 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5u@eth0"
304 ucidef_add_switch_attr
"switch0" "blinkrate" 2
305 ucidef_add_switch_port_attr
"switch0" 1 led
6
306 ucidef_add_switch_port_attr
"switch0" 2 led
9
307 ucidef_add_switch_port_attr
"switch0" 5 led
2
311 ucidef_set_interface_wan
"eth0"
312 ucidef_add_switch
"switch0" \
313 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
316 ucidef_add_switch
"switch0" \
317 "0@eth0" "3:lan:1" "5:lan:2" "4:wan"
320 ucidef_set_interface_wan
"eth1"
321 ucidef_add_switch
"switch0" \
322 "0@eth0" "2:lan" "3:lan"
326 ucidef_add_switch
"switch0" \
327 "0@eth1" "4:lan" "5:lan" "6@eth0" "3:wan"
330 ucidef_add_switch
"switch0" \
331 "0@eth0" "1:lan" "2:lan" "3:wan"
334 teltonika
,rut955-h7v3c0
)
335 ucidef_set_interface_wan
"eth1"
336 ucidef_add_switch
"switch0" \
337 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1"
339 tplink
,archer-d50-v1
)
340 ucidef_add_switch
"switch0" \
341 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "1:wan"
343 tplink
,archer-d7-v1|\
344 tplink
,archer-d7b-v1
)
345 ucidef_add_switch
"switch0" \
346 "0@eth1" "3:lan:3" "4:lan:2" "5:lan:1" "6@eth0" "2:wan:4" "1:wan:5"
348 tplink
,eap225-wall-v2
)
349 ucidef_add_switch
"switch0" \
350 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
353 ucidef_add_switch
"switch0" \
354 "0@eth0" "2:lan:1" "5:lan:2"
357 ucidef_set_interfaces_lan_wan
"eth0.1 eth1" "usb0"
358 ucidef_add_switch
"switch0" \
359 "0@eth0" "1:lan:1" "2:lan:3" "3:lan:2"
361 tplink
,tl-wpa8630-v1|\
362 tplink
,tl-wpa8630p-v2-int|\
363 tplink
,tl-wpa8630p-v2.0
-eu|\
364 tplink
,tl-wpa8630p-v2.1
-eu)
365 # port 5 (internal) is the power-line port
366 ucidef_add_switch
"switch0" \
367 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "5:lan:4"
370 ucidef_set_interface_wan
"eth1"
371 ucidef_add_switch
"switch0" \
372 "0@eth0" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
374 tplink
,tl-wr1043nd-v1
)
375 ucidef_add_switch
"switch0" \
376 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
378 tplink
,tl-wr1043nd-v2|\
379 tplink
,tl-wr1043nd-v3|\
380 tplink
,tl-wr1045nd-v2
)
381 ucidef_add_switch
"switch0" \
382 "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
385 ucidef_add_switch
"switch0" \
386 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
389 ucidef_add_switch
"switch0" \
390 "0@eth0" "2:lan:1" "3:lan:2" "5:lan:3" "4:wan"
393 ucidef_set_interface_wan
"eth1"
394 ucidef_add_switch
"switch0" \
395 "0@eth0" "2:lan:1" "3:lan:3" "4:lan:2"
398 ucidef_set_interface_wan
"eth1"
399 ucidef_add_switch
"switch0" \
400 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:lan"
403 ucidef_set_interface_wan
"eth1"
404 ucidef_add_switch
"switch0" \
405 "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"
407 ubnt
,routerstation-pro
)
408 ucidef_set_interface_wan
"eth0"
409 ucidef_add_switch
"switch0" \
410 "0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
412 ubnt
,nanostation-m-xw
)
413 ucidef_add_switch
"switch0" \
414 "0@eth0" "5:lan" "1:wan"
416 ubnt
,unifiac-mesh-pro|\
418 ucidef_add_switch
"switch0" \
419 "0@eth0" "2:lan:1" "3:lan:2"
422 ucidef_add_switch
"switch0" \
423 "0@eth0" "1:lan" "2:lan"
427 ucidef_set_interface_wan
"eth1"
428 ucidef_add_switch
"switch0" \
429 "0@eth0" "3:lan:1" "4:lan:2"
432 ucidef_set_interfaces_lan_wan
"eth0" "eth1"
444 lan_mac
=$
(mtd_get_mac_binary
"Board data" 2)
447 alfa-network
,ap121f|\
448 alfa-network
,ap121fe|\
451 alfa-network
,pi-wifi4|\
454 engenius
,ens202ext-v1
)
455 label_mac
=$
(mtd_get_mac_binary art
0x1002)
458 base_mac
=$
(mtd_get_mac_binary art
0x1002)
459 lan_mac
=$
(macaddr_setbit
$base_mac 29)
460 [ $lan_mac = $base_mac ] && lan_mac
=$
(macaddr_unsetbit
$base_mac 29)
465 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
468 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
469 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
472 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
473 wan_mac
=$
(fritz_tffs
-n macb
-i $
(find_mtd_part
"tffs (1)"))
477 wan_mac
=$
(mtd_get_mac_binary u-boot
0x2e018)
480 label_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" 3)
485 lan_mac
=$
(mtd_get_mac_text
"mp" 0x1)
492 lan_mac
=$
(mtd_get_mac_ascii bdcfg
"lanmac")
496 label_mac
=$
(mtd_get_mac_ascii bdcfg
"wlanmac")
499 lan_mac
=$
(mtd_get_mac_text
"caldata" 0xffa0)
500 wan_mac
=$
(mtd_get_mac_text
"caldata" 0xffb4)
503 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
507 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
508 wan_mac
=$
(mtd_get_mac_text
"mac" 0x18)
514 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
515 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
521 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
522 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
524 elecom
,wrc-1750ghbk2-i|\
525 elecom
,wrc-300ghbk2-i
)
526 wan_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" -2)
530 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
534 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
535 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
538 lan_mac
=$
(mtd_get_mac_text
"u-boot-env" 0xe9)
539 eth1_mac
=$
(macaddr_add
"$lan_mac" 1)
540 ucidef_set_interface
"eth0" ifname
"eth0" protocol
"none" macaddr
"$lan_mac"
541 ucidef_set_interface
"eth1" ifname
"eth1" protocol
"none" macaddr
"$eth1_mac"
543 enterasys
,ws-ap3705i
)
544 label_mac
=$
(mtd_get_mac_ascii u-boot-env0 ethaddr
)
547 hak5
,packet-squirrel
)
548 label_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
551 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
552 wan_mac
=$
(macaddr_add
"$lan_mac" -1)
555 iodata
,wn-ac1167dgr|\
556 iodata
,wn-ac1600dgr|\
557 iodata
,wn-ac1600dgr2|\
559 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
560 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
564 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n alias
/ethaddr
)
565 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
568 tplink
,tl-wdr3600-v1|\
569 tplink
,tl-wdr4300-v1|\
570 tplink
,tl-wdr4300-v1-il
)
571 base_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
572 wan_mac
=$
(macaddr_add
"$base_mac" 1)
575 lan_mac
=$
(mtd_get_mac_text board_data
0x280)
576 wan_mac
=$
(mtd_get_mac_text board_data
0x480)
580 netgear
,wndr3700-v2|\
584 lan_mac
=$
(macaddr_setbit_la
"$(mtd_get_mac_binary art 0x0)")
587 lan_mac
=$
(k2t_get_mac
"lan_mac")
588 wan_mac
=$
(k2t_get_mac
"wan_mac")
591 wan_mac
=$
(mtd_get_mac_binary factory
0x0)
592 lan_mac
=$
(macaddr_setbit_la
"$wan_mac")
596 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
597 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
600 tplink
,archer-a7-v5|\
601 tplink
,archer-c7-v4|\
602 tplink
,archer-c7-v5|\
603 tplink
,tl-wr1043nd-v4|\
604 tplink
,tl-wr1043n-v5
)
605 base_mac
=$
(mtd_get_mac_binary info
0x8)
606 wan_mac
=$
(macaddr_add
"$base_mac" 1)
609 lan_mac
=$
(mtd_get_mac_text mac
0x4)
610 wan_mac
=$
(mtd_get_mac_text mac
0x18)
614 ubnt
,bullet-m-ar7240|\
615 ubnt
,bullet-m-ar7241|\
617 ubnt
,nanostation-loco-m|\
623 label_mac
=$
(cat /sys
/class
/ieee80211
/phy
0/macaddress
)
625 ubnt
,litebeam-ac-gen2|\
626 ubnt
,nanobeam-ac-gen2|\
627 ubnt
,powerbeam-5ac-500|\
628 ubnt
,powerbeam-5ac-gen2
)
629 label_mac
=$
(mtd_get_mac_binary art
0x5006)
632 ubnt
,routerstation-pro
)
633 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n ar7100_esa
)
634 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
636 wd
,mynet-wifi-rangeextender
)
637 lan_mac
=$
(nvram get et0macaddr
)
640 label_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
644 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr
"lan" $lan_mac
645 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr
"wan" $wan_mac
646 [ -n "$label_mac" ] && ucidef_set_label_macaddr
$label_mac
651 ath79_setup_interfaces
$board
652 ath79_setup_macs
$board