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|\
35 enterasys
,ws-ap3705i|\
36 glinet
,gl-ar300m-lite|\
38 hak5
,wifi-pineapple-nano|\
55 tplink
,eap225-outdoor-v1|\
63 tplink
,tl-wr902ac-v1|\
64 ubnt
,bullet-m-ar7240|\
65 ubnt
,bullet-m-ar7241|\
68 ubnt
,litebeam-ac-gen2|\
71 ubnt
,nanostation-ac-loco|\
72 ubnt
,nanostation-loco-m|\
73 ubnt
,nanostation-loco-m-xw|\
75 ubnt
,powerbeam-5ac-500|\
76 ubnt
,powerbeam-5ac-gen2|\
83 wd
,mynet-wifi-rangeextender|\
85 ucidef_set_interface_lan
"eth0"
88 ucidef_add_switch
"switch0" \
89 "0@eth0" "2:wan" "3:lan" "6@eth1"
92 ucidef_set_interface_lan
"eth0 usb0"
99 ucidef_set_interface_lan
"eth0 eth1"
103 tplink
,archer-c58-v1|\
104 tplink
,archer-c59-v1|\
105 tplink
,archer-c59-v2
)
106 ucidef_set_interface_wan
"eth1"
107 ucidef_add_switch
"switch0" \
108 "0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
112 tplink
,archer-c5-v1|\
113 tplink
,archer-c7-v1|\
114 tplink
,archer-c7-v2|\
115 tplink
,tl-wdr4900-v2|\
116 tplink
,tl-wdr7500-v3
)
117 ucidef_add_switch
"switch0" \
118 "0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
121 buffalo
,wzr-hp-g450h
)
122 ucidef_add_switch
"switch0" \
123 "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
127 ucidef_add_switch
"switch0" \
128 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth0"
131 buffalo
,wzr-hp-ag300h|\
132 tplink
,archer-c25-v1|\
133 tplink
,archer-c60-v1|\
134 tplink
,archer-c60-v2|\
135 tplink
,archer-c60-v3|\
136 tplink
,tl-wdr3500-v1|\
137 tplink
,tl-wr842n-v1|\
138 tplink
,tl-wr842n-v3|\
140 ucidef_set_interface_wan
"eth1"
141 ucidef_add_switch
"switch0" \
142 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
144 buffalo
,wzr-hp-g302h-a1a0
)
145 ucidef_add_switch
"switch0" \
146 "0@eth0" "1:lan:1" "3:lan:4" "4:lan:3" "5:lan:2" "2:wan"
148 comfast
,cf-e110n-v2|\
149 comfast
,cf-e120a-v3|\
150 comfast
,cf-e314n-v2|\
162 ucidef_set_interfaces_lan_wan
"eth1" "eth0"
165 ucidef_set_interface_wan
"eth1"
166 ucidef_add_switch
"switch0" \
167 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
169 comfast
,cf-wr650ac-v1|\
170 comfast
,cf-wr650ac-v2|\
172 ucidef_add_switch
"switch0" \
173 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
177 ucidef_add_switch
"switch0" \
178 "0@eth0" "3:lan" "2:wan"
181 ucidef_add_switch
"switch0" \
182 "0@eth0" "2:wan" "3:lan" "4:lan"
185 ucidef_add_switch
"switch0" "0@eth0" "2:lan" "3:wan" "6@eth1"
188 ucidef_add_switch
"switch0" \
189 "0@eth0" "1:lan:2" "2:lan:1"
192 ucidef_set_interface_wan
"eth1"
193 ucidef_add_switch
"switch0" \
194 "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
203 tplink
,archer-c2-v3|\
204 tplink
,tl-wr1043nd-v4|\
205 tplink
,tl-wr1043n-v5
)
206 ucidef_add_switch
"switch0" \
207 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
209 elecom
,wrc-1750ghbk2-i|\
210 elecom
,wrc-300ghbk2-i|\
212 ucidef_add_switch
"switch0" \
213 "0@eth0" "2:lan:4" "3:lan:3" "4:lan:2" "5:lan:1" "1:wan"
215 embeddedwireless
,dorin
)
216 ucidef_add_switch
"switch0" \
217 "0@eth0" "1:wan" "2:lan:3" "3:lan:2"
220 ucidef_set_interface_wan
"eth0"
221 ucidef_add_switch
"switch0" \
224 engenius
,ens202ext-v1
)
225 ucidef_set_interface_wan
"eth1"
226 ucidef_add_switch
"switch0" \
230 ucidef_set_interface_lan
"eth0 eth1" "dhcp"
233 ucidef_set_interface_lan
"eth0" "dhcp"
236 ucidef_set_interface_wan
"eth1"
237 ucidef_add_switch
"switch0" \
238 "0@eth0" "1:lan" "2:lan"
241 iodata
,wn-ac1167dgr|\
242 iodata
,wn-ac1600dgr|\
243 iodata
,wn-ac1600dgr2|\
248 ucidef_add_switch
"switch0" \
249 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
251 librerouter
,librerouter-v1
)
252 ucidef_add_switch
"switch0" \
253 "0@eth0" "5:wan" "6@eth1" "4:lan"
256 tplink
,archer-a7-v5|\
257 tplink
,archer-c6-v2|\
258 tplink
,archer-c6-v2-us|\
259 tplink
,archer-c7-v4|\
260 tplink
,archer-c7-v5|\
261 tplink
,tl-wdr3600-v1|\
262 tplink
,tl-wdr4300-v1|\
263 tplink
,tl-wdr4300-v1-il|\
264 tplink
,tl-wdr4310-v1
)
265 ucidef_add_switch
"switch0" \
266 "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
269 qxwlan
,e1700ac-v2-8m|\
270 qxwlan
,e1700ac-v2-16m|\
272 qxwlan
,e750g-v8-16m|\
273 ubnt
,nanobeam-ac-gen2|\
274 ubnt
,nanostation-ac|\
277 ucidef_add_switch
"switch0" \
278 "0@eth0" "2:lan" "3:wan"
281 ucidef_add_switch
"switch0" \
282 "0@eth0" "2:lan" "3:lan" "4:lan" "1:wan"
285 netgear
,wndr3700-v2|\
290 ucidef_set_interface_wan
"eth1"
291 ucidef_add_switch
"switch0" \
292 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5u@eth0"
293 ucidef_add_switch_attr
"switch0" "blinkrate" 2
294 ucidef_add_switch_port_attr
"switch0" 1 led
6
295 ucidef_add_switch_port_attr
"switch0" 2 led
9
296 ucidef_add_switch_port_attr
"switch0" 5 led
2
300 ucidef_set_interface_wan
"eth0"
301 ucidef_add_switch
"switch0" \
302 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
305 ucidef_add_switch
"switch0" \
306 "0@eth0" "3:lan:1" "5:lan:2" "4:wan"
309 ucidef_set_interface_wan
"eth1"
310 ucidef_add_switch
"switch0" \
311 "0@eth0" "2:lan" "3:lan"
315 ucidef_add_switch
"switch0" \
316 "0@eth1" "4:lan" "5:lan" "6@eth0" "3:wan"
319 ucidef_add_switch
"switch0" \
320 "0@eth0" "1:lan" "2:lan" "3:wan"
323 teltonika
,rut955-h7v3c0
)
324 ucidef_set_interface_wan
"eth1"
325 ucidef_add_switch
"switch0" \
326 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1"
328 tplink
,archer-d50-v1
)
329 ucidef_add_switch
"switch0" \
330 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "1:wan"
332 tplink
,archer-d7-v1|\
333 tplink
,archer-d7b-v1
)
334 ucidef_add_switch
"switch0" \
335 "0@eth1" "3:lan:3" "4:lan:2" "5:lan:1" "6@eth0" "2:wan:4" "1:wan:5"
337 tplink
,eap225-wall-v2
)
338 ucidef_add_switch
"switch0" \
339 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
342 ucidef_add_switch
"switch0" \
343 "0@eth0" "2:lan:1" "5:lan:2"
346 ucidef_set_interfaces_lan_wan
"eth0.1 eth1" "usb0"
347 ucidef_add_switch
"switch0" \
348 "0@eth0" "1:lan:1" "2:lan:3" "3:lan:2"
350 tplink
,tl-wpa8630-v1|\
351 tplink
,tl-wpa8630p-v2-int|\
352 tplink
,tl-wpa8630p-v2.0
-eu|\
353 tplink
,tl-wpa8630p-v2.1
-eu)
354 # port 5 (internal) is the power-line port
355 ucidef_add_switch
"switch0" \
356 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "5:lan:4"
359 ucidef_set_interface_wan
"eth1"
360 ucidef_add_switch
"switch0" \
361 "0@eth0" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
363 tplink
,tl-wr1043nd-v1
)
364 ucidef_add_switch
"switch0" \
365 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
367 tplink
,tl-wr1043nd-v2|\
368 tplink
,tl-wr1043nd-v3|\
369 tplink
,tl-wr1045nd-v2
)
370 ucidef_add_switch
"switch0" \
371 "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
374 ucidef_add_switch
"switch0" \
375 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
378 ucidef_set_interface_wan
"eth1"
379 ucidef_add_switch
"switch0" \
380 "0@eth0" "2:lan:1" "3:lan:3" "4:lan:2"
383 ucidef_set_interface_wan
"eth1"
384 ucidef_add_switch
"switch0" \
385 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:lan"
388 ucidef_set_interface_wan
"eth1"
389 ucidef_add_switch
"switch0" \
390 "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"
392 ubnt
,routerstation-pro
)
393 ucidef_set_interface_wan
"eth0"
394 ucidef_add_switch
"switch0" \
395 "0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
397 ubnt
,nanostation-m-xw
)
398 ucidef_add_switch
"switch0" \
399 "0@eth0" "5:lan" "1:wan"
401 ubnt
,unifiac-mesh-pro|\
403 ucidef_add_switch
"switch0" \
404 "0@eth0" "2:lan:1" "3:lan:2"
407 ucidef_add_switch
"switch0" \
408 "0@eth0" "1:lan" "2:lan"
412 ucidef_set_interface_wan
"eth1"
413 ucidef_add_switch
"switch0" \
414 "0@eth0" "3:lan:1" "4:lan:2"
417 ucidef_set_interfaces_lan_wan
"eth0" "eth1"
429 lan_mac
=$
(mtd_get_mac_binary
"Board data" 2)
432 alfa-network
,ap121f|\
433 alfa-network
,ap121fe|\
436 alfa-network
,pi-wifi4|\
439 engenius
,ens202ext-v1
)
440 label_mac
=$
(mtd_get_mac_binary art
0x1002)
443 base_mac
=$
(mtd_get_mac_binary art
0x1002)
444 lan_mac
=$
(macaddr_setbit
$base_mac 29)
445 [ $lan_mac = $base_mac ] && lan_mac
=$
(macaddr_unsetbit
$base_mac 29)
450 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
453 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
454 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
457 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
458 wan_mac
=$
(fritz_tffs
-n macb
-i $
(find_mtd_part
"tffs (1)"))
462 wan_mac
=$
(mtd_get_mac_binary u-boot
0x2e018)
465 label_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" 3)
470 lan_mac
=$
(mtd_get_mac_text
"mp" 0x1)
474 label_mac
=$
(mtd_get_mac_ascii bdcfg
"wlanmac")
477 lan_mac
=$
(mtd_get_mac_text
"caldata" 0xffa0)
478 wan_mac
=$
(mtd_get_mac_text
"caldata" 0xffb4)
481 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
485 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
486 wan_mac
=$
(mtd_get_mac_text
"mac" 0x18)
492 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
493 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
499 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
500 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
502 elecom
,wrc-1750ghbk2-i|\
503 elecom
,wrc-300ghbk2-i
)
504 wan_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" -2)
508 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
513 ubnt
,bullet-m-ar7240|\
514 ubnt
,bullet-m-ar7241|\
516 ubnt
,nanostation-loco-m|\
522 label_mac
=$
(cat /sys
/class
/ieee80211
/phy
0/macaddress
)
525 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
526 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
529 lan_mac
=$
(mtd_get_mac_text
"u-boot-env" 0xe9)
530 eth1_mac
=$
(macaddr_add
"$lan_mac" 1)
531 ucidef_set_interface
"eth0" ifname
"eth0" protocol
"none" macaddr
"$lan_mac"
532 ucidef_set_interface
"eth1" ifname
"eth1" protocol
"none" macaddr
"$eth1_mac"
534 enterasys
,ws-ap3705i
)
535 label_mac
=$
(mtd_get_mac_ascii u-boot-env0 ethaddr
)
538 hak5
,packet-squirrel
)
539 label_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
542 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
543 wan_mac
=$
(macaddr_add
"$lan_mac" -1)
546 iodata
,wn-ac1167dgr|\
547 iodata
,wn-ac1600dgr|\
548 iodata
,wn-ac1600dgr2|\
550 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
551 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
555 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n alias
/ethaddr
)
556 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
559 tplink
,tl-wdr3600-v1|\
560 tplink
,tl-wdr4300-v1|\
561 tplink
,tl-wdr4300-v1-il
)
562 base_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
563 wan_mac
=$
(macaddr_add
"$base_mac" 1)
566 lan_mac
=$
(mtd_get_mac_text board_data
0x280)
567 wan_mac
=$
(mtd_get_mac_text board_data
0x480)
571 netgear
,wndr3700-v2|\
575 lan_mac
=$
(macaddr_setbit_la
"$(mtd_get_mac_binary art 0x0)")
578 lan_mac
=$
(k2t_get_mac
"lan_mac")
579 wan_mac
=$
(k2t_get_mac
"wan_mac")
582 wan_mac
=$
(mtd_get_mac_binary factory
0x0)
583 lan_mac
=$
(macaddr_setbit_la
"$wan_mac")
587 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
588 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
591 tplink
,archer-a7-v5|\
592 tplink
,archer-c7-v4|\
593 tplink
,archer-c7-v5|\
594 tplink
,tl-wr1043nd-v4|\
595 tplink
,tl-wr1043n-v5
)
596 base_mac
=$
(mtd_get_mac_binary info
0x8)
597 wan_mac
=$
(macaddr_add
"$base_mac" 1)
600 lan_mac
=$
(mtd_get_mac_text mac
0x4)
601 wan_mac
=$
(mtd_get_mac_text mac
0x18)
604 ubnt
,litebeam-ac-gen2|\
605 ubnt
,nanobeam-ac-gen2|\
606 ubnt
,powerbeam-5ac-500|\
607 ubnt
,powerbeam-5ac-gen2
)
608 label_mac
=$
(mtd_get_mac_binary art
0x5006)
611 ubnt
,routerstation-pro
)
612 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n ar7100_esa
)
613 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
615 wd
,mynet-wifi-rangeextender
)
616 lan_mac
=$
(nvram get et0macaddr
)
619 label_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
623 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr
"lan" $lan_mac
624 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr
"wan" $wan_mac
625 [ -n "$label_mac" ] && ucidef_set_label_macaddr
$label_mac
630 ath79_setup_interfaces
$board
631 ath79_setup_macs
$board