ath79: Add support for Ubiquiti LiteAP ac (LAP-120)
[openwrt/staging/wigyori.git] / target / linux / ath79 / base-files / etc / board.d / 02_network
1 #!/bin/sh
2
3 . /lib/functions/system.sh
4 . /lib/functions/uci-defaults.sh
5 . /lib/functions/k2t.sh
6
7 ath79_setup_interfaces()
8 {
9 local board="$1"
10
11 case "$board" in
12 avm,fritz300e|\
13 ocedo,koala|\
14 ocedo,raccoon|\
15 pcs,cap324|\
16 pisen,wmm003n|\
17 tplink,re450-v2|\
18 tplink,tl-mr10u|\
19 tplink,tl-mr3020-v1|\
20 tplink,tl-mr3040-v2|\
21 tplink,tl-wa901nd-v2|\
22 tplink,tl-wr703n|\
23 ubnt,bullet-m|\
24 ubnt,lap-120|\
25 ubnt,nanostation-ac-loco|\
26 ubnt,rocket-m|\
27 ubnt,unifiac-lite|\
28 ubnt,unifiac-mesh|\
29 ubnt,unifi|\
30 wd,mynet-wifi-rangeextender)
31 ucidef_set_interface_lan "eth0"
32 ;;
33 avm,fritz4020)
34 ucidef_set_interface_wan "eth0"
35 ucidef_add_switch "switch0" \
36 "0@eth1" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
37 ;;
38 buffalo,bhr-4grv|\
39 buffalo,wzr-hp-g450h)
40 ucidef_add_switch "switch0" \
41 "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
42 ;;
43 buffalo,bhr-4grv2)
44 ucidef_add_switch "switch0" \
45 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth0"
46 ;;
47 buffalo,wzr-hp-ag300h)
48 ucidef_set_interface_wan "eth1"
49 ucidef_add_switch "switch0" \
50 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
51 ;;
52 buffalo,wzr-hp-g302h-a1a0)
53 ucidef_add_switch "switch0" \
54 "0@eth0" "1:lan:1" "3:lan:4" "4:lan:3" "5:lan:2" "2:wan"
55 ;;
56 dlink,dir-825-b1)
57 ucidef_set_interface_wan "eth1"
58 ucidef_add_switch "switch0" \
59 "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
60 ;;
61 elecom,wrc-300ghbk2-i)
62 ucidef_add_switch "switch0" \
63 "0@eth0" "2:lan:4" "3:lan:3" "4:lan:2" "5:lan:1" "1:wan"
64 ;;
65 embeddedwireless,dorin)
66 ucidef_add_switch "switch0" \
67 "0@eth0" "1:wan" "2:lan:3" "3:lan:2"
68 ;;
69 etactica,eg200)
70 ucidef_set_interface_lan "eth0" "dhcp"
71 ;;
72 glinet,ar150|\
73 glinet,ar300m)
74 ucidef_set_interfaces_lan_wan "eth1" "eth0"
75 ;;
76 iodata,etg3-r|\
77 iodata,wn-ac1167dgr|\
78 iodata,wn-ac1600dgr2|\
79 pcs,cr5000)
80 ucidef_add_switch "switch0" \
81 "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
82 ;;
83 netgear,wndr3700|\
84 netgear,wndr3700v2|\
85 netgear,wndr3800)
86 ucidef_set_interfaces_lan_wan "eth0" "eth1"
87 ucidef_add_switch "switch0" \
88 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5u@eth0"
89 ucidef_add_switch_attr "switch0" "blinkrate" 2
90 ucidef_add_switch_port_attr "switch0" 1 led 6
91 ucidef_add_switch_port_attr "switch0" 2 led 9
92 ucidef_add_switch_port_attr "switch0" 5 led 2
93 ;;
94 netgear,wnr612-v2|\
95 on,n150r)
96 ucidef_set_interface_wan "eth0"
97 ucidef_add_switch "switch0" \
98 "0@eth1" "1:lan" "2:lan" "3:lan:3" "4:lan:4"
99 ;;
100 pcs,cr3000)
101 ucidef_add_switch "switch0" \
102 "0@eth1" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
103 ucidef_set_interface_wan "eth0"
104 ;;
105 phicomm,k2t)
106 ucidef_add_switch "switch0" \
107 "0@eth0" "3:lan:1" "5:lan:2" "4:wan"
108 ;;
109 tplink,archer-c7-v1|\
110 tplink,archer-c7-v2|\
111 tplink,tl-wdr4900-v2)
112 ucidef_add_switch "switch0" \
113 "0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
114 ;;
115 buffalo,whr-g301n|\
116 tplink,tl-mr3220-v1|\
117 tplink,tl-mr3420-v1|\
118 tplink,tl-wr841-v7)
119 ucidef_set_interface_wan "eth0"
120 ucidef_add_switch "switch0" \
121 "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
122 ;;
123 tplink,tl-wdr3600|\
124 tplink,tl-wdr4300)
125 ucidef_add_switch "switch0" \
126 "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
127 ;;
128 tplink,tl-wr1043nd-v1)
129 ucidef_add_switch "switch0" \
130 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
131 ;;
132 tplink,tl-wr1043nd-v2|\
133 tplink,tl-wr1043nd-v3)
134 ucidef_add_switch "switch0" \
135 "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
136 ;;
137 tplink,tl-wr1043nd-v4)
138 ucidef_add_switch "switch0" \
139 "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
140 ;;
141 tplink,tl-wr2543-v1)
142 ucidef_add_switch "switch0" \
143 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
144 ;;
145 tplink,tl-wr740n-v1|\
146 tplink,tl-wr740n-v3|\
147 tplink,tl-wr741-v1|\
148 tplink,tl-wr743nd-v1|\
149 tplink,tl-wr841-v5|\
150 tplink,tl-wr941-v4)
151 ucidef_set_interface_wan "eth0"
152 ucidef_add_switch "switch0" \
153 "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
154 ;;
155 tplink,tl-wr740nd-v4|\
156 tplink,tl-wr741nd-v4|\
157 tplink,tl-wr841-v9|\
158 tplink,tl-wr841-v11)
159 ucidef_set_interface_wan "eth0"
160 ucidef_add_switch "switch0" \
161 "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
162 ;;
163 tplink,tl-wr842n-v2)
164 ucidef_set_interface_wan "eth0"
165 ucidef_add_switch "switch0" \
166 "0@eth1" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
167 ;;
168 tplink,tl-wr941-v2)
169 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
170 ;;
171 ubnt,routerstation)
172 ucidef_set_interfaces_lan_wan "eth1" "eth0"
173 ;;
174 ubnt,routerstation-pro)
175 ucidef_set_interface_wan "eth0"
176 ucidef_add_switch "switch0" \
177 "0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
178 ;;
179 ubnt,nanostation-ac|\
180 ubnt,unifiac-mesh-pro|\
181 ubnt,unifiac-pro)
182 ucidef_add_switch "switch0" \
183 "0@eth0" "2:lan" "3:wan"
184 ;;
185 *)
186 ucidef_set_interfaces_lan_wan "eth0" "eth1"
187 ;;
188 esac
189 }
190
191 ath79_setup_macs()
192 {
193 local board="$1"
194
195 case "$board" in
196 avm,fritz300e)
197 lan_mac=$(fritz_tffs -n maca -i $(find_mtd_part "tffs (1)"))
198 ;;
199 avm,fritz4020)
200 lan_mac=$(fritz_tffs -n maca -i $(find_mtd_part "tffs (1)"))
201 wan_mac=$(fritz_tffs -n macb -i $(find_mtd_part "tffs (1)"))
202 ;;
203 dlink,dir-825-b1)
204 lan_mac=$(mtd_get_mac_text "caldata" 65440)
205 wan_mac=$(mtd_get_mac_text "caldata" 65460)
206 ;;
207 elecom,wrc-300ghbk2-i)
208 wan_mac=$(macaddr_add "$(mtd_get_mac_binary ART 4098)" -2)
209 ;;
210 iodata,etg3-r)
211 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
212 wan_mac=$(macaddr_add "$lan_mac" -1)
213 ;;
214 iodata,wn-ac1167dgr|\
215 iodata,wn-ac1600dgr2)
216 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
217 wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
218 ;;
219 netgear,wndr3700|\
220 netgear,wndr3700v2|\
221 netgear,wndr3800)
222 lan_mac=$(macaddr_setbit_la "$(mtd_get_mac_binary art 0)")
223 ;;
224 phicomm,k2t)
225 lan_mac=$(k2t_get_mac "lan_mac")
226 wan_mac=$(k2t_get_mac "wan_mac")
227 ;;
228 tplink,tl-wr1043nd-v4)
229 base_mac=$(mtd_get_mac_binary product-info 8)
230 wan_mac=$(macaddr_add "$base_mac" 1)
231 ;;
232 tplink,tl-wr941-v2)
233 base_mac=$(mtd_get_mac_binary u-boot 130048)
234 wan_mac=$(macaddr_add "$base_mac" 1)
235 ;;
236 ubnt,routerstation|\
237 ubnt,routerstation-pro)
238 wan_mac=$(fconfig -s -r -d $(find_mtd_part "RedBoot config") -n ar7100_esa)
239 lan_mac=$(macaddr_add "$wan_mac" 1)
240 ;;
241 wd,mynet-wifi-rangeextender)
242 lan_mac=$(nvram get et0macaddr)
243 ;;
244 esac
245
246 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
247 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
248 }
249
250 board_config_update
251 board=$(board_name)
252 ath79_setup_interfaces $board
253 ath79_setup_macs $board
254 board_config_flush
255
256 exit 0