ramips: add support for Rakwireless RAK633
[oweals/openwrt.git] / target / linux / ramips / base-files / etc / board.d / 02_network
1 #!/bin/sh
2
3 . /lib/functions.sh
4 . /lib/functions/uci-defaults.sh
5 . /lib/functions/system.sh
6
7 ramips_setup_rt3x5x_vlans()
8 {
9         if [ ! -x /sbin/swconfig ]; then
10                 # legacy default
11                 ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
12                 return
13         fi
14         local wanports=""
15         local lanports=""
16         for port in 5 4 3 2 1 0; do
17                 if [ `swconfig dev rt305x port $port get disable` = "1" ]; then
18                         continue
19                 fi
20                 if [ `swconfig dev rt305x port $port get lan` = "0" ]; then
21                         wanports="$port:wan $wanports"
22                 else
23                         lanports="$port:lan $lanports"
24                 fi
25         done
26         ucidef_add_switch "rt305x" $lanports $wanports "6t@eth0"
27 }
28
29 ramips_setup_interfaces()
30 {
31         local board="$1"
32
33         case $board in
34         11acnas|\
35         d-team,newifi-d2|\
36         dir-615-h1|\
37         w2914nsv2|\
38         zbt-we2026)
39                 ucidef_add_switch "switch0" \
40                         "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "4:wan:5" "6@eth0"
41                 ;;
42         3g150b|\
43         3g300m|\
44         a5-v11|\
45         all0256n-4M|\
46         all0256n-8M|\
47         all5002|\
48         all5003|\
49         bocco|\
50         broadway|\
51         dcs-930|\
52         dcs-930l-b1|\
53         ht-tm02|\
54         kimax,u35wf|\
55         linkits7688 | \
56         m2m|\
57         microwrt|\
58         mikrotik,rbm11g|\
59         mpr-a2|\
60         ncs601w|\
61         omega2 | \
62         omega2p | \
63         timecloud|\
64         tplink,tl-wa801nd-v5|\
65         w150m|\
66         widora,neo-16m|\
67         widora,neo-32m|\
68         wnce2001|\
69         zbt-cpe102|\
70         zorlik,zl5900v2|\
71         zte-q7)
72                 ucidef_add_switch "switch0"
73                 ucidef_add_switch_attr "switch0" "enable" "false"
74                 ucidef_set_interface_lan "eth0"
75                 ;;
76         mlw221|\
77         mr-102n)
78                 ucidef_set_interface_lan "eth0.2"
79                 ;;
80         3g-6200n|\
81         ai-br100|\
82         alfa-network,ac1200rm|\
83         mediatek,ap-mt7621a-v60|\
84         xzwifi,creativebox-v1|\
85         d240|\
86         db-wrt01|\
87         dir-300-b7|\
88         dir-320-b1|\
89         dir-610-a1|\
90         dir-615-h1|\
91         dir-810l|\
92         dlink,dwr-116-a1|\
93         dlink,dwr-921-c1|\
94         dlink,dwr-922-e2|\
95         ew1200|\
96         firewrt|\
97         hc5661a|\
98         hc5962|\
99         hlk-rm04|\
100         k2p|\
101         kn|\
102         kn_rc|\
103         mac1200rv2|\
104         miwifi-mini|\
105         miwifi-nano|\
106         mt7621|\
107         mt7628|\
108         mtc,wr1201|\
109         mzk-750dhp|\
110         mzk-w300nh2|\
111         nixcore-x1-8M|\
112         nixcore-x1-16M|\
113         oy-0001|\
114         pbr-m1|\
115         psg1208|\
116         psg1218a|\
117         r6220|\
118         netgear,r6350|\
119         rt-n12p|\
120         sap-g3200u3|\
121         sk-wb8|\
122         unielec,u7621-06-256m-16m|\
123         unielec,u7621-06-512m-64m|\
124         vr500|\
125         wavlink,wl-wn570ha1|\
126         wavlink,wl-wn575a3|\
127         wf-2881|\
128         whr-g300n|\
129         mqmaker,witi-256m|\
130         mqmaker,witi-512m|\
131         wndr3700v5|\
132         youku-yk1|\
133         youku,yk-l2|\
134         zbt-ape522ii|\
135         zbt-we1326|\
136         zbtlink,zbt-we3526|\
137         zbt-we826-16M|\
138         zbt-we826-32M|\
139         zbt-wg2626|\
140         zbt-wg3526-16M|\
141         zbt-wg3526-32M|\
142         zbt-wr8305rt)
143                 ucidef_add_switch "switch0" \
144                         "0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "6@eth0"
145                 ;;
146         gehua,ghl-r-001)
147                 ucidef_add_switch "switch0" \
148                         "0:lan" "1:lan" "2:lan" "4:wan" "6@eth0"
149                 ;;
150         alfa-network,awusfree1|\
151         alfa-network,tube-e4g|\
152         cs-qr10|\
153         d105|\
154         dlink,dap-1522-a1|\
155         dch-m225|\
156         ex2700|\
157         ex3700|\
158         hpm|\
159         mzk-ex300np|\
160         mzk-ex750np|\
161         na930|\
162         pbr-d1|\
163         ravpower,wd03|\
164         tama,w06|\
165         tplink,tl-mr3020-v3|\
166         tplink,tl-wr802n-v4|\
167         u25awf-h1|\
168         wli-tx4-ag300n|\
169         wmdr-143n|\
170         wmr-300|\
171         wn3000rpv3|\
172         wrh-300cr)
173                 ucidef_set_interface_lan "eth0"
174                 ;;
175         dlink,dwr-118-a1)
176                 ucidef_add_switch "switch0" \
177                         "1:lan:2" "2:lan:3" "3:lan:1" "4:lan:0" "5:wan" "6@eth0"
178                 ;;
179         dlink,dwr-118-a2)
180                 ucidef_add_switch "switch0" \
181                         "1:lan:2" "2:lan:1" "3:lan:3" "4:lan" "0:wan" "6@eth0"
182                 ;;
183         psg1218b)
184                 ucidef_add_switch "switch0" \
185                         "0:lan:3" "1:lan:2" "2:lan:1" "3:wan" "6@eth0"
186                 ;;
187         whr-300hp2|\
188         whr-600d|\
189         wsr-1166|\
190         wsr-600)
191                 ucidef_add_switch "switch0" \
192                         "0:lan:1" "1:lan:2" "2:lan:3" "3:lan:4" "4:wan:5" "6@eth0"
193                 ;;
194         ar670w|\
195         ar725w|\
196         rakwireless,rak633|\
197         rt-ac51u)
198                 ucidef_add_switch "switch0" \
199                         "0:wan" "1:lan" "2:lan" "3:lan" "4:lan" "6t@eth0"
200                 ;;
201         belkin,f9k1109v1|\
202         rt-n15|\
203         wl-351)
204                 ucidef_add_switch "switch0" \
205                         "0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "5@eth0"
206                 ;;
207         asl26555-8M|\
208         asl26555-16M|\
209         rp-n53)
210                 ucidef_add_switch "switch0" \
211                         "1:lan" "2:lan" "3:lan" "4:lan" "6t@eth0"
212                 ;;
213         atp-52b|\
214         awm002-evb-4M|\
215         awm002-evb-8M|\
216         bdcom,wap2100-sk|\
217         c20i|\
218         dir-645|\
219         gl-mt300a|\
220         gl-mt300n|\
221         gl-mt750|\
222         hiwifi,hc5861b|\
223         jhr-n805r|\
224         jhr-n825r|\
225         jhr-n926r|\
226         mikrotik,rb750gr3|\
227         mikrotik,rbm33g|\
228         mzk-wdpr|\
229         rt-n14u|\
230         skylab,skw92a|\
231         tplink,c20-v4|\
232         tplink,c50-v3|\
233         tplink,c50-v4|\
234         tplink,tl-mr3420-v5|\
235         tplink,tl-wr842n-v5|\
236         tl-wr840n-v4|\
237         tl-wr840n-v5|\
238         tl-wr841n-v13|\
239         u7628-01-128M-16M|\
240         ubnt-erx|\
241         ubnt-erx-sfp|\
242         ur-326n4g|\
243         wrtnode|\
244         wrtnode2p | \
245         wrtnode2r | \
246         youhua,wr1200js|\
247         zbt-wa05|\
248         zyxel,keenetic-extra-ii)
249                 ucidef_add_switch "switch0" \
250                         "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "6@eth0"
251                 ;;
252         c50|\
253         tplink,c20-v1)
254                 ucidef_add_switch "switch0" \
255                         "1:lan:3" "2:lan:4" "3:lan:1" "4:lan:2" "0:wan" "6@eth0"
256                 ;;
257         dir-860l-b1|\
258         elecom,wrc-1167ghbk2-s|\
259         elecom,wrc-2533gst|\
260         elecom,wrc-1900gst|\
261         hg255d|\
262         iodata,wn-ax1167gr|\
263         iodata,wn-gx300gr)
264                 ucidef_add_switch "switch0" \
265                         "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "0:wan" "6@eth0"
266                 ;;
267         gnubee,gb-pc1|\
268         gnubee,gb-pc2)
269                 ucidef_add_switch "switch0" \
270                         "0:lan" "4:lan" "6@eth0"
271                 ;;
272         gl-mt300n-v2)
273                 ucidef_add_switch "switch0" \
274                         "1:lan" "0:wan" "6@eth0"
275                 ;;
276         awapn2403)
277                 ucidef_add_switch "switch0" \
278                         "0:lan" "1:wan" "6@eth0"
279                 ;;
280         b2c|\
281         nw718|\
282         psr-680w|\
283         sl-r7205|\
284         ur-336un|\
285         w502u|\
286         wr6202)
287                 ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
288                 ;;
289         br-6475nd)
290                 ucidef_add_switch "switch0" \
291                         "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
292                 ;;
293         c108|\
294         cf-wr800n)
295                 ucidef_add_switch "switch0" \
296                         "4:lan" "6t@eth0"
297                 ;;
298         cy-swr1100)
299                 ucidef_add_switch "switch0" \
300                         "0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "9@eth0"
301                 ;;
302         duzun-dm06)
303                 ucidef_add_switch "switch0" \
304                         "1:lan" "0:wan" "6@eth0"
305                 ;;
306         e1700|\
307         mt7620a_mt7530)
308                 ucidef_add_switch "switch1" \
309                         "0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "6@eth0"
310                 ;;
311         edimax,br-6478ac-v2|\
312         tplink,c2-v1)
313                 ucidef_add_switch "switch1" \
314                         "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "6@eth0"
315                 ;;
316         hc5661|\
317         y1s)
318                 ucidef_add_switch "switch0" \
319                         "1:lan" "2:lan" "3:lan" "4:lan" "5:lan" "0:wan" "6@eth0"
320                 ;;
321         hc5861)
322                 ucidef_add_switch "switch0" \
323                         "0:lan" "1:lan" "5:wan" "6@eth0"
324                 ;;
325         iodata,wn-ac1167gr|\
326         iodata,wn-ac733gr3)
327                 ucidef_add_switch "switch1" \
328                         "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "0:wan" "6@eth0"
329                 ;;
330         kn_rf)
331                 ucidef_add_switch "switch0" \
332                         "0:wan" "1:lan" "2:lan" "3:lan" "4:lan" "6@eth0"
333                 ;;
334         kng_rc)
335                 ucidef_add_switch "switch1" \
336                         "0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "7t@eth0"
337                 ;;
338         mlwg2|\
339         wizard8800|\
340         wl-330n)
341                 ucidef_set_interface_lan "eth0.1"
342                 ;;
343         mr200)
344                 ucidef_add_switch "switch0" \
345                         "0:lan" "1:lan" "2:lan" "3:lan" "6t@eth0"
346                 ucidef_set_interface_wan "usb0"
347                 ;;
348         netgear,r6120)
349                 ucidef_add_switch "switch0" \
350                         "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "4:wan" "6@eth0"
351                 ;;
352         hc5761)
353                 ucidef_add_switch "switch0" \
354                         "1:lan" "4:lan" "0:wan" "6@eth0"
355                 ;;
356         mzk-dp150n|\
357         vocore-8M|\
358         vocore-16M)
359                 ucidef_add_switch "switch0" \
360                         "0:lan" "4:lan" "6t@eth0"
361                 ;;
362         newifi-d1)
363                 ucidef_add_switch "switch0" \
364                 "1:lan:2" "2:lan:1" "4:wan" "6@eth0"
365                 ;;
366         phicomm,k2g)
367                 ucidef_add_switch "switch0" \
368                         "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5:wan" "6@eth0"
369                 ;;
370         dlink,dir-510l|\
371         glinet,vixmini|\
372         netgear,ex6150|\
373         re350-v1)
374                 ucidef_add_switch "switch0" \
375                         "0:lan" "6@eth0"
376                 ;;
377         re6500)
378                 ucidef_add_switch "switch0" \
379                         "0:lan:1" "1:lan:2" "2:lan:3" "3:lan:4" "6@eth0"
380                 ;;
381         rt-n56u)
382                 ucidef_add_switch "switch0" \
383                         "0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "8@eth0"
384                 ;;
385         tew-638apb-v2)
386                 ucidef_add_switch "switch0" \
387                         "4:lan" "6@eth0"
388                 ;;
389         lava,lr-25g001|\
390         tew-691gr|\
391         tew-692gr|\
392         wlr-6000)
393                 ucidef_add_switch "switch0" \
394                         "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "0@eth0"
395                 ;;
396         tplink,tl-wr902ac-v3)
397                 ucidef_add_switch "switch0" \
398                         "4:lan" "6@eth0"
399                 ;;
400         vonets,var11n-300|\
401         wt1520-4M|\
402         wt1520-8M)
403                 ucidef_add_switch "switch0" \
404                         "0:lan" "4:wan" "6@eth0"
405                 ;;
406         vocore2|\
407         vocore2lite)
408                 ucidef_add_switch "switch0" \
409                         "0:lan" "2:lan" "6t@eth0"
410                 ;;
411         f5d8235-v1|\
412         f5d8235-v2|\
413         tew-714tru|\
414         v11st-fe|\
415         wzr-agl300nh)
416                 ucidef_add_switch "switch0" \
417                         "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
418                 ;;
419         wcr-1166ds)
420                 ucidef_add_switch "switch0" \
421                         "3:lan" "4:wan" "6@eth0"
422                 ;;
423         wcr-150gn|\
424         we1026-5g-16m)
425                 ucidef_add_switch "switch0" \
426                         "0:lan" "6t@eth0"
427                 ;;
428         whr-1166d)
429                 ucidef_add_switch "switch0" \
430                         "0:lan" "1:lan" "2:lan" "3:lan" "5:wan" "6@eth0"
431                 ;;
432         wizfi630a)
433                 ucidef_add_switch "switch0" \
434                         "0:lan" "1:lan" "2:wan" "6@eth0"
435                 ;;
436         wiznet,wizfi630s)
437                 ucidef_add_switch "switch0" \
438                         "0:wan" "3:lan" "4:lan" "6@eth0"
439                 ;;
440         wt3020-4M|\
441         wt3020-8M)
442                 ucidef_add_switch "switch0" \
443                         "4:lan" "0:wan" "6@eth0"
444                 ;;
445         xiaomi,mir3g)
446                 ucidef_add_switch "switch0" \
447                         "2:lan:2" "3:lan:1" "1:wan" "6t@eth0"
448                 ;;
449         xiaomi,mir3p)
450                 ucidef_add_switch "switch0" \
451                         "1:lan:3" "2:lan:2" "3:lan:1" "4:wan" "6@eth0"
452                 ;;
453         zbtlink,zbt-we1226|\
454         y1)
455                 ucidef_add_switch "switch0" \
456                         "0:lan:2" "1:lan:1" "4:wan" "6@eth0"
457                 ;;
458         zyxel,keenetic-start)
459                 ucidef_add_switch "switch0" \
460                         "0:lan:3" "1:lan:2" "2:lan:1" "3:lan:0" "4:wan" "6@eth0"
461                 ;;
462         *)
463                 RT3X5X=`cat /proc/cpuinfo | egrep "(RT3.5|RT5350)"`
464                 if [ -n "${RT3X5X}" ]; then
465                         ramips_setup_rt3x5x_vlans
466                 else
467                         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
468                 fi
469                 ;;
470         esac
471 }
472
473 ramips_setup_macs()
474 {
475         local board="$1"
476         local lan_mac=""
477         local wan_mac=""
478
479         case $board in
480         a5-v11|\
481         ht-tm02|\
482         wmdr-143n)
483                 lan_mac=$(cat /sys/class/net/eth0/address)
484                 ;;
485         carambola|\
486         freestation5|\
487         w502u|\
488         wnce2001)
489                 wan_mac=$(mtd_get_mac_binary factory 46)
490                 ;;
491         bc2|\
492         broadway|\
493         d105|\
494         dir-300-b7|\
495         dir-320-b1|\
496         dir-620-a1|\
497         esr-9753|\
498         freestation5|\
499         hlk-rm04|\
500         mpr-a1|\
501         psr-680w|\
502         sl-r7205|\
503         y1|\
504         y1s)
505                 lan_mac=$(cat /sys/class/net/eth0/address)
506                 lan_mac=$(macaddr_setbit_la "$lan_mac")
507                 wan_mac=$(macaddr_add "$lan_mac" 1)
508                 ;;
509         belkin,f9k1109v1)
510                 wan_mac=$(mtd_get_mac_ascii uboot-env HW_WAN_MAC)
511                 lan_mac=$(mtd_get_mac_ascii uboot-env HW_LAN_MAC)
512                 ;;
513         br-6475nd)
514                 lan_mac=$(cat /sys/class/net/eth0/address)
515                 wan_mac=$(mtd_get_mac_binary devdata 7)
516                 ;;
517         cy-swr1100|\
518         dch-m225)
519                 lan_mac=$(mtd_get_mac_ascii factory lanmac)
520                 ;;
521         dir-645)
522                 lan_mac=$(mtd_get_mac_ascii nvram lanmac)
523                 wan_mac=$(mtd_get_mac_ascii nvram wanmac)
524                 ;;
525         dir-860l-b1)
526                 lan_mac=$(mtd_get_mac_ascii factory lanmac)
527                 wan_mac=$(mtd_get_mac_ascii factory wanmac)
528                 ;;
529         dlink,dir-510l|\
530         dlink,dwr-116-a1|\
531         dlink,dwr-118-a1|\
532         dlink,dwr-118-a2|\
533         dlink,dwr-921-c1|\
534         dlink,dwr-922-e2|\
535         lava,lr-25g001)
536                 wan_mac=$(jboot_config_read -m -i $(find_mtd_part "config") -o 0xE000)
537                 lan_mac=$(macaddr_add "$wan_mac" 1)
538                 ;;
539         e1700)
540                 wan_mac=$(mtd_get_mac_ascii config WAN_MAC_ADDR)
541                 ;;
542         edimax,br-6478ac-v2)
543                 lan_mac=$(cat /sys/class/net/eth0/address)
544                 wan_mac=$(macaddr_add "$lan_mac" 2)
545                 ;;
546         elecom,wrc-1167ghbk2-s|\
547         elecom,wrc-2533gst|\
548         elecom,wrc-1900gst|\
549         sk-wb8)
550                 wan_mac=$(mtd_get_mac_binary factory 57350)
551                 ;;
552         gl-mt300n-v2|\
553         whr-g300n)
554                 wan_mac=$(mtd_get_mac_binary factory 4)
555                 ;;
556         hc5*61|\
557         hc5661a|\
558         hc5962|\
559         hiwifi,hc5861b)
560                 lan_mac=`mtd_get_mac_ascii bdinfo "Vfac_mac "`
561                 [ -n "$lan_mac" ] || lan_mac=$(cat /sys/class/net/eth0/address)
562                 wan_mac=$(macaddr_add "$lan_mac" 1)
563                 ;;
564         iodata,wn-ac1167gr|\
565         iodata,wn-ac733gr3)
566                 wan_mac=$(macaddr_add "$(mtd_get_mac_binary Factory 4)" -1)
567                 ;;
568         iodata,wn-ax1167gr|\
569         iodata,wn-gx300gr)
570                 wan_mac=$(macaddr_add "$(mtd_get_mac_binary Factory 4)" 1)
571                 ;;
572         kn_rc|\
573         kn_rf|\
574         kng_rc)
575                 wan_mac=$(mtd_get_mac_binary factory 40)
576                 ;;
577         linkits7688)
578                 wan_mac=$(mtd_get_mac_binary factory 4)
579                 lan_mac=$(mtd_get_mac_binary factory 46)
580                 ;;
581         mac1200rv2)
582                 lan_mac=$(mtd_get_mac_binary factory_info 13)
583                 wan_mac=$(macaddr_add "$lan_mac" 1)
584                 ;;
585         miwifi-mini)
586                 wan_mac=$(cat /sys/class/net/eth0/address)
587                 lan_mac=$(macaddr_setbit_la "$wan_mac")
588                 ;;
589         m3|\
590         m4-4M|\
591         m4-8M|\
592         x5|\
593         x8)
594                 lan_mac=$(cat /sys/class/net/eth0/address)
595                 lan_mac=$(macaddr_add "$lan_mac" -2)
596                 ;;
597         newifi-d1)
598                 lan_mac=$(cat /sys/class/net/eth0/address)
599                 lan_mac=$(macaddr_add "$lan_mac" 2)
600                 ;;
601         omega2|\
602         omega2p)
603                 wan_mac=$(mtd_get_mac_binary factory 4)
604                 lan_mac=$(mtd_get_mac_binary factory 46)
605                 ;;
606         oy-0001|\
607         phicomm,k2g)
608                 lan_mac=$(mtd_get_mac_binary factory 40)
609                 wan_mac=$(mtd_get_mac_binary factory 46)
610                 ;;
611         r6220|\
612         netgear,r6350)
613                 wan_mac=$(mtd_get_mac_binary factory 4)
614                 lan_mac=$(macaddr_add "$wan_mac" 1)
615                 ;;
616         rt-n56u)
617                 lan_mac=$(cat /sys/class/net/eth0/address)
618                 lan_mac=$(macaddr_setbit_la "$lan_mac")
619                 wan_mac=$(mtd_get_mac_binary factory 32772)
620                 ;;
621         skylab,skw92a)
622                 lan_mac=$(mtd_get_mac_binary factory 40)
623                 wan_mac=$(mtd_get_mac_binary factory 46)
624                 ;;
625         tew-691gr)
626                 wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 4)" 3)
627                 ;;
628         tew-692gr)
629                 wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 4)" 1)
630                 ;;
631         tiny-ac)
632                 lan_mac=$(mtd_get_mac_ascii u-boot-env LAN_MAC_ADDR)
633                 wan_mac=$(mtd_get_mac_ascii u-boot-env WAN_MAC_ADDR)
634                 ;;
635         vr500)
636                 lan_mac=$(mtd_get_mac_binary factory 57344)
637                 wan_mac=$(mtd_get_mac_binary factory 57350)
638                 ;;
639         w306r-v20)
640                 lan_mac=$(cat /sys/class/net/eth0/address)
641                 wan_mac=$(macaddr_add "$lan_mac" 5)
642                 ;;
643         wcr-1166ds|\
644         wsr-1166)
645                 local index="$(find_mtd_index "board_data")"
646                 wan_mac="$(grep -m1 mac= "/dev/mtd${index}" | cut -d= -f2)"
647                 lan_mac=$wan_mac
648                 ;;
649         wcr-150gn)
650                 wan_mac=$(mtd_get_mac_binary factory 40)
651                 ;;
652         whr-1166d|\
653         whr-300hp2|\
654         whr-600d|\
655         wsr-600)
656                 wan_mac=$(mtd_get_mac_binary factory 4)
657                 lan_mac=$wan_mac
658                 ;;
659         wizfi630a)
660                 lan_mac=$(mtd_get_mac_binary factory 4)
661                 wan_mac=$(mtd_get_mac_binary factory 40)
662                 ;;
663         wlr-6000)
664                 wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 32772)" 2)
665                 ;;
666         xiaomi,mir3g|\
667         xiaomi,mir3p)
668                 lan_mac=$(mtd_get_mac_binary Factory 0xe006)
669                 ;;
670         zyxel,keenetic-start)
671                 wan_mac=$(mtd_get_mac_binary factory 40)
672                 ;;
673         *)
674                 lan_mac=$(cat /sys/class/net/eth0/address)
675                 wan_mac=$(macaddr_add "$lan_mac" 1)
676                 ;;
677         esac
678
679         [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
680         [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
681 }
682
683 board_config_update
684 board=$(board_name)
685 ramips_setup_interfaces $board
686 ramips_setup_macs $board
687 board_config_flush
688
689 exit 0