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|\
32 enterasys
,ws-ap3705i|\
33 glinet
,gl-ar300m-lite|\
34 hak5
,wifi-pineapple-nano|\
51 tplink
,eap225-outdoor-v1|\
59 tplink
,tl-wr902ac-v1|\
60 ubnt
,bullet-m-ar7240|\
61 ubnt
,bullet-m-ar7241|\
64 ubnt
,litebeam-ac-gen2|\
67 ubnt
,nanostation-ac-loco|\
68 ubnt
,nanostation-loco-m|\
69 ubnt
,nanostation-loco-m-xw|\
71 ubnt
,powerbeam-5ac-500|\
72 ubnt
,powerbeam-5ac-gen2|\
79 wd
,mynet-wifi-rangeextender|\
81 ucidef_set_interface_lan
"eth0"
84 ucidef_set_interface_lan
"eth0 usb0"
91 ucidef_set_interface_lan
"eth0 eth1"
95 tplink
,archer-c58-v1|\
96 tplink
,archer-c59-v1|\
98 ucidef_set_interface_wan
"eth1"
99 ucidef_add_switch
"switch0" \
100 "0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
103 buffalo
,wzr-hp-g450h
)
104 ucidef_add_switch
"switch0" \
105 "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
109 ucidef_add_switch
"switch0" \
110 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth0"
113 buffalo
,wzr-hp-ag300h|\
114 tplink
,archer-c25-v1|\
115 tplink
,archer-c60-v1|\
116 tplink
,archer-c60-v2|\
117 tplink
,archer-c60-v3|\
118 tplink
,tl-wdr3500-v1|\
119 tplink
,tl-wr842n-v1|\
120 tplink
,tl-wr842n-v3|\
122 ucidef_set_interface_wan
"eth1"
123 ucidef_add_switch
"switch0" \
124 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
126 buffalo
,wzr-hp-g302h-a1a0
)
127 ucidef_add_switch
"switch0" \
128 "0@eth0" "1:lan:1" "3:lan:4" "4:lan:3" "5:lan:2" "2:wan"
130 comfast
,cf-e110n-v2|\
131 comfast
,cf-e120a-v3|\
132 comfast
,cf-e314n-v2|\
144 ucidef_set_interfaces_lan_wan
"eth1" "eth0"
147 ucidef_set_interface_wan
"eth1"
148 ucidef_add_switch
"switch0" \
149 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
151 comfast
,cf-wr650ac-v1|\
152 comfast
,cf-wr650ac-v2|\
154 ucidef_add_switch
"switch0" \
155 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
159 ucidef_add_switch
"switch0" \
160 "0@eth0" "3:lan" "2:wan"
163 ucidef_add_switch
"switch0" \
164 "0@eth0" "2:wan" "3:lan" "4:lan"
167 ucidef_add_switch
"switch0" "0@eth0" "2:lan" "3:wan" "6@eth1"
170 ucidef_add_switch
"switch0" \
171 "0@eth0" "1:lan:2" "2:lan:1"
174 ucidef_set_interface_wan
"eth1"
175 ucidef_add_switch
"switch0" \
176 "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
185 tplink
,archer-c2-v3|\
186 tplink
,tl-wr1043nd-v4|\
187 tplink
,tl-wr1043n-v5
)
188 ucidef_add_switch
"switch0" \
189 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
191 elecom
,wrc-1750ghbk2-i|\
192 elecom
,wrc-300ghbk2-i|\
194 ucidef_add_switch
"switch0" \
195 "0@eth0" "2:lan:4" "3:lan:3" "4:lan:2" "5:lan:1" "1:wan"
197 embeddedwireless
,dorin
)
198 ucidef_add_switch
"switch0" \
199 "0@eth0" "1:wan" "2:lan:3" "3:lan:2"
202 ucidef_set_interface_wan
"eth0"
203 ucidef_add_switch
"switch0" \
206 engenius
,ens202ext-v1
)
207 ucidef_set_interface_wan
"eth1"
208 ucidef_add_switch
"switch0" \
212 ucidef_set_interface_lan
"eth0 eth1" "dhcp"
215 ucidef_set_interface_lan
"eth0" "dhcp"
218 ucidef_set_interface_wan
"eth1"
219 ucidef_add_switch
"switch0" \
220 "0@eth0" "1:lan" "2:lan"
223 iodata
,wn-ac1167dgr|\
224 iodata
,wn-ac1600dgr|\
225 iodata
,wn-ac1600dgr2|\
230 ucidef_add_switch
"switch0" \
231 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
233 librerouter
,librerouter-v1
)
234 ucidef_add_switch
"switch0" \
235 "0@eth0" "5:wan" "6@eth1" "4:lan"
238 tplink
,archer-a7-v5|\
239 tplink
,archer-c6-v2|\
240 tplink
,archer-c6-v2-us|\
241 tplink
,archer-c7-v4|\
242 tplink
,archer-c7-v5|\
243 tplink
,tl-wdr3600-v1|\
244 tplink
,tl-wdr4300-v1|\
245 tplink
,tl-wdr4300-v1-il|\
246 tplink
,tl-wdr4310-v1
)
247 ucidef_add_switch
"switch0" \
248 "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
251 qxwlan
,e1700ac-v2-8m|\
252 qxwlan
,e1700ac-v2-16m|\
254 qxwlan
,e750g-v8-16m|\
255 ubnt
,nanobeam-ac-gen2|\
256 ubnt
,nanostation-ac|\
259 ucidef_add_switch
"switch0" \
260 "0@eth0" "2:lan" "3:wan"
263 ucidef_add_switch
"switch0" \
264 "0@eth0" "2:lan" "3:lan" "4:lan" "1:wan"
267 netgear
,wndr3700-v2|\
272 ucidef_set_interface_wan
"eth1"
273 ucidef_add_switch
"switch0" \
274 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5u@eth0"
275 ucidef_add_switch_attr
"switch0" "blinkrate" 2
276 ucidef_add_switch_port_attr
"switch0" 1 led
6
277 ucidef_add_switch_port_attr
"switch0" 2 led
9
278 ucidef_add_switch_port_attr
"switch0" 5 led
2
282 ucidef_set_interface_wan
"eth0"
283 ucidef_add_switch
"switch0" \
284 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
287 ucidef_add_switch
"switch0" \
288 "0@eth0" "3:lan:1" "5:lan:2" "4:wan"
291 ucidef_set_interface_wan
"eth1"
292 ucidef_add_switch
"switch0" \
293 "0@eth0" "2:lan" "3:lan"
297 ucidef_add_switch
"switch0" \
298 "0@eth1" "4:lan" "5:lan" "6@eth0" "3:wan"
301 ucidef_add_switch
"switch0" \
302 "0@eth0" "1:lan" "2:lan" "3:wan"
305 teltonika
,rut955-h7v3c0
)
306 ucidef_set_interface_wan
"eth1"
307 ucidef_add_switch
"switch0" \
308 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1"
310 tplink
,archer-c5-v1|\
311 tplink
,archer-c7-v1|\
312 tplink
,archer-c7-v2|\
313 tplink
,tl-wdr4900-v2
)
314 ucidef_add_switch
"switch0" \
315 "0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
317 tplink
,archer-d50-v1
)
318 ucidef_add_switch
"switch0" \
319 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "1:wan"
321 tplink
,archer-d7-v1|\
322 tplink
,archer-d7b-v1
)
323 ucidef_add_switch
"switch0" \
324 "0@eth1" "3:lan:3" "4:lan:2" "5:lan:1" "6@eth0" "2:wan:4" "1:wan:5"
326 tplink
,eap225-wall-v2
)
327 ucidef_add_switch
"switch0" \
328 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
331 ucidef_add_switch
"switch0" \
332 "0@eth0" "2:lan:1" "5:lan:2"
335 ucidef_set_interfaces_lan_wan
"eth0.1 eth1" "usb0"
336 ucidef_add_switch
"switch0" \
337 "0@eth0" "1:lan:1" "2:lan:3" "3:lan:2"
339 tplink
,tl-wpa8630-v1|\
340 tplink
,tl-wpa8630p-v2-int|\
341 tplink
,tl-wpa8630p-v2.0
-eu|\
342 tplink
,tl-wpa8630p-v2.1
-eu)
343 # port 5 (internal) is the power-line port
344 ucidef_add_switch
"switch0" \
345 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "5:lan:4"
348 ucidef_set_interface_wan
"eth1"
349 ucidef_add_switch
"switch0" \
350 "0@eth0" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
352 tplink
,tl-wr1043nd-v1
)
353 ucidef_add_switch
"switch0" \
354 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
356 tplink
,tl-wr1043nd-v2|\
357 tplink
,tl-wr1043nd-v3|\
358 tplink
,tl-wr1045nd-v2
)
359 ucidef_add_switch
"switch0" \
360 "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
363 ucidef_add_switch
"switch0" \
364 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
367 ucidef_set_interface_wan
"eth1"
368 ucidef_add_switch
"switch0" \
369 "0@eth0" "2:lan:1" "3:lan:3" "4:lan:2"
372 ucidef_set_interface_wan
"eth1"
373 ucidef_add_switch
"switch0" \
374 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:lan"
377 ucidef_set_interface_wan
"eth1"
378 ucidef_add_switch
"switch0" \
379 "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"
381 ubnt
,routerstation-pro
)
382 ucidef_set_interface_wan
"eth0"
383 ucidef_add_switch
"switch0" \
384 "0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
386 ubnt
,nanostation-m-xw
)
387 ucidef_add_switch
"switch0" \
388 "0@eth0" "5:lan" "1:wan"
390 ubnt
,unifiac-mesh-pro|\
392 ucidef_add_switch
"switch0" \
393 "0@eth0" "2:lan:1" "3:lan:2"
396 ucidef_add_switch
"switch0" \
397 "0@eth0" "1:lan" "2:lan"
401 ucidef_set_interface_wan
"eth1"
402 ucidef_add_switch
"switch0" \
403 "0@eth0" "3:lan:1" "4:lan:2"
406 ucidef_set_interfaces_lan_wan
"eth0" "eth1"
418 lan_mac
=$
(mtd_get_mac_binary
"Board data" 2)
421 alfa-network
,ap121f|\
422 alfa-network
,ap121fe|\
425 alfa-network
,pi-wifi4|\
427 engenius
,ens202ext-v1
)
428 label_mac
=$
(mtd_get_mac_binary art
0x1002)
431 base_mac
=$
(mtd_get_mac_binary art
0x1002)
432 lan_mac
=$
(macaddr_setbit
$base_mac 29)
433 [ $lan_mac = $base_mac ] && lan_mac
=$
(macaddr_unsetbit
$base_mac 29)
438 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
441 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
442 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
445 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
446 wan_mac
=$
(fritz_tffs
-n macb
-i $
(find_mtd_part
"tffs (1)"))
450 wan_mac
=$
(mtd_get_mac_binary u-boot
0x2e018)
453 label_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" 3)
458 lan_mac
=$
(mtd_get_mac_text
"mp" 0x1)
462 label_mac
=$
(mtd_get_mac_ascii bdcfg
"wlanmac")
465 lan_mac
=$
(mtd_get_mac_text
"caldata" 0xffa0)
466 wan_mac
=$
(mtd_get_mac_text
"caldata" 0xffb4)
469 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
473 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
474 wan_mac
=$
(mtd_get_mac_text
"mac" 0x18)
480 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
481 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
487 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
488 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
490 elecom
,wrc-1750ghbk2-i|\
491 elecom
,wrc-300ghbk2-i
)
492 wan_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" -2)
495 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
496 label_mac
=$
(mtd_get_mac_ascii u-boot-env athaddr
)
500 ubnt
,bullet-m-ar7240|\
501 ubnt
,bullet-m-ar7241|\
503 ubnt
,nanostation-loco-m|\
509 label_mac
=$
(cat /sys
/class
/ieee80211
/phy
0/macaddress
)
512 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
513 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
516 lan_mac
=$
(mtd_get_mac_text
"u-boot-env" 0xe9)
517 eth1_mac
=$
(macaddr_add
"$lan_mac" 1)
518 ucidef_set_interface
"eth0" ifname
"eth0" protocol
"none" macaddr
"$lan_mac"
519 ucidef_set_interface
"eth1" ifname
"eth1" protocol
"none" macaddr
"$eth1_mac"
521 enterasys
,ws-ap3705i
)
522 label_mac
=$
(mtd_get_mac_ascii u-boot-env0 ethaddr
)
525 hak5
,packet-squirrel
)
526 label_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
529 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
530 wan_mac
=$
(macaddr_add
"$lan_mac" -1)
533 iodata
,wn-ac1167dgr|\
534 iodata
,wn-ac1600dgr|\
535 iodata
,wn-ac1600dgr2|\
537 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
538 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
542 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n alias
/ethaddr
)
543 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
546 tplink
,tl-wdr3600-v1|\
547 tplink
,tl-wdr4300-v1|\
548 tplink
,tl-wdr4300-v1-il
)
549 base_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
550 wan_mac
=$
(macaddr_add
"$base_mac" 1)
553 lan_mac
=$
(mtd_get_mac_text board_data
0x280)
554 wan_mac
=$
(mtd_get_mac_text board_data
0x480)
558 netgear
,wndr3700-v2|\
562 lan_mac
=$
(macaddr_setbit_la
"$(mtd_get_mac_binary art 0x0)")
565 lan_mac
=$
(k2t_get_mac
"lan_mac")
566 wan_mac
=$
(k2t_get_mac
"wan_mac")
569 wan_mac
=$
(mtd_get_mac_binary factory
0x0)
570 lan_mac
=$
(macaddr_setbit_la
"$wan_mac")
574 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
575 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
578 tplink
,archer-a7-v5|\
579 tplink
,archer-c7-v4|\
580 tplink
,archer-c7-v5|\
581 tplink
,tl-wr1043nd-v4|\
582 tplink
,tl-wr1043n-v5
)
583 base_mac
=$
(mtd_get_mac_binary info
0x8)
584 wan_mac
=$
(macaddr_add
"$base_mac" 1)
587 lan_mac
=$
(mtd_get_mac_text mac
0x4)
588 wan_mac
=$
(mtd_get_mac_text mac
0x18)
591 ubnt
,litebeam-ac-gen2|\
592 ubnt
,nanobeam-ac-gen2|\
593 ubnt
,powerbeam-5ac-500|\
594 ubnt
,powerbeam-5ac-gen2
)
595 label_mac
=$
(mtd_get_mac_binary art
0x5006)
598 ubnt
,routerstation-pro
)
599 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n ar7100_esa
)
600 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
602 wd
,mynet-wifi-rangeextender
)
603 lan_mac
=$
(nvram get et0macaddr
)
606 label_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
610 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr
"lan" $lan_mac
611 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr
"wan" $wan_mac
612 [ -n "$label_mac" ] && ucidef_set_label_macaddr
$label_mac
617 ath79_setup_interfaces
$board
618 ath79_setup_macs
$board