ramips: add Edimax BR-6208AC V2 support
[openwrt/staging/wigyori.git] / target / linux / ramips / mt7620 / base-files / etc / board.d / 02_network
1
2 . /lib/functions.sh
3 . /lib/functions/uci-defaults.sh
4 . /lib/functions/system.sh
5
6 ramips_setup_interfaces()
7 {
8 local board="$1"
9
10 case $board in
11 aigale,ai-br100|\
12 alfa-network,ac1200rm|\
13 asus,rt-n12p|\
14 dlink,dwr-116-a1|\
15 dlink,dwr-921-c1|\
16 dlink,dwr-922-e2|\
17 dovado,tiny-ac|\
18 ohyeah,oy-0001|\
19 phicomm,psg1208|\
20 planex,db-wrt01|\
21 planex,mzk-750dhp|\
22 ralink,mt7620a-evb|\
23 ralink,mt7620a-mt7610e-evb|\
24 ralink,mt7620a-v22sg-evb|\
25 sanlinking,d240|\
26 zbtlink,zbt-ape522ii|\
27 zbtlink,zbt-we826-16m|\
28 zbtlink,zbt-we826-32m|\
29 zbtlink,zbt-we826-e|\
30 zbtlink,zbt-wr8305rt|\
31 zyxel,keenetic-lite-iii-a|\
32 zyxel,keenetic-omni)
33 ucidef_add_switch "switch0" \
34 "0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "6@eth0"
35 ;;
36 alfa-network,r36m-e4g|\
37 zbtlink,zbt-we1026-h-32m)
38 ucidef_add_switch "switch0" \
39 "3:lan" "4:wan" "6@eth0"
40 ;;
41 alfa-network,tube-e4g|\
42 ampedwireless,b1200ex|\
43 buffalo,wmr-300|\
44 dlink,dch-m225|\
45 edimax,ew-7476rpc|\
46 edimax,ew-7478ac|\
47 elecom,wrh-300cr|\
48 hootoo,ht-tm05|\
49 kimax,u25awf-h1|\
50 kimax,u35wf|\
51 kingston,mlw221|\
52 kingston,mlwg2|\
53 microduino,microwrt|\
54 netgear,ex2700|\
55 netgear,ex3700|\
56 netgear,ex6120|\
57 netgear,ex6130|\
58 netgear,wn3000rp-v3|\
59 netgear,wn3100rp-v2|\
60 planex,cs-qr10|\
61 planex,mzk-ex300np|\
62 planex,mzk-ex750np|\
63 ravpower,rp-wd03|\
64 sercomm,na930|\
65 tplink,re200-v1|\
66 tplink,re210-v1|\
67 yukai,bocco|\
68 zbtlink,zbt-cpe102|\
69 zte,q7)
70 ucidef_add_switch "switch0"
71 ucidef_add_switch_attr "switch0" "enable" "false"
72 ucidef_set_interface_lan "eth0"
73 ;;
74 asus,rp-n53)
75 ucidef_add_switch "switch0" \
76 "1:lan" "2:lan" "3:lan" "4:lan" "6t@eth0"
77 ;;
78 asus,rt-ac51u|\
79 asus,rt-ac54u|\
80 asus,rt-n14u|\
81 bdcom,wap2100-sk|\
82 domywifi,dm202|\
83 domywifi,dm203|\
84 domywifi,dw22d|\
85 edimax,ew-7478apc|\
86 glinet,gl-mt300a|\
87 glinet,gl-mt300n|\
88 glinet,gl-mt750|\
89 hiwifi,hc5661|\
90 snr,cpe-w4n-mt|\
91 wrtnode,wrtnode|\
92 zbtlink,zbt-wa05|\
93 zyxel,keenetic-omni-ii)
94 ucidef_add_switch "switch0" \
95 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "6@eth0"
96 ;;
97 buffalo,whr-1166d)
98 ucidef_add_switch "switch0" \
99 "0:lan" "1:lan" "2:lan" "3:lan" "5:wan" "6@eth0"
100 ;;
101 buffalo,whr-300hp2|\
102 buffalo,whr-600d)
103 ucidef_add_switch "switch0" \
104 "0:lan:1" "1:lan:2" "2:lan:3" "3:lan:4" "4:wan:5" "6@eth0"
105 ;;
106 comfast,cf-wr800n|\
107 hnet,c108|\
108 humax,e2)
109 ucidef_add_switch "switch0" \
110 "4:lan" "6@eth0"
111 ;;
112 dlink,dir-510l)
113 ucidef_add_switch "switch0" \
114 "0:lan" "6@eth0"
115 ;;
116 dlink,dir-810l|\
117 netcore,nw5212|\
118 netgear,jwnr2010-v5|\
119 phicomm,k2-v22.4|\
120 phicomm,k2-v22.5|\
121 trendnet,tew-810dr|\
122 zbtlink,zbt-we2026)
123 ucidef_add_switch "switch0" \
124 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "4:wan" "6@eth0"
125 ;;
126 dlink,dwr-118-a1)
127 ucidef_add_switch "switch0" \
128 "1:lan:2" "2:lan:3" "3:lan:1" "4:lan:0" "5:wan" "6@eth0"
129 ;;
130 dlink,dwr-118-a2)
131 ucidef_add_switch "switch0" \
132 "1:lan:2" "2:lan:1" "3:lan:3" "4:lan" "0:wan" "6@eth0"
133 ;;
134 dlink,dwr-960)
135 ucidef_add_switch "switch0" \
136 "1:lan" "2:lan" "3:lan" "5:lan" "0:wan" "6@eth0"
137 ;;
138 dlink,dwr-961-a1)
139 ucidef_add_switch "switch0" \
140 "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan" "0@eth0"
141 ucidef_add_switch "switch1" \
142 "5:lan" "6@eth0"
143 ucidef_add_switch_attr "switch1" "enable" "false"
144 ;;
145 edimax,br-6208ac-v2)
146 ucidef_add_switch "switch0" \
147 "1:lan:3" "2:lan:2" "3:lan:1" "4:wan" "6@eth0"
148 ;;
149 edimax,br-6478ac-v2|\
150 lb-link,bl-w1200|\
151 tplink,archer-c2-v1)
152 ucidef_add_switch "switch0"
153 ucidef_add_switch_attr "switch0" "enable" "false"
154 ucidef_add_switch "switch1" \
155 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "6@eth0"
156 ;;
157 engenius,epg600|\
158 engenius,esr600|\
159 lava,lr-25g001|\
160 sitecom,wlr-4100-v1-002)
161 ucidef_add_switch "switch0" \
162 "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "0@eth0"
163 ucidef_add_switch "switch1" \
164 "5:lan" "6@eth0"
165 ucidef_add_switch_attr "switch1" "enable" "false"
166 ;;
167 fon,fon2601|\
168 vonets,var11n-300)
169 ucidef_add_switch "switch0" \
170 "0:lan" "4:wan" "6@eth0"
171 ;;
172 head-weblink,hdrm200)
173 ucidef_add_switch "switch0" \
174 "1:lan" "2:lan" "3:lan" "4:lan" "5:lan" "0:wan" "6@eth0"
175 ;;
176 hiwifi,hc5761)
177 ucidef_add_switch "switch0" \
178 "1:lan" "4:lan" "0:wan" "6@eth0"
179 ;;
180 hiwifi,hc5861)
181 ucidef_add_switch "switch0" \
182 "0:lan" "1:lan" "5:wan" "6@eth0"
183 ;;
184 iodata,wn-ac1167gr|\
185 iodata,wn-ac733gr3|\
186 iptime,a1004ns)
187 ucidef_add_switch "switch0"
188 ucidef_add_switch_attr "switch0" "enable" "false"
189 ucidef_add_switch "switch1" \
190 "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "0:wan" "6@eth0"
191 ;;
192 iptime,a104ns)
193 ucidef_add_switch "switch0" \
194 "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "0:wan" "6@eth0"
195 ;;
196 lenovo,newifi-y1|\
197 xiaomi,miwifi-mini)
198 ucidef_add_switch "switch0" \
199 "0:lan:2" "1:lan:1" "4:wan" "6@eth0"
200 ;;
201 lenovo,newifi-y1s)
202 ucidef_add_switch "switch0" \
203 "1:lan:4" "2:lan:3" "4:lan:2" "5:lan:1" "0:wan" "6@eth0"
204 ;;
205 linksys,e1700|\
206 netis,wf2770|\
207 ralink,mt7620a-mt7530-evb|\
208 wevo,air-duo)
209 ucidef_add_switch "switch0"
210 ucidef_add_switch_attr "switch0" "enable" "false"
211 ucidef_add_switch "switch1" \
212 "0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "6@eth0"
213 ;;
214 netgear,pr2000|\
215 nexx,wt3020-4m|\
216 nexx,wt3020-8m)
217 ucidef_add_switch "switch0" \
218 "4:lan" "0:wan" "6@eth0"
219 ;;
220 phicomm,k2g|\
221 wavlink,wl-wn530hg4)
222 ucidef_add_switch "switch0" \
223 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5:wan" "6@eth0"
224 ;;
225 phicomm,psg1218b)
226 ucidef_add_switch "switch0" \
227 "0:lan:3" "1:lan:2" "2:lan:1" "3:wan" "6@eth0"
228 ;;
229 tplink,archer-c20-v1|\
230 tplink,archer-c20i|\
231 tplink,archer-c50-v1)
232 ucidef_add_switch "switch0" \
233 "1:lan:3" "2:lan:4" "3:lan:1" "4:lan:2" "0:wan" "6@eth0"
234 ;;
235 tplink,archer-mr200)
236 ucidef_add_switch "switch0" \
237 "0:lan" "1:lan" "2:lan" "3:lan" "6t@eth0"
238 ucidef_set_interface_wan "usb0"
239 ;;
240 wavlink,wl-wn535k1)
241 ucidef_add_switch "switch0" \
242 "2:lan:2" "5:lan:1" "4:wan" "6@eth0"
243 ;;
244 wavlink,wl-wn579x3)
245 ucidef_add_switch "switch0" \
246 "5:lan" "4:wan" "6@eth0"
247 ;;
248 youku,x2)
249 ucidef_add_switch "switch0" \
250 "1:lan:2" "4:lan:1" "0:wan" "6@eth0"
251 ;;
252 youku,yk-l1|\
253 youku,yk-l1c)
254 ucidef_add_switch "switch0" \
255 "0:lan" "1:lan" "4:wan" "6@eth0"
256 ;;
257 zbtlink,zbt-we1026-5g-16m)
258 ucidef_add_switch "switch0" \
259 "0:lan" "6t@eth0"
260 ;;
261 zyxel,keenetic-viva)
262 ucidef_add_switch "switch1" \
263 "0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "7t@eth0"
264 ;;
265 esac
266 }
267
268 ramips_setup_macs()
269 {
270 local board="$1"
271 local lan_mac=""
272 local wan_mac=""
273 local label_mac=""
274
275 case $board in
276 aigale,ai-br100|\
277 asus,rt-n12p|\
278 asus,rt-n14u|\
279 bdcom,wap2100-sk|\
280 edimax,br-6208ac-v2|\
281 edimax,ew-7478apc|\
282 fon,fon2601|\
283 head-weblink,hdrm200|\
284 netgear,jwnr2010-v5|\
285 nexx,wt3020-4m|\
286 nexx,wt3020-8m|\
287 phicomm,psg1208|\
288 planex,db-wrt01|\
289 planex,mzk-750dhp|\
290 sanlinking,d240|\
291 vonets,var11n-300|\
292 wrtnode,wrtnode|\
293 zbtlink,zbt-ape522ii|\
294 zbtlink,zbt-wa05|\
295 zbtlink,zbt-we2026|\
296 zbtlink,zbt-we826-16m|\
297 zbtlink,zbt-we826-32m|\
298 zbtlink,zbt-we826-e|\
299 zbtlink,zbt-wr8305rt)
300 wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x4)" 1)
301 ;;
302 alfa-network,ac1200rm|\
303 dlink,dir-810l|\
304 trendnet,tew-810dr)
305 wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x28)" 1)
306 ;;
307 alfa-network,r36m-e4g|\
308 domywifi,dm202|\
309 domywifi,dm203|\
310 domywifi,dw22d|\
311 zbtlink,zbt-we1026-h-32m)
312 wan_mac=$(mtd_get_mac_binary factory 0x2e)
313 label_mac=$(mtd_get_mac_binary factory 0x4)
314 ;;
315 asus,rt-ac51u|\
316 asus,rt-ac54u)
317 lan_mac=$(mtd_get_mac_binary factory 0x22)
318 ;;
319 dlink,dch-m225)
320 lan_mac=$(mtd_get_mac_ascii factory lanmac)
321 ;;
322 dlink,dir-510l|\
323 dlink,dwr-116-a1|\
324 dlink,dwr-118-a1|\
325 dlink,dwr-118-a2|\
326 dlink,dwr-921-c1|\
327 dlink,dwr-922-e2|\
328 dlink,dwr-960|\
329 dlink,dwr-961-a1|\
330 lava,lr-25g001)
331 wan_mac=$(jboot_config_read -m -i $(find_mtd_part "config") -o 0xE000)
332 lan_mac=$(macaddr_add "$wan_mac" 1)
333 label_mac=$wan_mac
334 ;;
335 dovado,tiny-ac)
336 lan_mac=$(mtd_get_mac_ascii u-boot-env LAN_MAC_ADDR)
337 wan_mac=$(mtd_get_mac_ascii u-boot-env WAN_MAC_ADDR)
338 ;;
339 edimax,br-6478ac-v2)
340 wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x4)" 2)
341 ;;
342 engenius,epg600|\
343 engenius,esr600)
344 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
345 wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
346 label_mac=$wan_mac
347 ;;
348 glinet,gl-mt300a|\
349 glinet,gl-mt300n|\
350 glinet,gl-mt750)
351 wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x4000)" 1)
352 label_mac=$(mtd_get_mac_binary factory 0x4)
353 ;;
354 hiwifi,hc5661|\
355 hiwifi,hc5761|\
356 hiwifi,hc5861)
357 lan_mac=$(mtd_get_mac_ascii bdinfo "Vfac_mac ")
358 label_mac=$lan_mac
359 [ -n "$lan_mac" ] || lan_mac=$(cat /sys/class/net/eth0/address)
360 wan_mac=$(macaddr_add "$lan_mac" 1)
361 ;;
362 iodata,wn-ac1167gr|\
363 iodata,wn-ac733gr3)
364 wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
365 ;;
366 iptime,a1004ns)
367 wan_mac=$(mtd_get_mac_binary u-boot 0x1fc40)
368 ;;
369 iptime,a104ns)
370 wan_mac=$(macaddr_add "$(mtd_get_mac_binary u-boot 0x1fc20)" 2)
371 ;;
372 lb-link,bl-w1200|\
373 netis,wf2770|\
374 phicomm,k2-v22.4|\
375 phicomm,k2-v22.5|\
376 phicomm,k2g|\
377 phicomm,psg1218b)
378 wan_mac=$(mtd_get_mac_binary factory 0x2e)
379 label_mac=$wan_mac
380 ;;
381 lenovo,newifi-y1|\
382 lenovo,newifi-y1s|\
383 ohyeah,oy-0001|\
384 wavlink,wl-wn530hg4|\
385 wevo,air-duo|\
386 youku,x2|\
387 youku,yk-l1|\
388 youku,yk-l1c)
389 wan_mac=$(mtd_get_mac_binary factory 0x2e)
390 ;;
391 linksys,e1700)
392 wan_mac=$(mtd_get_mac_ascii config WAN_MAC_ADDR)
393 ;;
394 snr,cpe-w4n-mt)
395 lan_mac=$(mtd_get_mac_binary Factory 0x28)
396 wan_mac=$(mtd_get_mac_binary Factory 0x2e)
397 label_mac=$wan_mac
398 ;;
399 tplink,archer-c2-v1|\
400 tplink,archer-c20-v1|\
401 tplink,archer-c20i|\
402 tplink,archer-c50-v1|\
403 tplink,archer-mr200)
404 wan_mac=$(macaddr_add "$(mtd_get_mac_binary rom 0xf100)" 1)
405 ;;
406 wavlink,wl-wn535k1)
407 wan_mac=$(mtd_get_mac_binary factory 0x2e)
408 label_mac=$(mtd_get_mac_binary factory 0x8004)
409 ;;
410 zbtlink,zbt-we1026-5g-16m)
411 label_mac=$(mtd_get_mac_binary factory 0x4)
412 ;;
413 zyxel,keenetic-lite-iii-a)
414 lan_mac=$(mtd_get_mac_binary RF-EEPROM 0x4)
415 wan_mac=$(mtd_get_mac_binary RF-EEPROM 0x28)
416 label_mac=$wan_mac
417 ;;
418 zyxel,keenetic-omni|\
419 zyxel,keenetic-omni-ii|\
420 zyxel,keenetic-viva)
421 wan_mac=$(mtd_get_mac_binary factory 0x28)
422 ;;
423 esac
424
425 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
426 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
427 [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
428 }
429
430 board_config_update
431 board=$(board_name)
432 ramips_setup_interfaces $board
433 ramips_setup_macs $board
434 board_config_flush
435
436 exit 0