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|\
38 enterasys
,ws-ap3705i|\
39 glinet
,gl-ar300m-lite|\
41 hak5
,wifi-pineapple-nano|\
58 tplink
,eap225-outdoor-v1|\
66 tplink
,tl-wr902ac-v1|\
67 ubnt
,bullet-m-ar7240|\
68 ubnt
,bullet-m-ar7241|\
71 ubnt
,litebeam-ac-gen2|\
74 ubnt
,nanostation-ac-loco|\
75 ubnt
,nanostation-loco-m|\
76 ubnt
,nanostation-loco-m-xw|\
78 ubnt
,powerbeam-5ac-500|\
79 ubnt
,powerbeam-5ac-gen2|\
86 wd
,mynet-wifi-rangeextender|\
88 ucidef_set_interface_lan
"eth0"
91 ucidef_add_switch
"switch0" \
92 "0@eth0" "2:wan" "3:lan" "6@eth1"
95 ucidef_set_interface_lan
"eth0 usb0"
102 ucidef_set_interface_lan
"eth0 eth1"
106 tplink
,archer-c58-v1|\
107 tplink
,archer-c59-v1|\
108 tplink
,archer-c59-v2
)
109 ucidef_set_interface_wan
"eth1"
110 ucidef_add_switch
"switch0" \
111 "0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
115 tplink
,archer-c5-v1|\
116 tplink
,archer-c7-v1|\
117 tplink
,archer-c7-v2|\
118 tplink
,tl-wdr4900-v2|\
119 tplink
,tl-wdr7500-v3
)
120 ucidef_add_switch
"switch0" \
121 "0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
124 buffalo
,wzr-hp-g450h
)
125 ucidef_add_switch
"switch0" \
126 "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
130 ucidef_add_switch
"switch0" \
131 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth0"
134 buffalo
,wzr-hp-ag300h|\
135 tplink
,archer-c25-v1|\
136 tplink
,archer-c60-v1|\
137 tplink
,archer-c60-v2|\
138 tplink
,archer-c60-v3|\
139 tplink
,tl-wdr3500-v1|\
140 tplink
,tl-wr842n-v1|\
141 tplink
,tl-wr842n-v3|\
143 ucidef_set_interface_wan
"eth1"
144 ucidef_add_switch
"switch0" \
145 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
147 buffalo
,wzr-hp-g302h-a1a0
)
148 ucidef_add_switch
"switch0" \
149 "0@eth0" "1:lan:1" "3:lan:4" "4:lan:3" "5:lan:2" "2:wan"
151 comfast
,cf-e110n-v2|\
152 comfast
,cf-e120a-v3|\
153 comfast
,cf-e314n-v2|\
156 openmesh
,om2p-hs-v4|\
169 ucidef_set_interfaces_lan_wan
"eth1" "eth0"
172 ucidef_set_interface_wan
"eth1"
173 ucidef_add_switch
"switch0" \
174 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
176 comfast
,cf-wr650ac-v1|\
177 comfast
,cf-wr650ac-v2|\
179 ucidef_add_switch
"switch0" \
180 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
184 ucidef_add_switch
"switch0" \
185 "0@eth0" "3:lan" "2:wan"
188 ucidef_add_switch
"switch0" \
189 "0@eth0" "2:wan" "3:lan" "4:lan"
192 ucidef_add_switch
"switch0" "0@eth0" "2:lan" "3:wan" "6@eth1"
195 ucidef_add_switch
"switch0" \
196 "0@eth0" "1:lan:2" "2:lan:1"
199 ucidef_set_interface_wan
"eth1"
200 ucidef_add_switch
"switch0" \
201 "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
210 tplink
,archer-c2-v3|\
211 tplink
,tl-wr1043nd-v4|\
212 tplink
,tl-wr1043n-v5
)
213 ucidef_add_switch
"switch0" \
214 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
216 elecom
,wrc-1750ghbk2-i|\
217 elecom
,wrc-300ghbk2-i|\
219 ucidef_add_switch
"switch0" \
220 "0@eth0" "2:lan:4" "3:lan:3" "4:lan:2" "5:lan:1" "1:wan"
222 embeddedwireless
,dorin
)
223 ucidef_add_switch
"switch0" \
224 "0@eth0" "1:wan" "2:lan:3" "3:lan:2"
227 ucidef_set_interface_wan
"eth0"
228 ucidef_add_switch
"switch0" \
231 engenius
,ens202ext-v1
)
232 ucidef_set_interface_wan
"eth1"
233 ucidef_add_switch
"switch0" \
237 ucidef_set_interface_lan
"eth0 eth1" "dhcp"
240 ucidef_set_interface_lan
"eth0" "dhcp"
243 ucidef_set_interface_wan
"eth1"
244 ucidef_add_switch
"switch0" \
245 "0@eth0" "1:lan" "2:lan"
248 iodata
,wn-ac1167dgr|\
249 iodata
,wn-ac1600dgr|\
250 iodata
,wn-ac1600dgr2|\
255 ucidef_add_switch
"switch0" \
256 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
258 librerouter
,librerouter-v1
)
259 ucidef_add_switch
"switch0" \
260 "0@eth0" "5:wan" "6@eth1" "4:lan"
263 tplink
,archer-a7-v5|\
264 tplink
,archer-c6-v2|\
265 tplink
,archer-c6-v2-us|\
266 tplink
,archer-c7-v4|\
267 tplink
,archer-c7-v5|\
268 tplink
,tl-wdr3600-v1|\
269 tplink
,tl-wdr4300-v1|\
270 tplink
,tl-wdr4300-v1-il|\
271 tplink
,tl-wdr4310-v1
)
272 ucidef_add_switch
"switch0" \
273 "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
276 qxwlan
,e1700ac-v2-8m|\
277 qxwlan
,e1700ac-v2-16m|\
279 qxwlan
,e750g-v8-16m|\
280 ubnt
,nanobeam-ac-gen2|\
281 ubnt
,nanostation-ac|\
284 ucidef_add_switch
"switch0" \
285 "0@eth0" "2:lan" "3:wan"
288 ucidef_add_switch
"switch0" \
289 "0@eth0" "2:lan" "3:lan" "4:lan" "1:wan"
292 netgear
,wndr3700-v2|\
297 ucidef_set_interface_wan
"eth1"
298 ucidef_add_switch
"switch0" \
299 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5u@eth0"
300 ucidef_add_switch_attr
"switch0" "blinkrate" 2
301 ucidef_add_switch_port_attr
"switch0" 1 led
6
302 ucidef_add_switch_port_attr
"switch0" 2 led
9
303 ucidef_add_switch_port_attr
"switch0" 5 led
2
307 ucidef_set_interface_wan
"eth0"
308 ucidef_add_switch
"switch0" \
309 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
312 ucidef_add_switch
"switch0" \
313 "0@eth0" "3:lan:1" "5:lan:2" "4:wan"
316 ucidef_set_interface_wan
"eth1"
317 ucidef_add_switch
"switch0" \
318 "0@eth0" "2:lan" "3:lan"
322 ucidef_add_switch
"switch0" \
323 "0@eth1" "4:lan" "5:lan" "6@eth0" "3:wan"
326 ucidef_add_switch
"switch0" \
327 "0@eth0" "1:lan" "2:lan" "3:wan"
330 teltonika
,rut955-h7v3c0
)
331 ucidef_set_interface_wan
"eth1"
332 ucidef_add_switch
"switch0" \
333 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1"
335 tplink
,archer-d50-v1
)
336 ucidef_add_switch
"switch0" \
337 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "1:wan"
339 tplink
,archer-d7-v1|\
340 tplink
,archer-d7b-v1
)
341 ucidef_add_switch
"switch0" \
342 "0@eth1" "3:lan:3" "4:lan:2" "5:lan:1" "6@eth0" "2:wan:4" "1:wan:5"
344 tplink
,eap225-wall-v2
)
345 ucidef_add_switch
"switch0" \
346 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
349 ucidef_add_switch
"switch0" \
350 "0@eth0" "2:lan:1" "5:lan:2"
353 ucidef_set_interfaces_lan_wan
"eth0.1 eth1" "usb0"
354 ucidef_add_switch
"switch0" \
355 "0@eth0" "1:lan:1" "2:lan:3" "3:lan:2"
357 tplink
,tl-wpa8630-v1|\
358 tplink
,tl-wpa8630p-v2-int|\
359 tplink
,tl-wpa8630p-v2.0
-eu|\
360 tplink
,tl-wpa8630p-v2.1
-eu)
361 # port 5 (internal) is the power-line port
362 ucidef_add_switch
"switch0" \
363 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "5:lan:4"
366 ucidef_set_interface_wan
"eth1"
367 ucidef_add_switch
"switch0" \
368 "0@eth0" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
370 tplink
,tl-wr1043nd-v1
)
371 ucidef_add_switch
"switch0" \
372 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
374 tplink
,tl-wr1043nd-v2|\
375 tplink
,tl-wr1043nd-v3|\
376 tplink
,tl-wr1045nd-v2
)
377 ucidef_add_switch
"switch0" \
378 "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
381 ucidef_add_switch
"switch0" \
382 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
385 ucidef_add_switch
"switch0" \
386 "0@eth0" "2:lan:1" "3:lan:2" "5:lan:3" "4:wan"
389 ucidef_set_interface_wan
"eth1"
390 ucidef_add_switch
"switch0" \
391 "0@eth0" "2:lan:1" "3:lan:3" "4:lan:2"
394 ucidef_set_interface_wan
"eth1"
395 ucidef_add_switch
"switch0" \
396 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:lan"
399 ucidef_set_interface_wan
"eth1"
400 ucidef_add_switch
"switch0" \
401 "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"
403 ubnt
,routerstation-pro
)
404 ucidef_set_interface_wan
"eth0"
405 ucidef_add_switch
"switch0" \
406 "0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
408 ubnt
,nanostation-m-xw
)
409 ucidef_add_switch
"switch0" \
410 "0@eth0" "5:lan" "1:wan"
412 ubnt
,unifiac-mesh-pro|\
414 ucidef_add_switch
"switch0" \
415 "0@eth0" "2:lan:1" "3:lan:2"
418 ucidef_add_switch
"switch0" \
419 "0@eth0" "1:lan" "2:lan"
423 ucidef_set_interface_wan
"eth1"
424 ucidef_add_switch
"switch0" \
425 "0@eth0" "3:lan:1" "4:lan:2"
428 ucidef_set_interfaces_lan_wan
"eth0" "eth1"
440 lan_mac
=$
(mtd_get_mac_binary
"Board data" 2)
443 alfa-network
,ap121f|\
444 alfa-network
,ap121fe|\
447 alfa-network
,pi-wifi4|\
450 engenius
,ens202ext-v1
)
451 label_mac
=$
(mtd_get_mac_binary art
0x1002)
454 base_mac
=$
(mtd_get_mac_binary art
0x1002)
455 lan_mac
=$
(macaddr_setbit
$base_mac 29)
456 [ $lan_mac = $base_mac ] && lan_mac
=$
(macaddr_unsetbit
$base_mac 29)
461 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
464 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
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 wan_mac
=$
(fritz_tffs
-n macb
-i $
(find_mtd_part
"tffs (1)"))
473 wan_mac
=$
(mtd_get_mac_binary u-boot
0x2e018)
476 label_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" 3)
481 lan_mac
=$
(mtd_get_mac_text
"mp" 0x1)
485 lan_mac
=$
(mtd_get_mac_ascii bdcfg
"lanmac")
489 label_mac
=$
(mtd_get_mac_ascii bdcfg
"wlanmac")
492 lan_mac
=$
(mtd_get_mac_text
"caldata" 0xffa0)
493 wan_mac
=$
(mtd_get_mac_text
"caldata" 0xffb4)
496 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
500 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
501 wan_mac
=$
(mtd_get_mac_text
"mac" 0x18)
507 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
508 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
514 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
515 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
517 elecom
,wrc-1750ghbk2-i|\
518 elecom
,wrc-300ghbk2-i
)
519 wan_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" -2)
523 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
528 ubnt
,bullet-m-ar7240|\
529 ubnt
,bullet-m-ar7241|\
531 ubnt
,nanostation-loco-m|\
537 label_mac
=$
(cat /sys
/class
/ieee80211
/phy
0/macaddress
)
540 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
541 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
544 lan_mac
=$
(mtd_get_mac_text
"u-boot-env" 0xe9)
545 eth1_mac
=$
(macaddr_add
"$lan_mac" 1)
546 ucidef_set_interface
"eth0" ifname
"eth0" protocol
"none" macaddr
"$lan_mac"
547 ucidef_set_interface
"eth1" ifname
"eth1" protocol
"none" macaddr
"$eth1_mac"
549 enterasys
,ws-ap3705i
)
550 label_mac
=$
(mtd_get_mac_ascii u-boot-env0 ethaddr
)
553 hak5
,packet-squirrel
)
554 label_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
557 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
558 wan_mac
=$
(macaddr_add
"$lan_mac" -1)
561 iodata
,wn-ac1167dgr|\
562 iodata
,wn-ac1600dgr|\
563 iodata
,wn-ac1600dgr2|\
565 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
566 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
570 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n alias
/ethaddr
)
571 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
574 tplink
,tl-wdr3600-v1|\
575 tplink
,tl-wdr4300-v1|\
576 tplink
,tl-wdr4300-v1-il
)
577 base_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
578 wan_mac
=$
(macaddr_add
"$base_mac" 1)
581 lan_mac
=$
(mtd_get_mac_text board_data
0x280)
582 wan_mac
=$
(mtd_get_mac_text board_data
0x480)
586 netgear
,wndr3700-v2|\
590 lan_mac
=$
(macaddr_setbit_la
"$(mtd_get_mac_binary art 0x0)")
593 lan_mac
=$
(k2t_get_mac
"lan_mac")
594 wan_mac
=$
(k2t_get_mac
"wan_mac")
597 wan_mac
=$
(mtd_get_mac_binary factory
0x0)
598 lan_mac
=$
(macaddr_setbit_la
"$wan_mac")
602 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
603 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
606 tplink
,archer-a7-v5|\
607 tplink
,archer-c7-v4|\
608 tplink
,archer-c7-v5|\
609 tplink
,tl-wr1043nd-v4|\
610 tplink
,tl-wr1043n-v5
)
611 base_mac
=$
(mtd_get_mac_binary info
0x8)
612 wan_mac
=$
(macaddr_add
"$base_mac" 1)
615 lan_mac
=$
(mtd_get_mac_text mac
0x4)
616 wan_mac
=$
(mtd_get_mac_text mac
0x18)
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)
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)
630 wd
,mynet-wifi-rangeextender
)
631 lan_mac
=$
(nvram get et0macaddr
)
634 label_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
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
645 ath79_setup_interfaces
$board
646 ath79_setup_macs
$board