ramips: add label MAC address for Edimax RG21S
[openwrt/staging/chunkeey.git] / target / linux / ramips / mt7621 / 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_interfaces()
8 {
9 local board="$1"
10
11 case $board in
12 adslr,g7|\
13 afoundry,ew1200|\
14 d-team,pbr-m1|\
15 firefly,firewrt|\
16 hiwifi,hc5962|\
17 jcg,jhr-ac876m|\
18 mediatek,ap-mt7621a-v60|\
19 mediatek,mt7621-eval-board|\
20 mqmaker,witi|\
21 mtc,wr1201|\
22 phicomm,k2p|\
23 planex,vr500|\
24 samknows,whitebox-v8|\
25 storylink,sap-g3200u3|\
26 telco-electronics,x1|\
27 totolink,a7000r|\
28 unielec,u7621-06-16m|\
29 unielec,u7621-06-64m|\
30 xiaoyu,xy-c5|\
31 xzwifi,creativebox-v1|\
32 youku,yk-l2|\
33 zbtlink,zbt-we1326|\
34 zbtlink,zbt-we3526|\
35 zbtlink,zbt-wg2626|\
36 zbtlink,zbt-wg3526-16m|\
37 zbtlink,zbt-wg3526-32m)
38 ucidef_add_switch "switch0" \
39 "0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "6@eth0"
40 ;;
41 alfa-network,quad-e4g|\
42 netgear,r6220|\
43 netgear,r6260|\
44 netgear,r6350|\
45 netgear,r6850|\
46 netgear,wndr3700-v5|\
47 netis,wf-2881|\
48 wevo,11acnas|\
49 wevo,w2914ns-v2|\
50 zio,freezio)
51 ucidef_add_switch "switch0" \
52 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "4:wan" "6@eth0"
53 ;;
54 asiarf,ap7621-001)
55 ucidef_add_switch "switch0" "0:lan" "4:wan" "6@eth0"
56 ;;
57 asiarf,ap7621-nv1)
58 ucidef_add_switch "switch0" "0:wan" "2:lan" "3:lan" "6@eth0"
59 ;;
60 asus,rt-ac65p|\
61 asus,rt-ac57u|\
62 asus,rt-ac85p|\
63 iptime,a6ns-m|\
64 mikrotik,rb750gr3|\
65 ubiquiti,edgerouterx|\
66 ubiquiti,edgerouterx-sfp|\
67 youhua,wr1200js)
68 ucidef_add_switch "switch0" \
69 "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "6@eth0"
70 ;;
71 dlink,dir-860l-b1|\
72 elecom,wrc-1167ghbk2-s|\
73 elecom,wrc-1900gst|\
74 elecom,wrc-2533gst|\
75 iodata,wn-ax1167gr|\
76 iodata,wn-gx300gr|\
77 iodata,wnpr2600g)
78 ucidef_add_switch "switch0" \
79 "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "0:wan" "6@eth0"
80 ;;
81 buffalo,wsr-1166dhp|\
82 buffalo,wsr-600dhp)
83 ucidef_add_switch "switch0" \
84 "0:lan:1" "1:lan:2" "2:lan:3" "3:lan:4" "4:wan:5" "6@eth0"
85 ;;
86 d-team,newifi-d2)
87 ucidef_add_switch "switch0" \
88 "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "4:wan:5" "6@eth0"
89 ;;
90 edimax,rg21s)
91 ucidef_add_switch "switch0" \
92 "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "0:wan" "6@eth0"
93 ;;
94 gehua,ghl-r-001)
95 ucidef_add_switch "switch0" \
96 "0:lan" "1:lan" "2:lan" "4:wan" "6@eth0"
97 ;;
98 gnubee,gb-pc1|\
99 gnubee,gb-pc2)
100 ucidef_add_switch "switch0" \
101 "0:lan" "4:lan" "6@eth0"
102 ;;
103 lenovo,newifi-d1)
104 ucidef_add_switch "switch0" \
105 "1:lan:2" "2:lan:1" "4:wan" "6@eth0"
106 ;;
107 linksys,re6500)
108 ucidef_add_switch "switch0" \
109 "0:lan:1" "1:lan:2" "2:lan:3" "3:lan:4" "6@eth0"
110 ;;
111 mikrotik,rbm11g|\
112 thunder,timecloud)
113 ucidef_add_switch "switch0"
114 ucidef_add_switch_attr "switch0" "enable" "false"
115 ucidef_set_interface_lan "eth0"
116 ;;
117 mikrotik,rbm33g)
118 ucidef_add_switch "switch0" \
119 "1:lan" "2:lan" "0:wan" "6@eth0"
120 ;;
121 netgear,ex6150|\
122 tplink,re350-v1|\
123 tplink,re650-v1)
124 ucidef_add_switch "switch0" \
125 "0:lan" "6@eth0"
126 ;;
127 xiaomi,mir3g)
128 ucidef_add_switch "switch0" \
129 "2:lan:2" "3:lan:1" "1:wan" "6t@eth0"
130 ;;
131 xiaomi,mir3g-v2)
132 ucidef_add_switch "switch0" \
133 "2:lan:2" "3:lan:1" "4:wan" "6@eth0"
134 ;;
135 xiaomi,mir3p)
136 ucidef_add_switch "switch0" \
137 "1:lan:3" "2:lan:2" "3:lan:1" "4:wan" "6@eth0"
138 ;;
139 *)
140 ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
141 ;;
142 esac
143 }
144
145 ramips_setup_macs()
146 {
147 local board="$1"
148 local lan_mac=""
149 local wan_mac=""
150 local label_mac=""
151
152 case $board in
153 adslr,g7)
154 wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0xe00c)" 1)
155 ;;
156 afoundry,ew1200|\
157 asiarf,ap7621-001|\
158 asiarf,ap7621-nv1|\
159 firefly,firewrt|\
160 gehua,ghl-r-001|\
161 mqmaker,witi|\
162 totolink,a7000r|\
163 unielec,u7621-06-16m|\
164 unielec,u7621-06-64m|\
165 xzwifi,creativebox-v1|\
166 zbtlink,zbt-wg2626)
167 wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0xe000)" 1)
168 ;;
169 alfa-network,quad-e4g|\
170 asus,rt-ac57u|\
171 d-team,newifi-d2|\
172 d-team,pbr-m1|\
173 elecom,wrc-1167ghbk2-s|\
174 elecom,wrc-1900gst|\
175 elecom,wrc-2533gst|\
176 lenovo,newifi-d1|\
177 netis,wf-2881|\
178 phicomm,k2p|\
179 planex,vr500|\
180 samknows,whitebox-v8|\
181 youhua,wr1200js|\
182 youku,yk-l2|\
183 zbtlink,zbt-we3526)
184 wan_mac=$(mtd_get_mac_binary factory 0xe006)
185 ;;
186 asus,rt-ac65p|\
187 asus,rt-ac85p)
188 wan_mac=$(mtd_get_mac_ascii u-boot-env et1macaddr)
189 label_mac=$(mtd_get_mac_binary factory 0x4)
190 ;;
191 buffalo,wsr-1166dhp)
192 local index="$(find_mtd_index "board_data")"
193 wan_mac="$(grep -m1 mac= "/dev/mtd${index}" | cut -d= -f2)"
194 lan_mac=$wan_mac
195 ;;
196 dlink,dir-860l-b1)
197 lan_mac=$(mtd_get_mac_ascii factory lanmac)
198 wan_mac=$(mtd_get_mac_ascii factory wanmac)
199 label_mac=$(mtd_get_mac_binary radio 0x4)
200 ;;
201 edimax,rg21s)
202 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
203 wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
204 label_mac=$(mtd_get_mac_binary factory 0x4)
205 ;;
206 hiwifi,hc5962)
207 lan_mac=$(mtd_get_mac_ascii bdinfo "Vfac_mac ")
208 label_mac=$lan_mac
209 [ -n "$lan_mac" ] || lan_mac=$(cat /sys/class/net/eth0/address)
210 wan_mac=$(macaddr_add "$lan_mac" 1)
211 ;;
212 iodata,wn-ax1167gr|\
213 iodata,wn-gx300gr|\
214 mtc,wr1201|\
215 netgear,r6220|\
216 netgear,wndr3700-v5|\
217 xiaoyu,xy-c5)
218 wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x4)" 1)
219 ;;
220 iodata,wnpr2600g)
221 wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
222 label_mac=$wan_mac
223 ;;
224 iptime,a6ns-m)
225 wan_mac=$(mtd_get_mac_binary u-boot 0x1fc40)
226 ;;
227 jcg,jhr-ac876m)
228 label_mac=$(mtd_get_mac_binary factory 0x4)
229 wan_mac=$label_mac
230 ;;
231 mediatek,ap-mt7621a-v60)
232 wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x5)" 1)
233 ;;
234 mikrotik,rb750gr3)
235 wan_mac=$(macaddr_add "$(mtd_get_mac_binary hard_config 0x10)" 2)
236 ;;
237 mikrotik,rbm33g)
238 wan_mac=$(macaddr_add "$(mtd_get_mac_binary hard_config 0x10)" 2)
239 label_mac=$(mtd_get_mac_binary hard_config 0x10)
240 ;;
241 netgear,r6260|\
242 netgear,r6350|\
243 netgear,r6850)
244 wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x4)" 2)
245 ;;
246 storylink,sap-g3200u3|\
247 telco-electronics,x1)
248 wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0xe006)" 1)
249 ;;
250 ubiquiti,edgerouterx|\
251 ubiquiti,edgerouterx-sfp)
252 wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0x22)" 1)
253 ;;
254 wevo,11acnas|\
255 wevo,w2914ns-v2|\
256 zio,freezio)
257 wan_mac=$(mtd_get_mac_binary factory 0x2e)
258 label_mac=$wan_mac
259 ;;
260 xiaomi,mir3g)
261 lan_mac=$(mtd_get_mac_binary factory 0xe006)
262 ;;
263 xiaomi,mir3g-v2)
264 wan_mac=$(mtd_get_mac_binary factory 0xe006)
265 label_mac=$wan_mac
266 ;;
267 xiaomi,mir3p)
268 lan_mac=$(mtd_get_mac_binary factory 0xe006)
269 label_mac=$lan_mac
270 ;;
271 zbtlink,zbt-we1326)
272 wan_mac=$(mtd_get_mac_binary factory 0xe006)
273 label_mac=$(mtd_get_mac_binary factory 0x4)
274 ;;
275 zbtlink,zbt-wg3526-16m|\
276 zbtlink,zbt-wg3526-32m)
277 wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 0xe000)" 1)
278 label_mac=$(mtd_get_mac_binary factory 0x4)
279 ;;
280 esac
281
282 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
283 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
284 [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
285 }
286
287 board_config_update
288 board=$(board_name)
289 ramips_setup_interfaces $board
290 ramips_setup_macs $board
291 board_config_flush
292
293 exit 0