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"
110 engenius
,enstationac-v1|\
113 ubnt
,unifi-ap-outdoor-plus
)
114 ucidef_set_interface_lan
"eth0 eth1"
118 tplink
,archer-c58-v1|\
119 tplink
,archer-c59-v1|\
120 tplink
,archer-c59-v2
)
121 ucidef_set_interface_wan
"eth1"
122 ucidef_add_switch
"switch0" \
123 "0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
127 tplink
,archer-c5-v1|\
128 tplink
,archer-c7-v1|\
129 tplink
,archer-c7-v2|\
130 tplink
,tl-wdr4900-v2|\
131 tplink
,tl-wdr7500-v3
)
132 ucidef_add_switch
"switch0" \
133 "0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
136 buffalo
,wzr-hp-g450h
)
137 ucidef_add_switch
"switch0" \
138 "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
142 ucidef_add_switch
"switch0" \
143 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth0"
146 buffalo
,wzr-hp-ag300h|\
147 tplink
,archer-c25-v1|\
148 tplink
,archer-c60-v1|\
149 tplink
,archer-c60-v2|\
150 tplink
,archer-c60-v3|\
151 tplink
,tl-wdr3500-v1|\
152 tplink
,tl-wr842n-v1|\
153 tplink
,tl-wr842n-v3|\
155 ucidef_set_interface_wan
"eth1"
156 ucidef_add_switch
"switch0" \
157 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
159 buffalo
,wzr-hp-g302h-a1a0
)
160 ucidef_add_switch
"switch0" \
161 "0@eth0" "1:lan:1" "3:lan:4" "4:lan:3" "5:lan:2" "2:wan"
163 comfast
,cf-e110n-v2|\
164 comfast
,cf-e120a-v3|\
165 comfast
,cf-e314n-v2|\
168 openmesh
,om2p-hs-v4|\
181 ucidef_set_interfaces_lan_wan
"eth1" "eth0"
184 ucidef_set_interface_wan
"eth1"
185 ucidef_add_switch
"switch0" \
186 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
188 comfast
,cf-wr650ac-v1|\
189 comfast
,cf-wr650ac-v2|\
191 ucidef_add_switch
"switch0" \
192 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
196 ucidef_add_switch
"switch0" \
197 "0@eth0" "3:lan" "2:wan"
200 ucidef_add_switch
"switch0" \
201 "0@eth0" "2:wan" "3:lan" "4:lan"
204 ucidef_add_switch
"switch0" \
205 "0@eth0" "2:lan" "3:wan" "6@eth1"
208 ucidef_add_switch
"switch0" \
209 "0@eth0" "1:lan:2" "2:lan:1" "6@eth1"
212 ucidef_add_switch
"switch0" \
213 "0@eth0" "1:lan:2" "2:lan:1"
216 ucidef_set_interface_wan
"eth1"
217 ucidef_add_switch
"switch0" \
218 "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
227 tplink
,archer-c2-v3|\
228 tplink
,tl-wr1043nd-v4|\
229 tplink
,tl-wr1043n-v5
)
230 ucidef_add_switch
"switch0" \
231 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
233 elecom
,wrc-1750ghbk2-i|\
234 elecom
,wrc-300ghbk2-i|\
236 ucidef_add_switch
"switch0" \
237 "0@eth0" "2:lan:4" "3:lan:3" "4:lan:2" "5:lan:1" "1:wan"
239 embeddedwireless
,dorin
)
240 ucidef_add_switch
"switch0" \
241 "0@eth0" "1:wan" "2:lan:3" "3:lan:2"
244 ucidef_add_switch
"switch0" \
247 engenius
,ens202ext-v1
)
248 ucidef_set_interface_lan
"eth1"
249 ucidef_add_switch
"switch0" \
253 ucidef_set_interface_lan
"eth0" "dhcp"
256 ucidef_set_interface_wan
"eth1"
257 ucidef_add_switch
"switch0" \
258 "0@eth0" "1:lan" "2:lan"
261 iodata
,wn-ac1167dgr|\
262 iodata
,wn-ac1600dgr|\
263 iodata
,wn-ac1600dgr2|\
268 ucidef_add_switch
"switch0" \
269 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
271 librerouter
,librerouter-v1
)
272 ucidef_add_switch
"switch0" \
273 "0@eth0" "5:wan" "6@eth1" "4:lan"
276 ucidef_set_interface_lan
"eth0"
277 ucidef_add_switch
"switch0" \
281 tplink
,archer-a7-v5|\
282 tplink
,archer-c6-v2|\
283 tplink
,archer-c6-v2-us|\
284 tplink
,archer-c7-v4|\
285 tplink
,archer-c7-v5|\
286 tplink
,tl-wdr3600-v1|\
287 tplink
,tl-wdr4300-v1|\
288 tplink
,tl-wdr4300-v1-il|\
289 tplink
,tl-wdr4310-v1
)
290 ucidef_add_switch
"switch0" \
291 "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
294 qxwlan
,e1700ac-v2-8m|\
295 qxwlan
,e1700ac-v2-16m|\
297 qxwlan
,e750g-v8-16m|\
298 ubnt
,nanobeam-ac-gen2|\
299 ubnt
,nanostation-ac|\
302 ucidef_add_switch
"switch0" \
303 "0@eth0" "2:lan" "3:wan"
306 ucidef_add_switch
"switch0" \
307 "0@eth0" "2:lan" "3:lan" "4:lan" "1:wan"
310 netgear
,wndr3700-v2|\
315 ucidef_set_interface_wan
"eth1"
316 ucidef_add_switch
"switch0" \
317 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5u@eth0"
318 ucidef_add_switch_attr
"switch0" "blinkrate" 2
319 ucidef_add_switch_port_attr
"switch0" 1 led
6
320 ucidef_add_switch_port_attr
"switch0" 2 led
9
321 ucidef_add_switch_port_attr
"switch0" 5 led
2
325 ucidef_set_interface_wan
"eth0"
326 ucidef_add_switch
"switch0" \
327 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
330 ucidef_add_switch
"switch0" \
331 "0@eth0" "3:lan:1" "5:lan:2" "4:wan"
334 ucidef_set_interface_wan
"eth1"
335 ucidef_add_switch
"switch0" \
336 "0@eth0" "2:lan" "3:lan"
340 ucidef_add_switch
"switch0" \
341 "0@eth1" "4:lan" "5:lan" "6@eth0" "3:wan"
344 ucidef_add_switch
"switch0" \
345 "0@eth0" "1:lan" "2:lan" "3:wan"
348 teltonika
,rut955-h7v3c0
)
349 ucidef_set_interface_wan
"eth1"
350 ucidef_add_switch
"switch0" \
351 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1"
353 tplink
,archer-d50-v1
)
354 ucidef_add_switch
"switch0" \
355 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "1:wan"
357 tplink
,archer-d7-v1|\
358 tplink
,archer-d7b-v1
)
359 ucidef_add_switch
"switch0" \
360 "0@eth1" "3:lan:3" "4:lan:2" "5:lan:1" "6@eth0" "2:wan:4" "1:wan:5"
362 tplink
,eap225-wall-v2
)
363 ucidef_add_switch
"switch0" \
364 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
367 ucidef_add_switch
"switch0" \
368 "0@eth0" "2:lan:1" "5:lan:2"
371 ucidef_set_interfaces_lan_wan
"eth0.1 eth1" "usb0"
372 ucidef_add_switch
"switch0" \
373 "0@eth0" "1:lan:1" "2:lan:3" "3:lan:2"
375 tplink
,tl-wpa8630-v1|\
376 tplink
,tl-wpa8630p-v2-int|\
377 tplink
,tl-wpa8630p-v2.0
-eu|\
378 tplink
,tl-wpa8630p-v2.1
-eu)
379 # port 5 (internal) is the power-line port
380 ucidef_add_switch
"switch0" \
381 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "5:lan:4"
384 ucidef_set_interface_wan
"eth1"
385 ucidef_add_switch
"switch0" \
386 "0@eth0" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
388 tplink
,tl-wr1043nd-v1
)
389 ucidef_add_switch
"switch0" \
390 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
392 tplink
,tl-wr1043nd-v2|\
393 tplink
,tl-wr1043nd-v3|\
394 tplink
,tl-wr1045nd-v2
)
395 ucidef_add_switch
"switch0" \
396 "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
399 ucidef_add_switch
"switch0" \
400 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
403 ucidef_add_switch
"switch0" \
404 "0@eth0" "2:lan:1" "3:lan:2" "5:lan:3" "4:wan"
407 ucidef_set_interface_wan
"eth1"
408 ucidef_add_switch
"switch0" \
409 "0@eth0" "2:lan:1" "3:lan:3" "4:lan:2"
412 ucidef_set_interface_wan
"eth1"
413 ucidef_add_switch
"switch0" \
414 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:lan"
417 ucidef_set_interface_wan
"eth1"
418 ucidef_add_switch
"switch0" \
419 "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"
421 ubnt
,routerstation-pro
)
422 ucidef_set_interface_wan
"eth0"
423 ucidef_add_switch
"switch0" \
424 "0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
426 ubnt
,nanostation-m-xw
)
427 ucidef_add_switch
"switch0" \
428 "0@eth0" "5:lan" "1:wan"
430 ubnt
,unifiac-mesh-pro|\
432 ucidef_add_switch
"switch0" \
433 "0@eth0" "2:lan:1" "3:lan:2"
436 ucidef_add_switch
"switch0" \
437 "0@eth0" "1:lan" "2:lan"
441 ucidef_set_interface_wan
"eth1"
442 ucidef_add_switch
"switch0" \
443 "0@eth0" "3:lan:1" "4:lan:2"
446 ucidef_set_interfaces_lan_wan
"eth0" "eth1"
458 lan_mac
=$
(mtd_get_mac_binary
"Board data" 2)
461 alfa-network
,ap121f|\
462 alfa-network
,ap121fe|\
465 alfa-network
,pi-wifi4|\
468 engenius
,ens202ext-v1
)
469 label_mac
=$
(mtd_get_mac_binary art
0x1002)
472 base_mac
=$
(mtd_get_mac_binary art
0x1002)
473 lan_mac
=$
(macaddr_setbit
$base_mac 29)
474 [ $lan_mac = $base_mac ] && lan_mac
=$
(macaddr_unsetbit
$base_mac 29)
479 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
482 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
483 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
486 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
487 wan_mac
=$
(fritz_tffs
-n macb
-i $
(find_mtd_part
"tffs (1)"))
491 wan_mac
=$
(mtd_get_mac_binary u-boot
0x2e018)
494 label_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" 3)
499 lan_mac
=$
(mtd_get_mac_text
"mp" 0x1)
506 lan_mac
=$
(mtd_get_mac_ascii bdcfg
"lanmac")
511 label_mac
=$
(mtd_get_mac_ascii bdcfg
"wlanmac")
514 lan_mac
=$
(mtd_get_mac_text
"caldata" 0xffa0)
515 wan_mac
=$
(mtd_get_mac_text
"caldata" 0xffb4)
518 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
522 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
523 wan_mac
=$
(mtd_get_mac_text
"mac" 0x18)
529 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
530 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
536 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
537 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
539 elecom
,wrc-1750ghbk2-i|\
540 elecom
,wrc-300ghbk2-i
)
541 wan_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" -2)
545 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
549 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
550 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
553 lan_mac
=$
(mtd_get_mac_text
"u-boot-env" 0xe9)
554 eth1_mac
=$
(macaddr_add
"$lan_mac" 1)
555 ucidef_set_interface
"eth0" ifname
"eth0" protocol
"none" macaddr
"$lan_mac"
556 ucidef_set_interface
"eth1" ifname
"eth1" protocol
"none" macaddr
"$eth1_mac"
558 enterasys
,ws-ap3705i
)
559 label_mac
=$
(mtd_get_mac_ascii u-boot-env0 ethaddr
)
562 hak5
,packet-squirrel
)
563 label_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
566 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
567 wan_mac
=$
(macaddr_add
"$lan_mac" -1)
570 iodata
,wn-ac1167dgr|\
571 iodata
,wn-ac1600dgr|\
572 iodata
,wn-ac1600dgr2|\
574 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
575 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
579 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n alias
/ethaddr
)
580 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
583 tplink
,tl-wdr3600-v1|\
584 tplink
,tl-wdr4300-v1|\
585 tplink
,tl-wdr4300-v1-il
)
586 base_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
587 wan_mac
=$
(macaddr_add
"$base_mac" 1)
590 lan_mac
=$
(mtd_get_mac_text board_data
0x280)
591 wan_mac
=$
(mtd_get_mac_text board_data
0x480)
595 netgear
,wndr3700-v2|\
599 lan_mac
=$
(macaddr_setbit_la
"$(mtd_get_mac_binary art 0x0)")
602 lan_mac
=$
(k2t_get_mac
"lan_mac")
603 wan_mac
=$
(k2t_get_mac
"wan_mac")
606 wan_mac
=$
(mtd_get_mac_binary factory
0x0)
607 lan_mac
=$
(macaddr_setbit_la
"$wan_mac")
611 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
612 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
615 tplink
,archer-a7-v5|\
616 tplink
,archer-c7-v4|\
617 tplink
,archer-c7-v5|\
618 tplink
,tl-wr1043nd-v4|\
619 tplink
,tl-wr1043n-v5
)
620 base_mac
=$
(mtd_get_mac_binary info
0x8)
621 wan_mac
=$
(macaddr_add
"$base_mac" 1)
624 lan_mac
=$
(mtd_get_mac_text mac
0x4)
625 wan_mac
=$
(mtd_get_mac_text mac
0x18)
629 ubnt
,bullet-m-ar7240|\
630 ubnt
,bullet-m-ar7241|\
632 ubnt
,nanostation-loco-m|\
638 label_mac
=$
(cat /sys
/class
/ieee80211
/phy
0/macaddress
)
640 ubnt
,litebeam-ac-gen2|\
641 ubnt
,nanobeam-ac-gen2|\
642 ubnt
,powerbeam-5ac-500|\
643 ubnt
,powerbeam-5ac-gen2
)
644 label_mac
=$
(mtd_get_mac_binary art
0x5006)
647 ubnt
,routerstation-pro
)
648 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n ar7100_esa
)
649 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
651 wd
,mynet-wifi-rangeextender
)
652 lan_mac
=$
(nvram get et0macaddr
)
655 label_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
659 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr
"lan" $lan_mac
660 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr
"wan" $wan_mac
661 [ -n "$label_mac" ] && ucidef_set_label_macaddr
$label_mac
666 ath79_setup_interfaces
$board
667 ath79_setup_macs
$board