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|\
36 enterasys
,ws-ap3705i|\
37 glinet
,gl-ar300m-lite|\
39 hak5
,wifi-pineapple-nano|\
56 tplink
,eap225-outdoor-v1|\
64 tplink
,tl-wr902ac-v1|\
65 ubnt
,bullet-m-ar7240|\
66 ubnt
,bullet-m-ar7241|\
69 ubnt
,litebeam-ac-gen2|\
72 ubnt
,nanostation-ac-loco|\
73 ubnt
,nanostation-loco-m|\
74 ubnt
,nanostation-loco-m-xw|\
76 ubnt
,powerbeam-5ac-500|\
77 ubnt
,powerbeam-5ac-gen2|\
84 wd
,mynet-wifi-rangeextender|\
86 ucidef_set_interface_lan
"eth0"
89 ucidef_add_switch
"switch0" \
90 "0@eth0" "2:wan" "3:lan" "6@eth1"
93 ucidef_set_interface_lan
"eth0 usb0"
100 ucidef_set_interface_lan
"eth0 eth1"
104 tplink
,archer-c58-v1|\
105 tplink
,archer-c59-v1|\
106 tplink
,archer-c59-v2
)
107 ucidef_set_interface_wan
"eth1"
108 ucidef_add_switch
"switch0" \
109 "0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
113 tplink
,archer-c5-v1|\
114 tplink
,archer-c7-v1|\
115 tplink
,archer-c7-v2|\
116 tplink
,tl-wdr4900-v2|\
117 tplink
,tl-wdr7500-v3
)
118 ucidef_add_switch
"switch0" \
119 "0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
122 buffalo
,wzr-hp-g450h
)
123 ucidef_add_switch
"switch0" \
124 "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
128 ucidef_add_switch
"switch0" \
129 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth0"
132 buffalo
,wzr-hp-ag300h|\
133 tplink
,archer-c25-v1|\
134 tplink
,archer-c60-v1|\
135 tplink
,archer-c60-v2|\
136 tplink
,archer-c60-v3|\
137 tplink
,tl-wdr3500-v1|\
138 tplink
,tl-wr842n-v1|\
139 tplink
,tl-wr842n-v3|\
141 ucidef_set_interface_wan
"eth1"
142 ucidef_add_switch
"switch0" \
143 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
145 buffalo
,wzr-hp-g302h-a1a0
)
146 ucidef_add_switch
"switch0" \
147 "0@eth0" "1:lan:1" "3:lan:4" "4:lan:3" "5:lan:2" "2:wan"
149 comfast
,cf-e110n-v2|\
150 comfast
,cf-e120a-v3|\
151 comfast
,cf-e314n-v2|\
165 ucidef_set_interfaces_lan_wan
"eth1" "eth0"
168 ucidef_set_interface_wan
"eth1"
169 ucidef_add_switch
"switch0" \
170 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
172 comfast
,cf-wr650ac-v1|\
173 comfast
,cf-wr650ac-v2|\
175 ucidef_add_switch
"switch0" \
176 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
180 ucidef_add_switch
"switch0" \
181 "0@eth0" "3:lan" "2:wan"
184 ucidef_add_switch
"switch0" \
185 "0@eth0" "2:wan" "3:lan" "4:lan"
188 ucidef_add_switch
"switch0" "0@eth0" "2:lan" "3:wan" "6@eth1"
191 ucidef_add_switch
"switch0" \
192 "0@eth0" "1:lan:2" "2:lan:1"
195 ucidef_set_interface_wan
"eth1"
196 ucidef_add_switch
"switch0" \
197 "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
206 tplink
,archer-c2-v3|\
207 tplink
,tl-wr1043nd-v4|\
208 tplink
,tl-wr1043n-v5
)
209 ucidef_add_switch
"switch0" \
210 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
212 elecom
,wrc-1750ghbk2-i|\
213 elecom
,wrc-300ghbk2-i|\
215 ucidef_add_switch
"switch0" \
216 "0@eth0" "2:lan:4" "3:lan:3" "4:lan:2" "5:lan:1" "1:wan"
218 embeddedwireless
,dorin
)
219 ucidef_add_switch
"switch0" \
220 "0@eth0" "1:wan" "2:lan:3" "3:lan:2"
223 ucidef_set_interface_wan
"eth0"
224 ucidef_add_switch
"switch0" \
227 engenius
,ens202ext-v1
)
228 ucidef_set_interface_wan
"eth1"
229 ucidef_add_switch
"switch0" \
233 ucidef_set_interface_lan
"eth0 eth1" "dhcp"
236 ucidef_set_interface_lan
"eth0" "dhcp"
239 ucidef_set_interface_wan
"eth1"
240 ucidef_add_switch
"switch0" \
241 "0@eth0" "1:lan" "2:lan"
244 iodata
,wn-ac1167dgr|\
245 iodata
,wn-ac1600dgr|\
246 iodata
,wn-ac1600dgr2|\
251 ucidef_add_switch
"switch0" \
252 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
254 librerouter
,librerouter-v1
)
255 ucidef_add_switch
"switch0" \
256 "0@eth0" "5:wan" "6@eth1" "4:lan"
259 tplink
,archer-a7-v5|\
260 tplink
,archer-c6-v2|\
261 tplink
,archer-c6-v2-us|\
262 tplink
,archer-c7-v4|\
263 tplink
,archer-c7-v5|\
264 tplink
,tl-wdr3600-v1|\
265 tplink
,tl-wdr4300-v1|\
266 tplink
,tl-wdr4300-v1-il|\
267 tplink
,tl-wdr4310-v1
)
268 ucidef_add_switch
"switch0" \
269 "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
272 qxwlan
,e1700ac-v2-8m|\
273 qxwlan
,e1700ac-v2-16m|\
275 qxwlan
,e750g-v8-16m|\
276 ubnt
,nanobeam-ac-gen2|\
277 ubnt
,nanostation-ac|\
280 ucidef_add_switch
"switch0" \
281 "0@eth0" "2:lan" "3:wan"
284 ucidef_add_switch
"switch0" \
285 "0@eth0" "2:lan" "3:lan" "4:lan" "1:wan"
288 netgear
,wndr3700-v2|\
293 ucidef_set_interface_wan
"eth1"
294 ucidef_add_switch
"switch0" \
295 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5u@eth0"
296 ucidef_add_switch_attr
"switch0" "blinkrate" 2
297 ucidef_add_switch_port_attr
"switch0" 1 led
6
298 ucidef_add_switch_port_attr
"switch0" 2 led
9
299 ucidef_add_switch_port_attr
"switch0" 5 led
2
303 ucidef_set_interface_wan
"eth0"
304 ucidef_add_switch
"switch0" \
305 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
308 ucidef_add_switch
"switch0" \
309 "0@eth0" "3:lan:1" "5:lan:2" "4:wan"
312 ucidef_set_interface_wan
"eth1"
313 ucidef_add_switch
"switch0" \
314 "0@eth0" "2:lan" "3:lan"
318 ucidef_add_switch
"switch0" \
319 "0@eth1" "4:lan" "5:lan" "6@eth0" "3:wan"
322 ucidef_add_switch
"switch0" \
323 "0@eth0" "1:lan" "2:lan" "3:wan"
326 teltonika
,rut955-h7v3c0
)
327 ucidef_set_interface_wan
"eth1"
328 ucidef_add_switch
"switch0" \
329 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1"
331 tplink
,archer-d50-v1
)
332 ucidef_add_switch
"switch0" \
333 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "1:wan"
335 tplink
,archer-d7-v1|\
336 tplink
,archer-d7b-v1
)
337 ucidef_add_switch
"switch0" \
338 "0@eth1" "3:lan:3" "4:lan:2" "5:lan:1" "6@eth0" "2:wan:4" "1:wan:5"
340 tplink
,eap225-wall-v2
)
341 ucidef_add_switch
"switch0" \
342 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
345 ucidef_add_switch
"switch0" \
346 "0@eth0" "2:lan:1" "5:lan:2"
349 ucidef_set_interfaces_lan_wan
"eth0.1 eth1" "usb0"
350 ucidef_add_switch
"switch0" \
351 "0@eth0" "1:lan:1" "2:lan:3" "3:lan:2"
353 tplink
,tl-wpa8630-v1|\
354 tplink
,tl-wpa8630p-v2-int|\
355 tplink
,tl-wpa8630p-v2.0
-eu|\
356 tplink
,tl-wpa8630p-v2.1
-eu)
357 # port 5 (internal) is the power-line port
358 ucidef_add_switch
"switch0" \
359 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "5:lan:4"
362 ucidef_set_interface_wan
"eth1"
363 ucidef_add_switch
"switch0" \
364 "0@eth0" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
366 tplink
,tl-wr1043nd-v1
)
367 ucidef_add_switch
"switch0" \
368 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
370 tplink
,tl-wr1043nd-v2|\
371 tplink
,tl-wr1043nd-v3|\
372 tplink
,tl-wr1045nd-v2
)
373 ucidef_add_switch
"switch0" \
374 "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
377 ucidef_add_switch
"switch0" \
378 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
381 ucidef_add_switch
"switch0" \
382 "0@eth0" "2:lan:1" "3:lan:2" "5:lan:3" "4:wan"
385 ucidef_set_interface_wan
"eth1"
386 ucidef_add_switch
"switch0" \
387 "0@eth0" "2:lan:1" "3:lan:3" "4:lan:2"
390 ucidef_set_interface_wan
"eth1"
391 ucidef_add_switch
"switch0" \
392 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:lan"
395 ucidef_set_interface_wan
"eth1"
396 ucidef_add_switch
"switch0" \
397 "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"
399 ubnt
,routerstation-pro
)
400 ucidef_set_interface_wan
"eth0"
401 ucidef_add_switch
"switch0" \
402 "0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
404 ubnt
,nanostation-m-xw
)
405 ucidef_add_switch
"switch0" \
406 "0@eth0" "5:lan" "1:wan"
408 ubnt
,unifiac-mesh-pro|\
410 ucidef_add_switch
"switch0" \
411 "0@eth0" "2:lan:1" "3:lan:2"
414 ucidef_add_switch
"switch0" \
415 "0@eth0" "1:lan" "2:lan"
419 ucidef_set_interface_wan
"eth1"
420 ucidef_add_switch
"switch0" \
421 "0@eth0" "3:lan:1" "4:lan:2"
424 ucidef_set_interfaces_lan_wan
"eth0" "eth1"
436 lan_mac
=$
(mtd_get_mac_binary
"Board data" 2)
439 alfa-network
,ap121f|\
440 alfa-network
,ap121fe|\
443 alfa-network
,pi-wifi4|\
446 engenius
,ens202ext-v1
)
447 label_mac
=$
(mtd_get_mac_binary art
0x1002)
450 base_mac
=$
(mtd_get_mac_binary art
0x1002)
451 lan_mac
=$
(macaddr_setbit
$base_mac 29)
452 [ $lan_mac = $base_mac ] && lan_mac
=$
(macaddr_unsetbit
$base_mac 29)
457 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
460 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
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 wan_mac
=$
(fritz_tffs
-n macb
-i $
(find_mtd_part
"tffs (1)"))
469 wan_mac
=$
(mtd_get_mac_binary u-boot
0x2e018)
472 label_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" 3)
477 lan_mac
=$
(mtd_get_mac_text
"mp" 0x1)
481 lan_mac
=$
(mtd_get_mac_ascii bdcfg
"lanmac")
485 label_mac
=$
(mtd_get_mac_ascii bdcfg
"wlanmac")
488 lan_mac
=$
(mtd_get_mac_text
"caldata" 0xffa0)
489 wan_mac
=$
(mtd_get_mac_text
"caldata" 0xffb4)
492 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
496 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
497 wan_mac
=$
(mtd_get_mac_text
"mac" 0x18)
503 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
504 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
510 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
511 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
513 elecom
,wrc-1750ghbk2-i|\
514 elecom
,wrc-300ghbk2-i
)
515 wan_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" -2)
519 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
524 ubnt
,bullet-m-ar7240|\
525 ubnt
,bullet-m-ar7241|\
527 ubnt
,nanostation-loco-m|\
533 label_mac
=$
(cat /sys
/class
/ieee80211
/phy
0/macaddress
)
536 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
537 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
540 lan_mac
=$
(mtd_get_mac_text
"u-boot-env" 0xe9)
541 eth1_mac
=$
(macaddr_add
"$lan_mac" 1)
542 ucidef_set_interface
"eth0" ifname
"eth0" protocol
"none" macaddr
"$lan_mac"
543 ucidef_set_interface
"eth1" ifname
"eth1" protocol
"none" macaddr
"$eth1_mac"
545 enterasys
,ws-ap3705i
)
546 label_mac
=$
(mtd_get_mac_ascii u-boot-env0 ethaddr
)
549 hak5
,packet-squirrel
)
550 label_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
553 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
554 wan_mac
=$
(macaddr_add
"$lan_mac" -1)
557 iodata
,wn-ac1167dgr|\
558 iodata
,wn-ac1600dgr|\
559 iodata
,wn-ac1600dgr2|\
561 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
562 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
566 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n alias
/ethaddr
)
567 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
570 tplink
,tl-wdr3600-v1|\
571 tplink
,tl-wdr4300-v1|\
572 tplink
,tl-wdr4300-v1-il
)
573 base_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
574 wan_mac
=$
(macaddr_add
"$base_mac" 1)
577 lan_mac
=$
(mtd_get_mac_text board_data
0x280)
578 wan_mac
=$
(mtd_get_mac_text board_data
0x480)
582 netgear
,wndr3700-v2|\
586 lan_mac
=$
(macaddr_setbit_la
"$(mtd_get_mac_binary art 0x0)")
589 lan_mac
=$
(k2t_get_mac
"lan_mac")
590 wan_mac
=$
(k2t_get_mac
"wan_mac")
593 wan_mac
=$
(mtd_get_mac_binary factory
0x0)
594 lan_mac
=$
(macaddr_setbit_la
"$wan_mac")
598 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
599 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
602 tplink
,archer-a7-v5|\
603 tplink
,archer-c7-v4|\
604 tplink
,archer-c7-v5|\
605 tplink
,tl-wr1043nd-v4|\
606 tplink
,tl-wr1043n-v5
)
607 base_mac
=$
(mtd_get_mac_binary info
0x8)
608 wan_mac
=$
(macaddr_add
"$base_mac" 1)
611 lan_mac
=$
(mtd_get_mac_text mac
0x4)
612 wan_mac
=$
(mtd_get_mac_text mac
0x18)
615 ubnt
,litebeam-ac-gen2|\
616 ubnt
,nanobeam-ac-gen2|\
617 ubnt
,powerbeam-5ac-500|\
618 ubnt
,powerbeam-5ac-gen2
)
619 label_mac
=$
(mtd_get_mac_binary art
0x5006)
622 ubnt
,routerstation-pro
)
623 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n ar7100_esa
)
624 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
626 wd
,mynet-wifi-rangeextender
)
627 lan_mac
=$
(nvram get et0macaddr
)
630 label_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
634 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr
"lan" $lan_mac
635 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr
"wan" $wan_mac
636 [ -n "$label_mac" ] && ucidef_set_label_macaddr
$label_mac
641 ath79_setup_interfaces
$board
642 ath79_setup_macs
$board