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|\
41 enterasys
,ws-ap3705i|\
42 glinet
,gl-ar300m-lite|\
44 hak5
,wifi-pineapple-nano|\
67 tplink
,eap225-outdoor-v1|\
75 tplink
,tl-wr902ac-v1|\
77 ubnt
,bullet-m-ar7240|\
78 ubnt
,bullet-m-ar7241|\
81 ubnt
,litebeam-ac-gen2|\
84 ubnt
,nanostation-ac-loco|\
85 ubnt
,nanostation-loco-m|\
86 ubnt
,nanostation-loco-m-xw|\
88 ubnt
,powerbeam-5ac-500|\
89 ubnt
,powerbeam-5ac-gen2|\
96 wd
,mynet-wifi-rangeextender|\
98 ucidef_set_interface_lan
"eth0"
101 ucidef_add_switch
"switch0" \
102 "0@eth0" "2:wan" "3:lan" "6@eth1"
104 alfa-network
,ap121fe
)
105 ucidef_set_interface_lan
"eth0 usb0"
112 ucidef_set_interface_lan
"eth0 eth1"
116 tplink
,archer-c58-v1|\
117 tplink
,archer-c59-v1|\
118 tplink
,archer-c59-v2
)
119 ucidef_set_interface_wan
"eth1"
120 ucidef_add_switch
"switch0" \
121 "0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
125 tplink
,archer-c5-v1|\
126 tplink
,archer-c7-v1|\
127 tplink
,archer-c7-v2|\
128 tplink
,tl-wdr4900-v2|\
129 tplink
,tl-wdr7500-v3
)
130 ucidef_add_switch
"switch0" \
131 "0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
134 buffalo
,wzr-hp-g450h
)
135 ucidef_add_switch
"switch0" \
136 "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
140 ucidef_add_switch
"switch0" \
141 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth0"
144 buffalo
,wzr-hp-ag300h|\
145 tplink
,archer-c25-v1|\
146 tplink
,archer-c60-v1|\
147 tplink
,archer-c60-v2|\
148 tplink
,archer-c60-v3|\
149 tplink
,tl-wdr3500-v1|\
150 tplink
,tl-wr842n-v1|\
151 tplink
,tl-wr842n-v3|\
153 ucidef_set_interface_wan
"eth1"
154 ucidef_add_switch
"switch0" \
155 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
157 buffalo
,wzr-hp-g302h-a1a0
)
158 ucidef_add_switch
"switch0" \
159 "0@eth0" "1:lan:1" "3:lan:4" "4:lan:3" "5:lan:2" "2:wan"
161 comfast
,cf-e110n-v2|\
162 comfast
,cf-e120a-v3|\
163 comfast
,cf-e314n-v2|\
166 openmesh
,om2p-hs-v4|\
179 ucidef_set_interfaces_lan_wan
"eth1" "eth0"
182 ucidef_set_interface_wan
"eth1"
183 ucidef_add_switch
"switch0" \
184 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
186 comfast
,cf-wr650ac-v1|\
187 comfast
,cf-wr650ac-v2|\
189 ucidef_add_switch
"switch0" \
190 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
194 ucidef_add_switch
"switch0" \
195 "0@eth0" "3:lan" "2:wan"
198 ucidef_add_switch
"switch0" \
199 "0@eth0" "2:wan" "3:lan" "4:lan"
202 ucidef_add_switch
"switch0" "0@eth0" "2:lan" "3:wan" "6@eth1"
205 ucidef_add_switch
"switch0" \
206 "0@eth0" "1:lan:2" "2:lan:1"
209 ucidef_set_interface_wan
"eth1"
210 ucidef_add_switch
"switch0" \
211 "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
220 tplink
,archer-c2-v3|\
221 tplink
,tl-wr1043nd-v4|\
222 tplink
,tl-wr1043n-v5
)
223 ucidef_add_switch
"switch0" \
224 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
226 elecom
,wrc-1750ghbk2-i|\
227 elecom
,wrc-300ghbk2-i|\
229 ucidef_add_switch
"switch0" \
230 "0@eth0" "2:lan:4" "3:lan:3" "4:lan:2" "5:lan:1" "1:wan"
232 embeddedwireless
,dorin
)
233 ucidef_add_switch
"switch0" \
234 "0@eth0" "1:wan" "2:lan:3" "3:lan:2"
236 engenius
,ens202ext-v1
)
237 ucidef_set_interface_wan
"eth1"
238 ucidef_add_switch
"switch0" \
242 ucidef_set_interface_lan
"eth0 eth1" "dhcp"
245 ucidef_set_interface_lan
"eth0" "dhcp"
248 ucidef_set_interface_wan
"eth1"
249 ucidef_add_switch
"switch0" \
250 "0@eth0" "1:lan" "2:lan"
253 iodata
,wn-ac1167dgr|\
254 iodata
,wn-ac1600dgr|\
255 iodata
,wn-ac1600dgr2|\
260 ucidef_add_switch
"switch0" \
261 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
263 librerouter
,librerouter-v1
)
264 ucidef_add_switch
"switch0" \
265 "0@eth0" "5:wan" "6@eth1" "4:lan"
268 tplink
,archer-a7-v5|\
269 tplink
,archer-c6-v2|\
270 tplink
,archer-c6-v2-us|\
271 tplink
,archer-c7-v4|\
272 tplink
,archer-c7-v5|\
273 tplink
,tl-wdr3600-v1|\
274 tplink
,tl-wdr4300-v1|\
275 tplink
,tl-wdr4300-v1-il|\
276 tplink
,tl-wdr4310-v1
)
277 ucidef_add_switch
"switch0" \
278 "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
281 qxwlan
,e1700ac-v2-8m|\
282 qxwlan
,e1700ac-v2-16m|\
284 qxwlan
,e750g-v8-16m|\
285 ubnt
,nanobeam-ac-gen2|\
286 ubnt
,nanostation-ac|\
289 ucidef_add_switch
"switch0" \
290 "0@eth0" "2:lan" "3:wan"
293 ucidef_add_switch
"switch0" \
294 "0@eth0" "2:lan" "3:lan" "4:lan" "1:wan"
297 netgear
,wndr3700-v2|\
302 ucidef_set_interface_wan
"eth1"
303 ucidef_add_switch
"switch0" \
304 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5u@eth0"
305 ucidef_add_switch_attr
"switch0" "blinkrate" 2
306 ucidef_add_switch_port_attr
"switch0" 1 led
6
307 ucidef_add_switch_port_attr
"switch0" 2 led
9
308 ucidef_add_switch_port_attr
"switch0" 5 led
2
312 ucidef_set_interface_wan
"eth0"
313 ucidef_add_switch
"switch0" \
314 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
317 ucidef_add_switch
"switch0" \
318 "0@eth0" "3:lan:1" "5:lan:2" "4:wan"
321 ucidef_set_interface_wan
"eth1"
322 ucidef_add_switch
"switch0" \
323 "0@eth0" "2:lan" "3:lan"
327 ucidef_add_switch
"switch0" \
328 "0@eth1" "4:lan" "5:lan" "6@eth0" "3:wan"
331 ucidef_add_switch
"switch0" \
332 "0@eth0" "1:lan" "2:lan" "3:wan"
335 teltonika
,rut955-h7v3c0
)
336 ucidef_set_interface_wan
"eth1"
337 ucidef_add_switch
"switch0" \
338 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1"
340 tplink
,archer-d50-v1
)
341 ucidef_add_switch
"switch0" \
342 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "1:wan"
344 tplink
,archer-d7-v1|\
345 tplink
,archer-d7b-v1
)
346 ucidef_add_switch
"switch0" \
347 "0@eth1" "3:lan:3" "4:lan:2" "5:lan:1" "6@eth0" "2:wan:4" "1:wan:5"
349 tplink
,eap225-wall-v2
)
350 ucidef_add_switch
"switch0" \
351 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
354 ucidef_add_switch
"switch0" \
355 "0@eth0" "2:lan:1" "5:lan:2"
358 ucidef_set_interfaces_lan_wan
"eth0.1 eth1" "usb0"
359 ucidef_add_switch
"switch0" \
360 "0@eth0" "1:lan:1" "2:lan:3" "3:lan:2"
362 tplink
,tl-wpa8630-v1|\
363 tplink
,tl-wpa8630p-v2-int|\
364 tplink
,tl-wpa8630p-v2.0
-eu|\
365 tplink
,tl-wpa8630p-v2.1
-eu)
366 # port 5 (internal) is the power-line port
367 ucidef_add_switch
"switch0" \
368 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "5:lan:4"
371 ucidef_set_interface_wan
"eth1"
372 ucidef_add_switch
"switch0" \
373 "0@eth0" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
375 tplink
,tl-wr1043nd-v1
)
376 ucidef_add_switch
"switch0" \
377 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
379 tplink
,tl-wr1043nd-v2|\
380 tplink
,tl-wr1043nd-v3|\
381 tplink
,tl-wr1045nd-v2
)
382 ucidef_add_switch
"switch0" \
383 "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
386 ucidef_add_switch
"switch0" \
387 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
390 ucidef_add_switch
"switch0" \
391 "0@eth0" "2:lan:1" "3:lan:2" "5:lan:3" "4:wan"
394 ucidef_set_interface_wan
"eth1"
395 ucidef_add_switch
"switch0" \
396 "0@eth0" "2:lan:1" "3:lan:3" "4:lan:2"
399 ucidef_set_interface_wan
"eth1"
400 ucidef_add_switch
"switch0" \
401 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:lan"
404 ucidef_set_interface_wan
"eth1"
405 ucidef_add_switch
"switch0" \
406 "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"
408 ubnt
,routerstation-pro
)
409 ucidef_set_interface_wan
"eth0"
410 ucidef_add_switch
"switch0" \
411 "0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
413 ubnt
,nanostation-m-xw
)
414 ucidef_add_switch
"switch0" \
415 "0@eth0" "5:lan" "1:wan"
417 ubnt
,unifiac-mesh-pro|\
419 ucidef_add_switch
"switch0" \
420 "0@eth0" "2:lan:1" "3:lan:2"
423 ucidef_add_switch
"switch0" \
424 "0@eth0" "1:lan" "2:lan"
428 ucidef_set_interface_wan
"eth1"
429 ucidef_add_switch
"switch0" \
430 "0@eth0" "3:lan:1" "4:lan:2"
433 ucidef_set_interfaces_lan_wan
"eth0" "eth1"
445 lan_mac
=$
(mtd_get_mac_binary
"Board data" 2)
448 alfa-network
,ap121f|\
449 alfa-network
,ap121fe|\
452 alfa-network
,pi-wifi4|\
455 engenius
,ens202ext-v1
)
456 label_mac
=$
(mtd_get_mac_binary art
0x1002)
459 base_mac
=$
(mtd_get_mac_binary art
0x1002)
460 lan_mac
=$
(macaddr_setbit
$base_mac 29)
461 [ $lan_mac = $base_mac ] && lan_mac
=$
(macaddr_unsetbit
$base_mac 29)
466 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
469 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
470 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
473 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
474 wan_mac
=$
(fritz_tffs
-n macb
-i $
(find_mtd_part
"tffs (1)"))
478 wan_mac
=$
(mtd_get_mac_binary u-boot
0x2e018)
481 label_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" 3)
486 lan_mac
=$
(mtd_get_mac_text
"mp" 0x1)
493 lan_mac
=$
(mtd_get_mac_ascii bdcfg
"lanmac")
497 label_mac
=$
(mtd_get_mac_ascii bdcfg
"wlanmac")
500 lan_mac
=$
(mtd_get_mac_text
"caldata" 0xffa0)
501 wan_mac
=$
(mtd_get_mac_text
"caldata" 0xffb4)
504 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
508 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
509 wan_mac
=$
(mtd_get_mac_text
"mac" 0x18)
515 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
516 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
522 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
523 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
525 elecom
,wrc-1750ghbk2-i|\
526 elecom
,wrc-300ghbk2-i
)
527 wan_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" -2)
531 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
535 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
536 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
539 lan_mac
=$
(mtd_get_mac_text
"u-boot-env" 0xe9)
540 eth1_mac
=$
(macaddr_add
"$lan_mac" 1)
541 ucidef_set_interface
"eth0" ifname
"eth0" protocol
"none" macaddr
"$lan_mac"
542 ucidef_set_interface
"eth1" ifname
"eth1" protocol
"none" macaddr
"$eth1_mac"
544 enterasys
,ws-ap3705i
)
545 label_mac
=$
(mtd_get_mac_ascii u-boot-env0 ethaddr
)
548 hak5
,packet-squirrel
)
549 label_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
552 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
553 wan_mac
=$
(macaddr_add
"$lan_mac" -1)
556 iodata
,wn-ac1167dgr|\
557 iodata
,wn-ac1600dgr|\
558 iodata
,wn-ac1600dgr2|\
560 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
561 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
565 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n alias
/ethaddr
)
566 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
569 tplink
,tl-wdr3600-v1|\
570 tplink
,tl-wdr4300-v1|\
571 tplink
,tl-wdr4300-v1-il
)
572 base_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
573 wan_mac
=$
(macaddr_add
"$base_mac" 1)
576 lan_mac
=$
(mtd_get_mac_text board_data
0x280)
577 wan_mac
=$
(mtd_get_mac_text board_data
0x480)
581 netgear
,wndr3700-v2|\
585 lan_mac
=$
(macaddr_setbit_la
"$(mtd_get_mac_binary art 0x0)")
588 lan_mac
=$
(k2t_get_mac
"lan_mac")
589 wan_mac
=$
(k2t_get_mac
"wan_mac")
592 wan_mac
=$
(mtd_get_mac_binary factory
0x0)
593 lan_mac
=$
(macaddr_setbit_la
"$wan_mac")
597 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
598 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
601 tplink
,archer-a7-v5|\
602 tplink
,archer-c7-v4|\
603 tplink
,archer-c7-v5|\
604 tplink
,tl-wr1043nd-v4|\
605 tplink
,tl-wr1043n-v5
)
606 base_mac
=$
(mtd_get_mac_binary info
0x8)
607 wan_mac
=$
(macaddr_add
"$base_mac" 1)
610 lan_mac
=$
(mtd_get_mac_text mac
0x4)
611 wan_mac
=$
(mtd_get_mac_text mac
0x18)
615 ubnt
,bullet-m-ar7240|\
616 ubnt
,bullet-m-ar7241|\
618 ubnt
,nanostation-loco-m|\
624 label_mac
=$
(cat /sys
/class
/ieee80211
/phy
0/macaddress
)
626 ubnt
,litebeam-ac-gen2|\
627 ubnt
,nanobeam-ac-gen2|\
628 ubnt
,powerbeam-5ac-500|\
629 ubnt
,powerbeam-5ac-gen2
)
630 label_mac
=$
(mtd_get_mac_binary art
0x5006)
633 ubnt
,routerstation-pro
)
634 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n ar7100_esa
)
635 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
637 wd
,mynet-wifi-rangeextender
)
638 lan_mac
=$
(nvram get et0macaddr
)
641 label_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
645 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr
"lan" $lan_mac
646 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr
"wan" $wan_mac
647 [ -n "$label_mac" ] && ucidef_set_label_macaddr
$label_mac
652 ath79_setup_interfaces
$board
653 ath79_setup_macs
$board