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|\
34 enterasys
,ws-ap3705i|\
35 glinet
,gl-ar300m-lite|\
37 hak5
,wifi-pineapple-nano|\
54 tplink
,eap225-outdoor-v1|\
62 tplink
,tl-wr902ac-v1|\
63 ubnt
,bullet-m-ar7240|\
64 ubnt
,bullet-m-ar7241|\
67 ubnt
,litebeam-ac-gen2|\
70 ubnt
,nanostation-ac-loco|\
71 ubnt
,nanostation-loco-m|\
72 ubnt
,nanostation-loco-m-xw|\
74 ubnt
,powerbeam-5ac-500|\
75 ubnt
,powerbeam-5ac-gen2|\
82 wd
,mynet-wifi-rangeextender|\
84 ucidef_set_interface_lan
"eth0"
87 ucidef_add_switch
"switch0" \
88 "0@eth0" "2:wan" "3:lan" "6@eth1"
91 ucidef_set_interface_lan
"eth0 usb0"
98 ucidef_set_interface_lan
"eth0 eth1"
102 tplink
,archer-c58-v1|\
103 tplink
,archer-c59-v1|\
104 tplink
,archer-c59-v2
)
105 ucidef_set_interface_wan
"eth1"
106 ucidef_add_switch
"switch0" \
107 "0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
111 tplink
,archer-c5-v1|\
112 tplink
,archer-c7-v1|\
113 tplink
,archer-c7-v2|\
114 tplink
,tl-wdr4900-v2|\
115 tplink
,tl-wdr7500-v3
)
116 ucidef_add_switch
"switch0" \
117 "0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
120 buffalo
,wzr-hp-g450h
)
121 ucidef_add_switch
"switch0" \
122 "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
126 ucidef_add_switch
"switch0" \
127 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth0"
130 buffalo
,wzr-hp-ag300h|\
131 tplink
,archer-c25-v1|\
132 tplink
,archer-c60-v1|\
133 tplink
,archer-c60-v2|\
134 tplink
,archer-c60-v3|\
135 tplink
,tl-wdr3500-v1|\
136 tplink
,tl-wr842n-v1|\
137 tplink
,tl-wr842n-v3|\
139 ucidef_set_interface_wan
"eth1"
140 ucidef_add_switch
"switch0" \
141 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
143 buffalo
,wzr-hp-g302h-a1a0
)
144 ucidef_add_switch
"switch0" \
145 "0@eth0" "1:lan:1" "3:lan:4" "4:lan:3" "5:lan:2" "2:wan"
147 comfast
,cf-e110n-v2|\
148 comfast
,cf-e120a-v3|\
149 comfast
,cf-e314n-v2|\
161 ucidef_set_interfaces_lan_wan
"eth1" "eth0"
164 ucidef_set_interface_wan
"eth1"
165 ucidef_add_switch
"switch0" \
166 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
168 comfast
,cf-wr650ac-v1|\
169 comfast
,cf-wr650ac-v2|\
171 ucidef_add_switch
"switch0" \
172 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
176 ucidef_add_switch
"switch0" \
177 "0@eth0" "3:lan" "2:wan"
180 ucidef_add_switch
"switch0" \
181 "0@eth0" "2:wan" "3:lan" "4:lan"
184 ucidef_add_switch
"switch0" "0@eth0" "2:lan" "3:wan" "6@eth1"
187 ucidef_add_switch
"switch0" \
188 "0@eth0" "1:lan:2" "2:lan:1"
191 ucidef_set_interface_wan
"eth1"
192 ucidef_add_switch
"switch0" \
193 "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
202 tplink
,archer-c2-v3|\
203 tplink
,tl-wr1043nd-v4|\
204 tplink
,tl-wr1043n-v5
)
205 ucidef_add_switch
"switch0" \
206 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
208 elecom
,wrc-1750ghbk2-i|\
209 elecom
,wrc-300ghbk2-i|\
211 ucidef_add_switch
"switch0" \
212 "0@eth0" "2:lan:4" "3:lan:3" "4:lan:2" "5:lan:1" "1:wan"
214 embeddedwireless
,dorin
)
215 ucidef_add_switch
"switch0" \
216 "0@eth0" "1:wan" "2:lan:3" "3:lan:2"
219 ucidef_set_interface_wan
"eth0"
220 ucidef_add_switch
"switch0" \
223 engenius
,ens202ext-v1
)
224 ucidef_set_interface_wan
"eth1"
225 ucidef_add_switch
"switch0" \
229 ucidef_set_interface_lan
"eth0 eth1" "dhcp"
232 ucidef_set_interface_lan
"eth0" "dhcp"
235 ucidef_set_interface_wan
"eth1"
236 ucidef_add_switch
"switch0" \
237 "0@eth0" "1:lan" "2:lan"
240 iodata
,wn-ac1167dgr|\
241 iodata
,wn-ac1600dgr|\
242 iodata
,wn-ac1600dgr2|\
247 ucidef_add_switch
"switch0" \
248 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
250 librerouter
,librerouter-v1
)
251 ucidef_add_switch
"switch0" \
252 "0@eth0" "5:wan" "6@eth1" "4:lan"
255 tplink
,archer-a7-v5|\
256 tplink
,archer-c6-v2|\
257 tplink
,archer-c6-v2-us|\
258 tplink
,archer-c7-v4|\
259 tplink
,archer-c7-v5|\
260 tplink
,tl-wdr3600-v1|\
261 tplink
,tl-wdr4300-v1|\
262 tplink
,tl-wdr4300-v1-il|\
263 tplink
,tl-wdr4310-v1
)
264 ucidef_add_switch
"switch0" \
265 "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
268 qxwlan
,e1700ac-v2-8m|\
269 qxwlan
,e1700ac-v2-16m|\
271 qxwlan
,e750g-v8-16m|\
272 ubnt
,nanobeam-ac-gen2|\
273 ubnt
,nanostation-ac|\
276 ucidef_add_switch
"switch0" \
277 "0@eth0" "2:lan" "3:wan"
280 ucidef_add_switch
"switch0" \
281 "0@eth0" "2:lan" "3:lan" "4:lan" "1:wan"
284 netgear
,wndr3700-v2|\
289 ucidef_set_interface_wan
"eth1"
290 ucidef_add_switch
"switch0" \
291 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5u@eth0"
292 ucidef_add_switch_attr
"switch0" "blinkrate" 2
293 ucidef_add_switch_port_attr
"switch0" 1 led
6
294 ucidef_add_switch_port_attr
"switch0" 2 led
9
295 ucidef_add_switch_port_attr
"switch0" 5 led
2
299 ucidef_set_interface_wan
"eth0"
300 ucidef_add_switch
"switch0" \
301 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
304 ucidef_add_switch
"switch0" \
305 "0@eth0" "3:lan:1" "5:lan:2" "4:wan"
308 ucidef_set_interface_wan
"eth1"
309 ucidef_add_switch
"switch0" \
310 "0@eth0" "2:lan" "3:lan"
314 ucidef_add_switch
"switch0" \
315 "0@eth1" "4:lan" "5:lan" "6@eth0" "3:wan"
318 ucidef_add_switch
"switch0" \
319 "0@eth0" "1:lan" "2:lan" "3:wan"
322 teltonika
,rut955-h7v3c0
)
323 ucidef_set_interface_wan
"eth1"
324 ucidef_add_switch
"switch0" \
325 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1"
327 tplink
,archer-d50-v1
)
328 ucidef_add_switch
"switch0" \
329 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "1:wan"
331 tplink
,archer-d7-v1|\
332 tplink
,archer-d7b-v1
)
333 ucidef_add_switch
"switch0" \
334 "0@eth1" "3:lan:3" "4:lan:2" "5:lan:1" "6@eth0" "2:wan:4" "1:wan:5"
336 tplink
,eap225-wall-v2
)
337 ucidef_add_switch
"switch0" \
338 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
341 ucidef_add_switch
"switch0" \
342 "0@eth0" "2:lan:1" "5:lan:2"
345 ucidef_set_interfaces_lan_wan
"eth0.1 eth1" "usb0"
346 ucidef_add_switch
"switch0" \
347 "0@eth0" "1:lan:1" "2:lan:3" "3:lan:2"
349 tplink
,tl-wpa8630-v1|\
350 tplink
,tl-wpa8630p-v2-int|\
351 tplink
,tl-wpa8630p-v2.0
-eu|\
352 tplink
,tl-wpa8630p-v2.1
-eu)
353 # port 5 (internal) is the power-line port
354 ucidef_add_switch
"switch0" \
355 "0@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "5:lan:4"
358 ucidef_set_interface_wan
"eth1"
359 ucidef_add_switch
"switch0" \
360 "0@eth0" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
362 tplink
,tl-wr1043nd-v1
)
363 ucidef_add_switch
"switch0" \
364 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
366 tplink
,tl-wr1043nd-v2|\
367 tplink
,tl-wr1043nd-v3|\
368 tplink
,tl-wr1045nd-v2
)
369 ucidef_add_switch
"switch0" \
370 "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
373 ucidef_add_switch
"switch0" \
374 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
377 ucidef_set_interface_wan
"eth1"
378 ucidef_add_switch
"switch0" \
379 "0@eth0" "2:lan:1" "3:lan:3" "4:lan:2"
382 ucidef_set_interface_wan
"eth1"
383 ucidef_add_switch
"switch0" \
384 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:lan"
387 ucidef_set_interface_wan
"eth1"
388 ucidef_add_switch
"switch0" \
389 "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"
391 ubnt
,routerstation-pro
)
392 ucidef_set_interface_wan
"eth0"
393 ucidef_add_switch
"switch0" \
394 "0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
396 ubnt
,nanostation-m-xw
)
397 ucidef_add_switch
"switch0" \
398 "0@eth0" "5:lan" "1:wan"
400 ubnt
,unifiac-mesh-pro|\
402 ucidef_add_switch
"switch0" \
403 "0@eth0" "2:lan:1" "3:lan:2"
406 ucidef_add_switch
"switch0" \
407 "0@eth0" "1:lan" "2:lan"
411 ucidef_set_interface_wan
"eth1"
412 ucidef_add_switch
"switch0" \
413 "0@eth0" "3:lan:1" "4:lan:2"
416 ucidef_set_interfaces_lan_wan
"eth0" "eth1"
428 lan_mac
=$
(mtd_get_mac_binary
"Board data" 2)
431 alfa-network
,ap121f|\
432 alfa-network
,ap121fe|\
435 alfa-network
,pi-wifi4|\
438 engenius
,ens202ext-v1
)
439 label_mac
=$
(mtd_get_mac_binary art
0x1002)
442 base_mac
=$
(mtd_get_mac_binary art
0x1002)
443 lan_mac
=$
(macaddr_setbit
$base_mac 29)
444 [ $lan_mac = $base_mac ] && lan_mac
=$
(macaddr_unsetbit
$base_mac 29)
449 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
452 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
453 label_mac
=$
(fritz_tffs
-n macwlan
-i $
(find_mtd_part
"tffs (1)"))
456 lan_mac
=$
(fritz_tffs
-n maca
-i $
(find_mtd_part
"tffs (1)"))
457 wan_mac
=$
(fritz_tffs
-n macb
-i $
(find_mtd_part
"tffs (1)"))
461 wan_mac
=$
(mtd_get_mac_binary u-boot
0x2e018)
464 label_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" 3)
469 lan_mac
=$
(mtd_get_mac_text
"mp" 0x1)
473 label_mac
=$
(mtd_get_mac_ascii bdcfg
"wlanmac")
476 lan_mac
=$
(mtd_get_mac_text
"caldata" 0xffa0)
477 wan_mac
=$
(mtd_get_mac_text
"caldata" 0xffb4)
480 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
484 lan_mac
=$
(mtd_get_mac_text
"mac" 0x4)
485 wan_mac
=$
(mtd_get_mac_text
"mac" 0x18)
491 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
492 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
498 lan_mac
=$
(mtd_get_mac_ascii devdata
"lanmac")
499 wan_mac
=$
(mtd_get_mac_ascii devdata
"wanmac")
501 elecom
,wrc-1750ghbk2-i|\
502 elecom
,wrc-300ghbk2-i
)
503 wan_mac
=$
(macaddr_add
"$(mtd_get_mac_binary art 0x1002)" -2)
507 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
512 ubnt
,bullet-m-ar7240|\
513 ubnt
,bullet-m-ar7241|\
515 ubnt
,nanostation-loco-m|\
521 label_mac
=$
(cat /sys
/class
/ieee80211
/phy
0/macaddress
)
524 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
525 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
528 lan_mac
=$
(mtd_get_mac_text
"u-boot-env" 0xe9)
529 eth1_mac
=$
(macaddr_add
"$lan_mac" 1)
530 ucidef_set_interface
"eth0" ifname
"eth0" protocol
"none" macaddr
"$lan_mac"
531 ucidef_set_interface
"eth1" ifname
"eth1" protocol
"none" macaddr
"$eth1_mac"
533 enterasys
,ws-ap3705i
)
534 label_mac
=$
(mtd_get_mac_ascii u-boot-env0 ethaddr
)
537 hak5
,packet-squirrel
)
538 label_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
541 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
542 wan_mac
=$
(macaddr_add
"$lan_mac" -1)
545 iodata
,wn-ac1167dgr|\
546 iodata
,wn-ac1600dgr|\
547 iodata
,wn-ac1600dgr2|\
549 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
550 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
554 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n alias
/ethaddr
)
555 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
558 tplink
,tl-wdr3600-v1|\
559 tplink
,tl-wdr4300-v1|\
560 tplink
,tl-wdr4300-v1-il
)
561 base_mac
=$
(mtd_get_mac_binary u-boot
0x1fc00)
562 wan_mac
=$
(macaddr_add
"$base_mac" 1)
565 lan_mac
=$
(mtd_get_mac_text board_data
0x280)
566 wan_mac
=$
(mtd_get_mac_text board_data
0x480)
570 netgear
,wndr3700-v2|\
574 lan_mac
=$
(macaddr_setbit_la
"$(mtd_get_mac_binary art 0x0)")
577 lan_mac
=$
(k2t_get_mac
"lan_mac")
578 wan_mac
=$
(k2t_get_mac
"wan_mac")
581 wan_mac
=$
(mtd_get_mac_binary factory
0x0)
582 lan_mac
=$
(macaddr_setbit_la
"$wan_mac")
586 lan_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
587 wan_mac
=$
(mtd_get_mac_ascii u-boot-env wanaddr
)
590 tplink
,archer-a7-v5|\
591 tplink
,archer-c7-v4|\
592 tplink
,archer-c7-v5|\
593 tplink
,tl-wr1043nd-v4|\
594 tplink
,tl-wr1043n-v5
)
595 base_mac
=$
(mtd_get_mac_binary info
0x8)
596 wan_mac
=$
(macaddr_add
"$base_mac" 1)
599 lan_mac
=$
(mtd_get_mac_text mac
0x4)
600 wan_mac
=$
(mtd_get_mac_text mac
0x18)
603 ubnt
,litebeam-ac-gen2|\
604 ubnt
,nanobeam-ac-gen2|\
605 ubnt
,powerbeam-5ac-500|\
606 ubnt
,powerbeam-5ac-gen2
)
607 label_mac
=$
(mtd_get_mac_binary art
0x5006)
610 ubnt
,routerstation-pro
)
611 wan_mac
=$
(fconfig
-s -r -d $
(find_mtd_part
"RedBoot config") -n ar7100_esa
)
612 lan_mac
=$
(macaddr_add
"$wan_mac" 1)
614 wd
,mynet-wifi-rangeextender
)
615 lan_mac
=$
(nvram get et0macaddr
)
618 label_mac
=$
(mtd_get_mac_ascii u-boot-env ethaddr
)
622 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr
"lan" $lan_mac
623 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr
"wan" $wan_mac
624 [ -n "$label_mac" ] && ucidef_set_label_macaddr
$label_mac
629 ath79_setup_interfaces
$board
630 ath79_setup_macs
$board