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|\
61 tplink
,eap225-outdoor-v1|\
69 tplink
,tl-wr902ac-v1|\
71 ubnt
,bullet-m-ar7240|\
72 ubnt
,bullet-m-ar7241|\
75 ubnt
,litebeam-ac-gen2|\
78 ubnt
,nanostation-ac-loco|\
79 ubnt
,nanostation-loco-m|\
80 ubnt
,nanostation-loco-m-xw|\
82 ubnt
,powerbeam-5ac-500|\
83 ubnt
,powerbeam-5ac-gen2|\
90 wd
,mynet-wifi-rangeextender|\
92 ucidef_set_interface_lan
"eth0"
95 ucidef_add_switch
"switch0" \
96 "0@eth0" "2:wan" "3:lan" "6@eth1"
99 ucidef_set_interface_lan
"eth0 usb0"
106 ucidef_set_interface_lan
"eth0 eth1"
110 tplink
,archer-c58-v1|\
111 tplink
,archer-c59-v1|\
112 tplink
,archer-c59-v2
)
113 ucidef_set_interface_wan
"eth1"
114 ucidef_add_switch
"switch0" \
115 "0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
119 tplink
,archer-c5-v1|\
120 tplink
,archer-c7-v1|\
121 tplink
,archer-c7-v2|\
122 tplink
,tl-wdr4900-v2|\
123 tplink
,tl-wdr7500-v3
)
124 ucidef_add_switch
"switch0" \
125 "0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
128 buffalo
,wzr-hp-g450h
)
129 ucidef_add_switch
"switch0" \
130 "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
134 ucidef_add_switch
"switch0" \
135 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth0"
138 buffalo
,wzr-hp-ag300h|\
139 tplink
,archer-c25-v1|\
140 tplink
,archer-c60-v1|\
141 tplink
,archer-c60-v2|\
142 tplink
,archer-c60-v3|\
143 tplink
,tl-wdr3500-v1|\
144 tplink
,tl-wr842n-v1|\
145 tplink
,tl-wr842n-v3|\
147 ucidef_set_interface_wan
"eth1"
148 ucidef_add_switch
"switch0" \
149 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
151 buffalo
,wzr-hp-g302h-a1a0
)
152 ucidef_add_switch
"switch0" \
153 "0@eth0" "1:lan:1" "3:lan:4" "4:lan:3" "5:lan:2" "2:wan"
155 comfast
,cf-e110n-v2|\
156 comfast
,cf-e120a-v3|\
157 comfast
,cf-e314n-v2|\
160 openmesh
,om2p-hs-v4|\
173 ucidef_set_interfaces_lan_wan
"eth1" "eth0"
176 ucidef_set_interface_wan
"eth1"
177 ucidef_add_switch
"switch0" \
178 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
180 comfast
,cf-wr650ac-v1|\
181 comfast
,cf-wr650ac-v2|\
183 ucidef_add_switch
"switch0" \
184 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
188 ucidef_add_switch
"switch0" \
189 "0@eth0" "3:lan" "2:wan"
192 ucidef_add_switch
"switch0" \
193 "0@eth0" "2:wan" "3:lan" "4:lan"
196 ucidef_add_switch
"switch0" "0@eth0" "2:lan" "3:wan" "6@eth1"
199 ucidef_add_switch
"switch0" \
200 "0@eth0" "1:lan:2" "2:lan:1"
203 ucidef_set_interface_wan
"eth1"
204 ucidef_add_switch
"switch0" \
205 "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
214 tplink
,archer-c2-v3|\
215 tplink
,tl-wr1043nd-v4|\
216 tplink
,tl-wr1043n-v5
)
217 ucidef_add_switch
"switch0" \
218 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
220 elecom
,wrc-1750ghbk2-i|\
221 elecom
,wrc-300ghbk2-i|\
223 ucidef_add_switch
"switch0" \
224 "0@eth0" "2:lan:4" "3:lan:3" "4:lan:2" "5:lan:1" "1:wan"
226 embeddedwireless
,dorin
)
227 ucidef_add_switch
"switch0" \
228 "0@eth0" "1:wan" "2:lan:3" "3:lan:2"
230 engenius
,ens202ext-v1
)
231 ucidef_set_interface_wan
"eth1"
232 ucidef_add_switch
"switch0" \
236 ucidef_set_interface_lan
"eth0 eth1" "dhcp"
239 ucidef_set_interface_lan
"eth0" "dhcp"
242 ucidef_set_interface_wan
"eth1"
243 ucidef_add_switch
"switch0" \
244 "0@eth0" "1:lan" "2:lan"
247 iodata
,wn-ac1167dgr|\
248 iodata
,wn-ac1600dgr|\
249 iodata
,wn-ac1600dgr2|\
254 ucidef_add_switch
"switch0" \
255 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
257 librerouter
,librerouter-v1
)
258 ucidef_add_switch
"switch0" \
259 "0@eth0" "5:wan" "6@eth1" "4:lan"
262 tplink
,archer-a7-v5|\
263 tplink
,archer-c6-v2|\
264 tplink
,archer-c6-v2-us|\
265 tplink
,archer-c7-v4|\
266 tplink
,archer-c7-v5|\
267 tplink
,tl-wdr3600-v1|\
268 tplink
,tl-wdr4300-v1|\
269 tplink
,tl-wdr4300-v1-il|\
270 tplink
,tl-wdr4310-v1
)
271 ucidef_add_switch
"switch0" \
272 "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
275 qxwlan
,e1700ac-v2-8m|\
276 qxwlan
,e1700ac-v2-16m|\
278 qxwlan
,e750g-v8-16m|\
279 ubnt
,nanobeam-ac-gen2|\
280 ubnt
,nanostation-ac|\
283 ucidef_add_switch
"switch0" \
284 "0@eth0" "2:lan" "3:wan"
287 ucidef_add_switch
"switch0" \
288 "0@eth0" "2:lan" "3:lan" "4:lan" "1:wan"
291 netgear
,wndr3700-v2|\
296 ucidef_set_interface_wan
"eth1"
297 ucidef_add_switch
"switch0" \
298 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5u@eth0"
299 ucidef_add_switch_attr
"switch0" "blinkrate" 2
300 ucidef_add_switch_port_attr
"switch0" 1 led
6
301 ucidef_add_switch_port_attr
"switch0" 2 led
9
302 ucidef_add_switch_port_attr
"switch0" 5 led
2
306 ucidef_set_interface_wan
"eth0"
307 ucidef_add_switch
"switch0" \
308 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
311 ucidef_add_switch
"switch0" \
312 "0@eth0" "3:lan:1" "5:lan:2" "4:wan"
315 ucidef_set_interface_wan
"eth1"
316 ucidef_add_switch
"switch0" \
317 "0@eth0" "2:lan" "3:lan"
321 ucidef_add_switch
"switch0" \
322 "0@eth1" "4:lan" "5:lan" "6@eth0" "3:wan"
325 ucidef_add_switch
"switch0" \
326 "0@eth0" "1:lan" "2:lan" "3:wan"
329 teltonika
,rut955-h7v3c0
)
330 ucidef_set_interface_wan
"eth1"
331 ucidef_add_switch
"switch0" \
332 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1"
334 tplink
,archer-d50-v1
)
335 ucidef_add_switch
"switch0" \
336 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "1:wan"
338 tplink
,archer-d7-v1|\
339 tplink
,archer-d7b-v1
)
340 ucidef_add_switch
"switch0" \
341 "0@eth1" "3:lan:3" "4:lan:2" "5:lan:1" "6@eth0" "2:wan:4" "1:wan:5"
343 tplink
,eap225-wall-v2
)
344 ucidef_add_switch
"switch0" \
345 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
348 ucidef_add_switch
"switch0" \
349 "0@eth0" "2:lan:1" "5:lan:2"
352 ucidef_set_interfaces_lan_wan
"eth0.1 eth1" "usb0"
353 ucidef_add_switch
"switch0" \
354 "0@eth0" "1:lan:1" "2:lan:3" "3:lan:2"
356 tplink
,tl-wpa8630-v1|\
357 tplink
,tl-wpa8630p-v2-int|\
358 tplink
,tl-wpa8630p-v2.0
-eu|\
359 tplink
,tl-wpa8630p-v2.1
-eu)
360 # port 5 (internal) is the power-line port
361 ucidef_add_switch
"switch0" \
362 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "5:lan:4"
365 ucidef_set_interface_wan
"eth1"
366 ucidef_add_switch
"switch0" \
367 "0@eth0" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
369 tplink
,tl-wr1043nd-v1
)
370 ucidef_add_switch
"switch0" \
371 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
373 tplink
,tl-wr1043nd-v2|\
374 tplink
,tl-wr1043nd-v3|\
375 tplink
,tl-wr1045nd-v2
)
376 ucidef_add_switch
"switch0" \
377 "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
380 ucidef_add_switch
"switch0" \
381 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
384 ucidef_add_switch
"switch0" \
385 "0@eth0" "2:lan:1" "3:lan:2" "5:lan:3" "4:wan"
388 ucidef_set_interface_wan
"eth1"
389 ucidef_add_switch
"switch0" \
390 "0@eth0" "2:lan:1" "3:lan:3" "4:lan:2"
393 ucidef_set_interface_wan
"eth1"
394 ucidef_add_switch
"switch0" \
395 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:lan"
398 ucidef_set_interface_wan
"eth1"
399 ucidef_add_switch
"switch0" \
400 "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"
402 ubnt
,routerstation-pro
)
403 ucidef_set_interface_wan
"eth0"
404 ucidef_add_switch
"switch0" \
405 "0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
407 ubnt
,nanostation-m-xw
)
408 ucidef_add_switch
"switch0" \
409 "0@eth0" "5:lan" "1:wan"
411 ubnt
,unifiac-mesh-pro|\
413 ucidef_add_switch
"switch0" \
414 "0@eth0" "2:lan:1" "3:lan:2"
417 ucidef_add_switch
"switch0" \
418 "0@eth0" "1:lan" "2:lan"
422 ucidef_set_interface_wan
"eth1"
423 ucidef_add_switch
"switch0" \
424 "0@eth0" "3:lan:1" "4:lan:2"
427 ucidef_set_interfaces_lan_wan
"eth0" "eth1"
439 lan_mac
=$
(mtd_get_mac_binary
"Board data" 2)
442 alfa-network
,ap121f|\
443 alfa-network
,ap121fe|\
446 alfa-network
,pi-wifi4|\
449 engenius
,ens202ext-v1
)
450 label_mac
=$
(mtd_get_mac_binary art
0x1002)
453 base_mac
=$
(mtd_get_mac_binary art
0x1002)
454 lan_mac
=$
(macaddr_setbit
$base_mac 29)
455 [ $lan_mac = $base_mac ] && lan_mac
=$
(macaddr_unsetbit
$base_mac 29)
460 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
463 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
464 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
467 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
468 wan_mac
=$
(fritz_tffs
-n macb
-i $
(find_mtd_part
"tffs (1)"))
472 wan_mac
=$
(mtd_get_mac_binary u-boot
0x2e018)
475 label_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" 3)
480 lan_mac
=$
(mtd_get_mac_text
"mp" 0x1)
487 lan_mac
=$
(mtd_get_mac_ascii bdcfg
"lanmac")
491 label_mac
=$
(mtd_get_mac_ascii bdcfg
"wlanmac")
494 lan_mac
=$
(mtd_get_mac_text
"caldata" 0xffa0)
495 wan_mac
=$
(mtd_get_mac_text
"caldata" 0xffb4)
498 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
502 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
503 wan_mac
=$
(mtd_get_mac_text
"mac" 0x18)
509 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
510 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
516 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
517 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
519 elecom
,wrc-1750ghbk2-i|\
520 elecom
,wrc-300ghbk2-i
)
521 wan_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" -2)
525 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
529 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
530 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
533 lan_mac
=$
(mtd_get_mac_text
"u-boot-env" 0xe9)
534 eth1_mac
=$
(macaddr_add
"$lan_mac" 1)
535 ucidef_set_interface
"eth0" ifname
"eth0" protocol
"none" macaddr
"$lan_mac"
536 ucidef_set_interface
"eth1" ifname
"eth1" protocol
"none" macaddr
"$eth1_mac"
538 enterasys
,ws-ap3705i
)
539 label_mac
=$
(mtd_get_mac_ascii u-boot-env0 ethaddr
)
542 hak5
,packet-squirrel
)
543 label_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
546 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
547 wan_mac
=$
(macaddr_add
"$lan_mac" -1)
550 iodata
,wn-ac1167dgr|\
551 iodata
,wn-ac1600dgr|\
552 iodata
,wn-ac1600dgr2|\
554 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
555 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
559 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n alias
/ethaddr
)
560 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
563 tplink
,tl-wdr3600-v1|\
564 tplink
,tl-wdr4300-v1|\
565 tplink
,tl-wdr4300-v1-il
)
566 base_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
567 wan_mac
=$
(macaddr_add
"$base_mac" 1)
570 lan_mac
=$
(mtd_get_mac_text board_data
0x280)
571 wan_mac
=$
(mtd_get_mac_text board_data
0x480)
575 netgear
,wndr3700-v2|\
579 lan_mac
=$
(macaddr_setbit_la
"$(mtd_get_mac_binary art 0x0)")
582 lan_mac
=$
(k2t_get_mac
"lan_mac")
583 wan_mac
=$
(k2t_get_mac
"wan_mac")
586 wan_mac
=$
(mtd_get_mac_binary factory
0x0)
587 lan_mac
=$
(macaddr_setbit_la
"$wan_mac")
591 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
592 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
595 tplink
,archer-a7-v5|\
596 tplink
,archer-c7-v4|\
597 tplink
,archer-c7-v5|\
598 tplink
,tl-wr1043nd-v4|\
599 tplink
,tl-wr1043n-v5
)
600 base_mac
=$
(mtd_get_mac_binary info
0x8)
601 wan_mac
=$
(macaddr_add
"$base_mac" 1)
604 lan_mac
=$
(mtd_get_mac_text mac
0x4)
605 wan_mac
=$
(mtd_get_mac_text mac
0x18)
609 ubnt
,bullet-m-ar7240|\
610 ubnt
,bullet-m-ar7241|\
612 ubnt
,nanostation-loco-m|\
618 label_mac
=$
(cat /sys
/class
/ieee80211
/phy
0/macaddress
)
620 ubnt
,litebeam-ac-gen2|\
621 ubnt
,nanobeam-ac-gen2|\
622 ubnt
,powerbeam-5ac-500|\
623 ubnt
,powerbeam-5ac-gen2
)
624 label_mac
=$
(mtd_get_mac_binary art
0x5006)
627 ubnt
,routerstation-pro
)
628 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n ar7100_esa
)
629 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
631 wd
,mynet-wifi-rangeextender
)
632 lan_mac
=$
(nvram get et0macaddr
)
635 label_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
639 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr
"lan" $lan_mac
640 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr
"wan" $wan_mac
641 [ -n "$label_mac" ] && ucidef_set_label_macaddr
$label_mac
646 ath79_setup_interfaces
$board
647 ath79_setup_macs
$board