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|\
64 tplink
,eap225-outdoor-v1|\
72 tplink
,tl-wr902ac-v1|\
74 ubnt
,bullet-m-ar7240|\
75 ubnt
,bullet-m-ar7241|\
78 ubnt
,litebeam-ac-gen2|\
81 ubnt
,nanostation-ac-loco|\
82 ubnt
,nanostation-loco-m|\
83 ubnt
,nanostation-loco-m-xw|\
85 ubnt
,powerbeam-5ac-500|\
86 ubnt
,powerbeam-5ac-gen2|\
93 wd
,mynet-wifi-rangeextender|\
95 ucidef_set_interface_lan
"eth0"
98 ucidef_add_switch
"switch0" \
99 "0@eth0" "2:wan" "3:lan" "6@eth1"
101 alfa-network
,ap121fe
)
102 ucidef_set_interface_lan
"eth0 usb0"
109 ucidef_set_interface_lan
"eth0 eth1"
113 tplink
,archer-c58-v1|\
114 tplink
,archer-c59-v1|\
115 tplink
,archer-c59-v2
)
116 ucidef_set_interface_wan
"eth1"
117 ucidef_add_switch
"switch0" \
118 "0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
122 tplink
,archer-c5-v1|\
123 tplink
,archer-c7-v1|\
124 tplink
,archer-c7-v2|\
125 tplink
,tl-wdr4900-v2|\
126 tplink
,tl-wdr7500-v3
)
127 ucidef_add_switch
"switch0" \
128 "0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
131 buffalo
,wzr-hp-g450h
)
132 ucidef_add_switch
"switch0" \
133 "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
137 ucidef_add_switch
"switch0" \
138 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth0"
141 buffalo
,wzr-hp-ag300h|\
142 tplink
,archer-c25-v1|\
143 tplink
,archer-c60-v1|\
144 tplink
,archer-c60-v2|\
145 tplink
,archer-c60-v3|\
146 tplink
,tl-wdr3500-v1|\
147 tplink
,tl-wr842n-v1|\
148 tplink
,tl-wr842n-v3|\
150 ucidef_set_interface_wan
"eth1"
151 ucidef_add_switch
"switch0" \
152 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
154 buffalo
,wzr-hp-g302h-a1a0
)
155 ucidef_add_switch
"switch0" \
156 "0@eth0" "1:lan:1" "3:lan:4" "4:lan:3" "5:lan:2" "2:wan"
158 comfast
,cf-e110n-v2|\
159 comfast
,cf-e120a-v3|\
160 comfast
,cf-e314n-v2|\
163 openmesh
,om2p-hs-v4|\
176 ucidef_set_interfaces_lan_wan
"eth1" "eth0"
179 ucidef_set_interface_wan
"eth1"
180 ucidef_add_switch
"switch0" \
181 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
183 comfast
,cf-wr650ac-v1|\
184 comfast
,cf-wr650ac-v2|\
186 ucidef_add_switch
"switch0" \
187 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
191 ucidef_add_switch
"switch0" \
192 "0@eth0" "3:lan" "2:wan"
195 ucidef_add_switch
"switch0" \
196 "0@eth0" "2:wan" "3:lan" "4:lan"
199 ucidef_add_switch
"switch0" "0@eth0" "2:lan" "3:wan" "6@eth1"
202 ucidef_add_switch
"switch0" \
203 "0@eth0" "1:lan:2" "2:lan:1"
206 ucidef_set_interface_wan
"eth1"
207 ucidef_add_switch
"switch0" \
208 "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
217 tplink
,archer-c2-v3|\
218 tplink
,tl-wr1043nd-v4|\
219 tplink
,tl-wr1043n-v5
)
220 ucidef_add_switch
"switch0" \
221 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
223 elecom
,wrc-1750ghbk2-i|\
224 elecom
,wrc-300ghbk2-i|\
226 ucidef_add_switch
"switch0" \
227 "0@eth0" "2:lan:4" "3:lan:3" "4:lan:2" "5:lan:1" "1:wan"
229 embeddedwireless
,dorin
)
230 ucidef_add_switch
"switch0" \
231 "0@eth0" "1:wan" "2:lan:3" "3:lan:2"
233 engenius
,ens202ext-v1
)
234 ucidef_set_interface_wan
"eth1"
235 ucidef_add_switch
"switch0" \
239 ucidef_set_interface_lan
"eth0 eth1" "dhcp"
242 ucidef_set_interface_lan
"eth0" "dhcp"
245 ucidef_set_interface_wan
"eth1"
246 ucidef_add_switch
"switch0" \
247 "0@eth0" "1:lan" "2:lan"
250 iodata
,wn-ac1167dgr|\
251 iodata
,wn-ac1600dgr|\
252 iodata
,wn-ac1600dgr2|\
257 ucidef_add_switch
"switch0" \
258 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
260 librerouter
,librerouter-v1
)
261 ucidef_add_switch
"switch0" \
262 "0@eth0" "5:wan" "6@eth1" "4:lan"
265 tplink
,archer-a7-v5|\
266 tplink
,archer-c6-v2|\
267 tplink
,archer-c6-v2-us|\
268 tplink
,archer-c7-v4|\
269 tplink
,archer-c7-v5|\
270 tplink
,tl-wdr3600-v1|\
271 tplink
,tl-wdr4300-v1|\
272 tplink
,tl-wdr4300-v1-il|\
273 tplink
,tl-wdr4310-v1
)
274 ucidef_add_switch
"switch0" \
275 "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
278 qxwlan
,e1700ac-v2-8m|\
279 qxwlan
,e1700ac-v2-16m|\
281 qxwlan
,e750g-v8-16m|\
282 ubnt
,nanobeam-ac-gen2|\
283 ubnt
,nanostation-ac|\
286 ucidef_add_switch
"switch0" \
287 "0@eth0" "2:lan" "3:wan"
290 ucidef_add_switch
"switch0" \
291 "0@eth0" "2:lan" "3:lan" "4:lan" "1:wan"
294 netgear
,wndr3700-v2|\
299 ucidef_set_interface_wan
"eth1"
300 ucidef_add_switch
"switch0" \
301 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5u@eth0"
302 ucidef_add_switch_attr
"switch0" "blinkrate" 2
303 ucidef_add_switch_port_attr
"switch0" 1 led
6
304 ucidef_add_switch_port_attr
"switch0" 2 led
9
305 ucidef_add_switch_port_attr
"switch0" 5 led
2
309 ucidef_set_interface_wan
"eth0"
310 ucidef_add_switch
"switch0" \
311 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
314 ucidef_add_switch
"switch0" \
315 "0@eth0" "3:lan:1" "5:lan:2" "4:wan"
318 ucidef_set_interface_wan
"eth1"
319 ucidef_add_switch
"switch0" \
320 "0@eth0" "2:lan" "3:lan"
324 ucidef_add_switch
"switch0" \
325 "0@eth1" "4:lan" "5:lan" "6@eth0" "3:wan"
328 ucidef_add_switch
"switch0" \
329 "0@eth0" "1:lan" "2:lan" "3:wan"
332 teltonika
,rut955-h7v3c0
)
333 ucidef_set_interface_wan
"eth1"
334 ucidef_add_switch
"switch0" \
335 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1"
337 tplink
,archer-d50-v1
)
338 ucidef_add_switch
"switch0" \
339 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "1:wan"
341 tplink
,archer-d7-v1|\
342 tplink
,archer-d7b-v1
)
343 ucidef_add_switch
"switch0" \
344 "0@eth1" "3:lan:3" "4:lan:2" "5:lan:1" "6@eth0" "2:wan:4" "1:wan:5"
346 tplink
,eap225-wall-v2
)
347 ucidef_add_switch
"switch0" \
348 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
351 ucidef_add_switch
"switch0" \
352 "0@eth0" "2:lan:1" "5:lan:2"
355 ucidef_set_interfaces_lan_wan
"eth0.1 eth1" "usb0"
356 ucidef_add_switch
"switch0" \
357 "0@eth0" "1:lan:1" "2:lan:3" "3:lan:2"
359 tplink
,tl-wpa8630-v1|\
360 tplink
,tl-wpa8630p-v2-int|\
361 tplink
,tl-wpa8630p-v2.0
-eu|\
362 tplink
,tl-wpa8630p-v2.1
-eu)
363 # port 5 (internal) is the power-line port
364 ucidef_add_switch
"switch0" \
365 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "5:lan:4"
368 ucidef_set_interface_wan
"eth1"
369 ucidef_add_switch
"switch0" \
370 "0@eth0" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
372 tplink
,tl-wr1043nd-v1
)
373 ucidef_add_switch
"switch0" \
374 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
376 tplink
,tl-wr1043nd-v2|\
377 tplink
,tl-wr1043nd-v3|\
378 tplink
,tl-wr1045nd-v2
)
379 ucidef_add_switch
"switch0" \
380 "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
383 ucidef_add_switch
"switch0" \
384 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
387 ucidef_add_switch
"switch0" \
388 "0@eth0" "2:lan:1" "3:lan:2" "5:lan:3" "4:wan"
391 ucidef_set_interface_wan
"eth1"
392 ucidef_add_switch
"switch0" \
393 "0@eth0" "2:lan:1" "3:lan:3" "4:lan:2"
396 ucidef_set_interface_wan
"eth1"
397 ucidef_add_switch
"switch0" \
398 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:lan"
401 ucidef_set_interface_wan
"eth1"
402 ucidef_add_switch
"switch0" \
403 "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"
405 ubnt
,routerstation-pro
)
406 ucidef_set_interface_wan
"eth0"
407 ucidef_add_switch
"switch0" \
408 "0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
410 ubnt
,nanostation-m-xw
)
411 ucidef_add_switch
"switch0" \
412 "0@eth0" "5:lan" "1:wan"
414 ubnt
,unifiac-mesh-pro|\
416 ucidef_add_switch
"switch0" \
417 "0@eth0" "2:lan:1" "3:lan:2"
420 ucidef_add_switch
"switch0" \
421 "0@eth0" "1:lan" "2:lan"
425 ucidef_set_interface_wan
"eth1"
426 ucidef_add_switch
"switch0" \
427 "0@eth0" "3:lan:1" "4:lan:2"
430 ucidef_set_interfaces_lan_wan
"eth0" "eth1"
442 lan_mac
=$
(mtd_get_mac_binary
"Board data" 2)
445 alfa-network
,ap121f|\
446 alfa-network
,ap121fe|\
449 alfa-network
,pi-wifi4|\
452 engenius
,ens202ext-v1
)
453 label_mac
=$
(mtd_get_mac_binary art
0x1002)
456 base_mac
=$
(mtd_get_mac_binary art
0x1002)
457 lan_mac
=$
(macaddr_setbit
$base_mac 29)
458 [ $lan_mac = $base_mac ] && lan_mac
=$
(macaddr_unsetbit
$base_mac 29)
463 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
466 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
467 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
470 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
471 wan_mac
=$
(fritz_tffs
-n macb
-i $
(find_mtd_part
"tffs (1)"))
475 wan_mac
=$
(mtd_get_mac_binary u-boot
0x2e018)
478 label_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" 3)
483 lan_mac
=$
(mtd_get_mac_text
"mp" 0x1)
490 lan_mac
=$
(mtd_get_mac_ascii bdcfg
"lanmac")
494 label_mac
=$
(mtd_get_mac_ascii bdcfg
"wlanmac")
497 lan_mac
=$
(mtd_get_mac_text
"caldata" 0xffa0)
498 wan_mac
=$
(mtd_get_mac_text
"caldata" 0xffb4)
501 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
505 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
506 wan_mac
=$
(mtd_get_mac_text
"mac" 0x18)
512 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
513 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
519 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
520 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
522 elecom
,wrc-1750ghbk2-i|\
523 elecom
,wrc-300ghbk2-i
)
524 wan_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" -2)
528 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
532 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
533 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
536 lan_mac
=$
(mtd_get_mac_text
"u-boot-env" 0xe9)
537 eth1_mac
=$
(macaddr_add
"$lan_mac" 1)
538 ucidef_set_interface
"eth0" ifname
"eth0" protocol
"none" macaddr
"$lan_mac"
539 ucidef_set_interface
"eth1" ifname
"eth1" protocol
"none" macaddr
"$eth1_mac"
541 enterasys
,ws-ap3705i
)
542 label_mac
=$
(mtd_get_mac_ascii u-boot-env0 ethaddr
)
545 hak5
,packet-squirrel
)
546 label_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
549 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
550 wan_mac
=$
(macaddr_add
"$lan_mac" -1)
553 iodata
,wn-ac1167dgr|\
554 iodata
,wn-ac1600dgr|\
555 iodata
,wn-ac1600dgr2|\
557 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
558 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
562 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n alias
/ethaddr
)
563 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
566 tplink
,tl-wdr3600-v1|\
567 tplink
,tl-wdr4300-v1|\
568 tplink
,tl-wdr4300-v1-il
)
569 base_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
570 wan_mac
=$
(macaddr_add
"$base_mac" 1)
573 lan_mac
=$
(mtd_get_mac_text board_data
0x280)
574 wan_mac
=$
(mtd_get_mac_text board_data
0x480)
578 netgear
,wndr3700-v2|\
582 lan_mac
=$
(macaddr_setbit_la
"$(mtd_get_mac_binary art 0x0)")
585 lan_mac
=$
(k2t_get_mac
"lan_mac")
586 wan_mac
=$
(k2t_get_mac
"wan_mac")
589 wan_mac
=$
(mtd_get_mac_binary factory
0x0)
590 lan_mac
=$
(macaddr_setbit_la
"$wan_mac")
594 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
595 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
598 tplink
,archer-a7-v5|\
599 tplink
,archer-c7-v4|\
600 tplink
,archer-c7-v5|\
601 tplink
,tl-wr1043nd-v4|\
602 tplink
,tl-wr1043n-v5
)
603 base_mac
=$
(mtd_get_mac_binary info
0x8)
604 wan_mac
=$
(macaddr_add
"$base_mac" 1)
607 lan_mac
=$
(mtd_get_mac_text mac
0x4)
608 wan_mac
=$
(mtd_get_mac_text mac
0x18)
612 ubnt
,bullet-m-ar7240|\
613 ubnt
,bullet-m-ar7241|\
615 ubnt
,nanostation-loco-m|\
621 label_mac
=$
(cat /sys
/class
/ieee80211
/phy
0/macaddress
)
623 ubnt
,litebeam-ac-gen2|\
624 ubnt
,nanobeam-ac-gen2|\
625 ubnt
,powerbeam-5ac-500|\
626 ubnt
,powerbeam-5ac-gen2
)
627 label_mac
=$
(mtd_get_mac_binary art
0x5006)
630 ubnt
,routerstation-pro
)
631 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n ar7100_esa
)
632 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
634 wd
,mynet-wifi-rangeextender
)
635 lan_mac
=$
(nvram get et0macaddr
)
638 label_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
642 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr
"lan" $lan_mac
643 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr
"wan" $wan_mac
644 [ -n "$label_mac" ] && ucidef_set_label_macaddr
$label_mac
649 ath79_setup_interfaces
$board
650 ath79_setup_macs
$board