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|\
37 enterasys
,ws-ap3705i|\
38 glinet
,gl-ar300m-lite|\
40 hak5
,wifi-pineapple-nano|\
57 tplink
,eap225-outdoor-v1|\
65 tplink
,tl-wr902ac-v1|\
66 ubnt
,bullet-m-ar7240|\
67 ubnt
,bullet-m-ar7241|\
70 ubnt
,litebeam-ac-gen2|\
73 ubnt
,nanostation-ac-loco|\
74 ubnt
,nanostation-loco-m|\
75 ubnt
,nanostation-loco-m-xw|\
77 ubnt
,powerbeam-5ac-500|\
78 ubnt
,powerbeam-5ac-gen2|\
85 wd
,mynet-wifi-rangeextender|\
87 ucidef_set_interface_lan
"eth0"
90 ucidef_add_switch
"switch0" \
91 "0@eth0" "2:wan" "3:lan" "6@eth1"
94 ucidef_set_interface_lan
"eth0 usb0"
101 ucidef_set_interface_lan
"eth0 eth1"
105 tplink
,archer-c58-v1|\
106 tplink
,archer-c59-v1|\
107 tplink
,archer-c59-v2
)
108 ucidef_set_interface_wan
"eth1"
109 ucidef_add_switch
"switch0" \
110 "0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
114 tplink
,archer-c5-v1|\
115 tplink
,archer-c7-v1|\
116 tplink
,archer-c7-v2|\
117 tplink
,tl-wdr4900-v2|\
118 tplink
,tl-wdr7500-v3
)
119 ucidef_add_switch
"switch0" \
120 "0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
123 buffalo
,wzr-hp-g450h
)
124 ucidef_add_switch
"switch0" \
125 "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
129 ucidef_add_switch
"switch0" \
130 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth0"
133 buffalo
,wzr-hp-ag300h|\
134 tplink
,archer-c25-v1|\
135 tplink
,archer-c60-v1|\
136 tplink
,archer-c60-v2|\
137 tplink
,archer-c60-v3|\
138 tplink
,tl-wdr3500-v1|\
139 tplink
,tl-wr842n-v1|\
140 tplink
,tl-wr842n-v3|\
142 ucidef_set_interface_wan
"eth1"
143 ucidef_add_switch
"switch0" \
144 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
146 buffalo
,wzr-hp-g302h-a1a0
)
147 ucidef_add_switch
"switch0" \
148 "0@eth0" "1:lan:1" "3:lan:4" "4:lan:3" "5:lan:2" "2:wan"
150 comfast
,cf-e110n-v2|\
151 comfast
,cf-e120a-v3|\
152 comfast
,cf-e314n-v2|\
166 ucidef_set_interfaces_lan_wan
"eth1" "eth0"
169 ucidef_set_interface_wan
"eth1"
170 ucidef_add_switch
"switch0" \
171 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
173 comfast
,cf-wr650ac-v1|\
174 comfast
,cf-wr650ac-v2|\
176 ucidef_add_switch
"switch0" \
177 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
181 ucidef_add_switch
"switch0" \
182 "0@eth0" "3:lan" "2:wan"
185 ucidef_add_switch
"switch0" \
186 "0@eth0" "2:wan" "3:lan" "4:lan"
189 ucidef_add_switch
"switch0" "0@eth0" "2:lan" "3:wan" "6@eth1"
192 ucidef_add_switch
"switch0" \
193 "0@eth0" "1:lan:2" "2:lan:1"
196 ucidef_set_interface_wan
"eth1"
197 ucidef_add_switch
"switch0" \
198 "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
207 tplink
,archer-c2-v3|\
208 tplink
,tl-wr1043nd-v4|\
209 tplink
,tl-wr1043n-v5
)
210 ucidef_add_switch
"switch0" \
211 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
213 elecom
,wrc-1750ghbk2-i|\
214 elecom
,wrc-300ghbk2-i|\
216 ucidef_add_switch
"switch0" \
217 "0@eth0" "2:lan:4" "3:lan:3" "4:lan:2" "5:lan:1" "1:wan"
219 embeddedwireless
,dorin
)
220 ucidef_add_switch
"switch0" \
221 "0@eth0" "1:wan" "2:lan:3" "3:lan:2"
224 ucidef_set_interface_wan
"eth0"
225 ucidef_add_switch
"switch0" \
228 engenius
,ens202ext-v1
)
229 ucidef_set_interface_wan
"eth1"
230 ucidef_add_switch
"switch0" \
234 ucidef_set_interface_lan
"eth0 eth1" "dhcp"
237 ucidef_set_interface_lan
"eth0" "dhcp"
240 ucidef_set_interface_wan
"eth1"
241 ucidef_add_switch
"switch0" \
242 "0@eth0" "1:lan" "2:lan"
245 iodata
,wn-ac1167dgr|\
246 iodata
,wn-ac1600dgr|\
247 iodata
,wn-ac1600dgr2|\
252 ucidef_add_switch
"switch0" \
253 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
255 librerouter
,librerouter-v1
)
256 ucidef_add_switch
"switch0" \
257 "0@eth0" "5:wan" "6@eth1" "4:lan"
260 tplink
,archer-a7-v5|\
261 tplink
,archer-c6-v2|\
262 tplink
,archer-c6-v2-us|\
263 tplink
,archer-c7-v4|\
264 tplink
,archer-c7-v5|\
265 tplink
,tl-wdr3600-v1|\
266 tplink
,tl-wdr4300-v1|\
267 tplink
,tl-wdr4300-v1-il|\
268 tplink
,tl-wdr4310-v1
)
269 ucidef_add_switch
"switch0" \
270 "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
273 qxwlan
,e1700ac-v2-8m|\
274 qxwlan
,e1700ac-v2-16m|\
276 qxwlan
,e750g-v8-16m|\
277 ubnt
,nanobeam-ac-gen2|\
278 ubnt
,nanostation-ac|\
281 ucidef_add_switch
"switch0" \
282 "0@eth0" "2:lan" "3:wan"
285 ucidef_add_switch
"switch0" \
286 "0@eth0" "2:lan" "3:lan" "4:lan" "1:wan"
289 netgear
,wndr3700-v2|\
294 ucidef_set_interface_wan
"eth1"
295 ucidef_add_switch
"switch0" \
296 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5u@eth0"
297 ucidef_add_switch_attr
"switch0" "blinkrate" 2
298 ucidef_add_switch_port_attr
"switch0" 1 led
6
299 ucidef_add_switch_port_attr
"switch0" 2 led
9
300 ucidef_add_switch_port_attr
"switch0" 5 led
2
304 ucidef_set_interface_wan
"eth0"
305 ucidef_add_switch
"switch0" \
306 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
309 ucidef_add_switch
"switch0" \
310 "0@eth0" "3:lan:1" "5:lan:2" "4:wan"
313 ucidef_set_interface_wan
"eth1"
314 ucidef_add_switch
"switch0" \
315 "0@eth0" "2:lan" "3:lan"
319 ucidef_add_switch
"switch0" \
320 "0@eth1" "4:lan" "5:lan" "6@eth0" "3:wan"
323 ucidef_add_switch
"switch0" \
324 "0@eth0" "1:lan" "2:lan" "3:wan"
327 teltonika
,rut955-h7v3c0
)
328 ucidef_set_interface_wan
"eth1"
329 ucidef_add_switch
"switch0" \
330 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1"
332 tplink
,archer-d50-v1
)
333 ucidef_add_switch
"switch0" \
334 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "1:wan"
336 tplink
,archer-d7-v1|\
337 tplink
,archer-d7b-v1
)
338 ucidef_add_switch
"switch0" \
339 "0@eth1" "3:lan:3" "4:lan:2" "5:lan:1" "6@eth0" "2:wan:4" "1:wan:5"
341 tplink
,eap225-wall-v2
)
342 ucidef_add_switch
"switch0" \
343 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
346 ucidef_add_switch
"switch0" \
347 "0@eth0" "2:lan:1" "5:lan:2"
350 ucidef_set_interfaces_lan_wan
"eth0.1 eth1" "usb0"
351 ucidef_add_switch
"switch0" \
352 "0@eth0" "1:lan:1" "2:lan:3" "3:lan:2"
354 tplink
,tl-wpa8630-v1|\
355 tplink
,tl-wpa8630p-v2-int|\
356 tplink
,tl-wpa8630p-v2.0
-eu|\
357 tplink
,tl-wpa8630p-v2.1
-eu)
358 # port 5 (internal) is the power-line port
359 ucidef_add_switch
"switch0" \
360 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "5:lan:4"
363 ucidef_set_interface_wan
"eth1"
364 ucidef_add_switch
"switch0" \
365 "0@eth0" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
367 tplink
,tl-wr1043nd-v1
)
368 ucidef_add_switch
"switch0" \
369 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
371 tplink
,tl-wr1043nd-v2|\
372 tplink
,tl-wr1043nd-v3|\
373 tplink
,tl-wr1045nd-v2
)
374 ucidef_add_switch
"switch0" \
375 "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
378 ucidef_add_switch
"switch0" \
379 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
382 ucidef_add_switch
"switch0" \
383 "0@eth0" "2:lan:1" "3:lan:2" "5:lan:3" "4:wan"
386 ucidef_set_interface_wan
"eth1"
387 ucidef_add_switch
"switch0" \
388 "0@eth0" "2:lan:1" "3:lan:3" "4:lan:2"
391 ucidef_set_interface_wan
"eth1"
392 ucidef_add_switch
"switch0" \
393 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:lan"
396 ucidef_set_interface_wan
"eth1"
397 ucidef_add_switch
"switch0" \
398 "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"
400 ubnt
,routerstation-pro
)
401 ucidef_set_interface_wan
"eth0"
402 ucidef_add_switch
"switch0" \
403 "0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
405 ubnt
,nanostation-m-xw
)
406 ucidef_add_switch
"switch0" \
407 "0@eth0" "5:lan" "1:wan"
409 ubnt
,unifiac-mesh-pro|\
411 ucidef_add_switch
"switch0" \
412 "0@eth0" "2:lan:1" "3:lan:2"
415 ucidef_add_switch
"switch0" \
416 "0@eth0" "1:lan" "2:lan"
420 ucidef_set_interface_wan
"eth1"
421 ucidef_add_switch
"switch0" \
422 "0@eth0" "3:lan:1" "4:lan:2"
425 ucidef_set_interfaces_lan_wan
"eth0" "eth1"
437 lan_mac
=$
(mtd_get_mac_binary
"Board data" 2)
440 alfa-network
,ap121f|\
441 alfa-network
,ap121fe|\
444 alfa-network
,pi-wifi4|\
447 engenius
,ens202ext-v1
)
448 label_mac
=$
(mtd_get_mac_binary art
0x1002)
451 base_mac
=$
(mtd_get_mac_binary art
0x1002)
452 lan_mac
=$
(macaddr_setbit
$base_mac 29)
453 [ $lan_mac = $base_mac ] && lan_mac
=$
(macaddr_unsetbit
$base_mac 29)
458 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
461 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
462 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
465 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
466 wan_mac
=$
(fritz_tffs
-n macb
-i $
(find_mtd_part
"tffs (1)"))
470 wan_mac
=$
(mtd_get_mac_binary u-boot
0x2e018)
473 label_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" 3)
478 lan_mac
=$
(mtd_get_mac_text
"mp" 0x1)
482 lan_mac
=$
(mtd_get_mac_ascii bdcfg
"lanmac")
486 label_mac
=$
(mtd_get_mac_ascii bdcfg
"wlanmac")
489 lan_mac
=$
(mtd_get_mac_text
"caldata" 0xffa0)
490 wan_mac
=$
(mtd_get_mac_text
"caldata" 0xffb4)
493 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
497 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
498 wan_mac
=$
(mtd_get_mac_text
"mac" 0x18)
504 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
505 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
511 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
512 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
514 elecom
,wrc-1750ghbk2-i|\
515 elecom
,wrc-300ghbk2-i
)
516 wan_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" -2)
520 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
525 ubnt
,bullet-m-ar7240|\
526 ubnt
,bullet-m-ar7241|\
528 ubnt
,nanostation-loco-m|\
534 label_mac
=$
(cat /sys
/class
/ieee80211
/phy
0/macaddress
)
537 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
538 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
541 lan_mac
=$
(mtd_get_mac_text
"u-boot-env" 0xe9)
542 eth1_mac
=$
(macaddr_add
"$lan_mac" 1)
543 ucidef_set_interface
"eth0" ifname
"eth0" protocol
"none" macaddr
"$lan_mac"
544 ucidef_set_interface
"eth1" ifname
"eth1" protocol
"none" macaddr
"$eth1_mac"
546 enterasys
,ws-ap3705i
)
547 label_mac
=$
(mtd_get_mac_ascii u-boot-env0 ethaddr
)
550 hak5
,packet-squirrel
)
551 label_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
554 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
555 wan_mac
=$
(macaddr_add
"$lan_mac" -1)
558 iodata
,wn-ac1167dgr|\
559 iodata
,wn-ac1600dgr|\
560 iodata
,wn-ac1600dgr2|\
562 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
563 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
567 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n alias
/ethaddr
)
568 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
571 tplink
,tl-wdr3600-v1|\
572 tplink
,tl-wdr4300-v1|\
573 tplink
,tl-wdr4300-v1-il
)
574 base_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
575 wan_mac
=$
(macaddr_add
"$base_mac" 1)
578 lan_mac
=$
(mtd_get_mac_text board_data
0x280)
579 wan_mac
=$
(mtd_get_mac_text board_data
0x480)
583 netgear
,wndr3700-v2|\
587 lan_mac
=$
(macaddr_setbit_la
"$(mtd_get_mac_binary art 0x0)")
590 lan_mac
=$
(k2t_get_mac
"lan_mac")
591 wan_mac
=$
(k2t_get_mac
"wan_mac")
594 wan_mac
=$
(mtd_get_mac_binary factory
0x0)
595 lan_mac
=$
(macaddr_setbit_la
"$wan_mac")
599 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
600 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
603 tplink
,archer-a7-v5|\
604 tplink
,archer-c7-v4|\
605 tplink
,archer-c7-v5|\
606 tplink
,tl-wr1043nd-v4|\
607 tplink
,tl-wr1043n-v5
)
608 base_mac
=$
(mtd_get_mac_binary info
0x8)
609 wan_mac
=$
(macaddr_add
"$base_mac" 1)
612 lan_mac
=$
(mtd_get_mac_text mac
0x4)
613 wan_mac
=$
(mtd_get_mac_text mac
0x18)
616 ubnt
,litebeam-ac-gen2|\
617 ubnt
,nanobeam-ac-gen2|\
618 ubnt
,powerbeam-5ac-500|\
619 ubnt
,powerbeam-5ac-gen2
)
620 label_mac
=$
(mtd_get_mac_binary art
0x5006)
623 ubnt
,routerstation-pro
)
624 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n ar7100_esa
)
625 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
627 wd
,mynet-wifi-rangeextender
)
628 lan_mac
=$
(nvram get et0macaddr
)
631 label_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
635 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr
"lan" $lan_mac
636 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr
"wan" $wan_mac
637 [ -n "$label_mac" ] && ucidef_set_label_macaddr
$label_mac
642 ath79_setup_interfaces
$board
643 ath79_setup_macs
$board