ramips: add support for D-Link DRA-1360
[openwrt/staging/stintel.git] / target / linux / ramips / mt7621 / 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 arcadyan,we420223-99)
12 ucidef_set_interface_lan "swp0 swp1"
13 ;;
14 ampedwireless,ally-00x19k|\
15 asus,rp-ac56|\
16 asus,rp-ac87|\
17 dlink,dap-1620-b1|\
18 dlink,dap-x1860-a1|\
19 dlink,dra-1360-a1|\
20 edimax,re23s|\
21 linksys,re7000|\
22 mikrotik,ltap-2hnd|\
23 mikrotik,routerboard-m11g|\
24 netgear,eax12|\
25 netgear,ex6150|\
26 sercomm,na502|\
27 sercomm,na502s|\
28 thunder,timecloud|\
29 tplink,eap613-v1|\
30 tplink,re350-v1|\
31 tplink,re500-v1|\
32 tplink,re650-v1|\
33 tplink,re650-v2|\
34 ubnt,unifi-6-lite|\
35 ubnt,unifi-flexhd|\
36 ubnt,unifi-nanohd|\
37 yuncore,fap690|\
38 zyxel,nwa50ax|\
39 zyxel,nwa55axe)
40 ucidef_set_interface_lan "lan"
41 ;;
42 ampedwireless,ally-r1900k|\
43 asus,rt-ax53u|\
44 gehua,ghl-r-001|\
45 h3c,tx1800-plus|\
46 h3c,tx1801-plus|\
47 h3c,tx1806|\
48 haier,har-20s2u1|\
49 hiwifi,hc5962|\
50 netgear,wax202|\
51 sim,simax1800t|\
52 xiaomi,mi-router-3-pro|\
53 xiaomi,mi-router-ac2100|\
54 xiaomi,mi-router-cr6606|\
55 xiaomi,mi-router-cr6608|\
56 xiaomi,mi-router-cr6609|\
57 xiaomi,redmi-router-ac2100|\
58 zyxel,wsm20)
59 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3" "wan"
60 ;;
61 asiarf,ap7621-001|\
62 humax,e10|\
63 wavlink,ws-wn572hp3-4g|\
64 winstars,ws-wn583a6)
65 ucidef_set_interfaces_lan_wan "lan" "wan"
66 ;;
67 asiarf,ap7621-nv1|\
68 beeline,smartbox-flash|\
69 beeline,smartbox-giga|\
70 glinet,gl-mt1300|\
71 iodata,wn-deax1800gr|\
72 iptime,a3002mesh|\
73 jcg,q20|\
74 lenovo,newifi-d1|\
75 mikrotik,routerboard-m33g|\
76 mts,wg430223|\
77 oraybox,x3a|\
78 renkforce,ws-wn530hp3-a|\
79 xiaomi,mi-router-3g|\
80 xiaomi,mi-router-3g-v2|\
81 xiaomi,mi-router-4|\
82 xiaomi,mi-router-4a-gigabit|\
83 xiaomi,mi-router-4a-gigabit-v2)
84 ucidef_set_interfaces_lan_wan "lan1 lan2" "wan"
85 ;;
86 bolt,arion)
87 ucidef_set_interfaces_lan_wan "lan" "wan"
88 ucidef_set_interface "eth_data" device "modem.103" protocol "static" ipaddr "10.22.127.222" netmask "255.255.255.255"
89 ucidef_set_interface "eth_om" device "modem.4094" protocol "static" ipaddr "169.254.0.2" netmask "255.255.255.252"
90 uci add_list firewall.@zone[1].network='eth_data'
91 uci add_list firewall.@zone[1].network='eth_om'
92 ;;
93 cudy,m1800|\
94 yuncore,ax820|\
95 zyxel,nt7101)
96 ucidef_set_interfaces_lan_wan "lan" "wan"
97 ;;
98 gnubee,gb-pc1)
99 ucidef_set_interface_lan "ethblack ethblue"
100 ;;
101 gnubee,gb-pc2)
102 ucidef_set_interface_lan "ethblack ethblue ethyellow"
103 ;;
104 linksys,re6500|\
105 netgear,wac104|\
106 zyxel,lte3301-plus)
107 ucidef_set_interface_lan "lan1 lan2 lan3 lan4"
108 ;;
109 mikrotik,routerboard-750gr3)
110 ucidef_set_interfaces_lan_wan "lan2 lan3 lan4 lan5" "wan"
111 ;;
112 mikrotik,routerboard-760igs)
113 ucidef_set_interfaces_lan_wan "lan2 lan3 lan4 lan5" "wan sfp"
114 ;;
115 mqmaker,witi)
116 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan1 wan2"
117 ;;
118 tozed,zlt-s12-pro)
119 ucidef_set_interface_lan "lan1 lan2 lan3 wan"
120 ucidef_set_interface "wwan" device "/dev/ttyUSB0" protocol "ncm"
121 uci add_list firewall.@zone[1].network='wwan'
122 ;;
123 tplink,deco-m4r-v4)
124 ucidef_set_interfaces_lan_wan "eth1" "eth0"
125 ;;
126 tplink,eap235-wall-v1|\
127 tplink,eap615-wall-v1)
128 ucidef_set_interface_lan "lan0 lan1 lan2 lan3"
129 ;;
130 tplink,er605-v2)
131 ucidef_set_interfaces_lan_wan "eth1 eth2 eth3 eth4" "eth0"
132 ;;
133 tplink,tl-wpa8631p-v3)
134 ucidef_set_interface_lan "lan1 lan2 lan3 plc0"
135 ;;
136 tplink,mr600-v2-eu)
137 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3" "wan"
138 ;;
139 ubnt,edgerouter-x)
140 ucidef_set_interfaces_lan_wan "eth1 eth2 eth3 eth4" "eth0"
141 ;;
142 ubnt,edgerouter-x-sfp)
143 ucidef_set_interfaces_lan_wan "eth1 eth2 eth3 eth4 eth5" "eth0"
144 ;;
145 ubnt,usw-flex)
146 ucidef_set_interface_lan "lan1 lan2 lan3 lan4 lan5"
147 ;;
148 zyxel,wap6805)
149 ucidef_set_interface_lan "lan1 lan2 lan3 lan4"
150 ucidef_set_interface "qtn" ifname "eth1" protocol "static" ipaddr "1.1.1.1" netmask "255.255.255.0"
151 ;;
152 comfast,cf-e390ax)
153 ucidef_set_interfaces_lan_wan "lan" "wan"
154 ;;
155 *)
156 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
157 ;;
158 esac
159 }
160
161 ramips_setup_macs()
162 {
163 local board="$1"
164 local lan_mac=""
165 local wan_mac=""
166 local label_mac=""
167
168 case $board in
169 ampedwireless,ally-00x19k)
170 lan_mac=$(mtd_get_mac_ascii hwconfig HW.LAN.MAC.Address)
171 label_mac=$lan_mac
172 ;;
173 ampedwireless,ally-r1900k)
174 lan_mac=$(mtd_get_mac_ascii hwconfig HW.LAN.MAC.Address)
175 wan_mac=$(mtd_get_mac_ascii hwconfig HW.WAN.MAC.Address)
176 label_mac=$lan_mac
177 ;;
178 arcadyan,we420223-99)
179 label_mac=$(mtd_get_mac_ascii board_data mac)
180 lan_mac=$label_mac
181 ucidef_set_network_device_mac eth0 $(macaddr_add "$label_mac" 3)
182 ;;
183 asus,rt-ac65p|\
184 asus,rt-ac85p)
185 wan_mac=$(mtd_get_mac_ascii u-boot-env et1macaddr)
186 label_mac=$(mtd_get_mac_binary factory 0x4)
187 ;;
188 beeline,smartbox-flash)
189 wan_mac=$(mtd_get_mac_encrypted_arcadyan "board_data")
190 label_mac=$(macaddr_add "$wan_mac" 3)
191 lan_mac=$label_mac
192 ;;
193 buffalo,wsr-1166dhp)
194 wan_mac=$(mtd_get_mac_ascii board_data "mac")
195 lan_mac=$wan_mac
196 label_mac=$wan_mac
197 ;;
198 comfast,cf-e390ax)
199 lan_mac=$(cat /sys/class/net/eth0/address)
200 label_mac=$lan_mac
201 wan_mac=$(macaddr_add "$lan_mac" 1)
202 ;;
203 dlink,dir-860l-b1)
204 lan_mac=$(mtd_get_mac_ascii factory lanmac)
205 wan_mac=$(mtd_get_mac_ascii factory wanmac)
206 ;;
207 edimax,ra21s|\
208 edimax,rg21s)
209 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
210 wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
211 ;;
212 elecom,wrc-2533ghbk2-t|\
213 elecom,wrc-2533ghbk-i)
214 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
215 wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
216 label_mac=$wan_mac
217 ;;
218 h3c,tx1800-plus|\
219 h3c,tx1801-plus|\
220 h3c,tx1806)
221 label_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
222 lan_mac=$(macaddr_add "$label_mac" 1)
223 wan_mac=$label_mac
224 ;;
225 hiwifi,hc5962)
226 lan_mac=$(mtd_get_mac_ascii bdinfo "Vfac_mac ")
227 label_mac=$lan_mac
228 [ -n "$lan_mac" ] || lan_mac=$(cat /sys/class/net/eth0/address)
229 wan_mac=$(macaddr_add "$lan_mac" 1)
230 ;;
231 iodata,wnpr2600g)
232 wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
233 label_mac=$wan_mac
234 ;;
235 iptime,t5004)
236 lan_mac=$(mtd_get_mac_ascii config ethaddr)
237 wan_mac=$(macaddr_add "$lan_mac" 1)
238 ;;
239 jcg,y2|\
240 wavlink,wl-wn531a6|\
241 wavlink,wl-wn533a8|\
242 winstars,ws-wn583a6|\
243 zbtlink,zbt-we1326|\
244 zbtlink,zbt-wg3526-16m|\
245 zbtlink,zbt-wg3526-32m)
246 label_mac=$(mtd_get_mac_binary factory 0x4)
247 ;;
248 linksys,e5600|\
249 linksys,ea6350-v4|\
250 linksys,ea7300-v1|\
251 linksys,ea7300-v2|\
252 linksys,ea7500-v2|\
253 linksys,ea8100-v1|\
254 linksys,ea8100-v2)
255 lan_mac=$(mtd_get_mac_ascii devinfo hw_mac_addr)
256 wan_mac=$lan_mac
257 label_mac=$lan_mac
258 ;;
259 belkin,rt1800|\
260 linksys,e7350)
261 lan_mac=$(mtd_get_mac_ascii Config lan_hwaddr)
262 wan_mac=$(mtd_get_mac_ascii Config wan_hwaddr)
263 label_mac=$lan_mac
264 ;;
265 mikrotik,ltap-2hnd)
266 label_mac=$(cat "/sys/firmware/mikrotik/hard_config/mac_base")
267 lan_mac=$label_mac
268 ;;
269 tplink,er605-v2)
270 CI_UBIPART="firmware"
271 label_mac=$(mtd_get_mac_uci_config_ubi "tddp")
272 lan_mac=$label_mac
273 wan_mac=$(macaddr_add "$label_mac" 1)
274 ;;
275 tplink,mr600-v2-eu)
276 label_mac=$(cat "/sys/class/net/eth0/address")
277 wwan_mac=$(macaddr_add $label_mac 1)
278 ucidef_set_interface "wwan0" device "/dev/cdc-wdm0" protocol "qmi" macaddr "$wwan_mac"
279 ;;
280 mikrotik,routerboard-750gr3|\
281 mikrotik,routerboard-760igs|\
282 mikrotik,routerboard-m11g|\
283 mikrotik,routerboard-m33g)
284 label_mac=$(cat "/sys/firmware/mikrotik/hard_config/mac_base")
285 wan_mac=$label_mac
286 lan_mac=$(macaddr_add $label_mac 1)
287 ;;
288 mts,wg430223)
289 wan_mac=$(mtd_get_mac_encrypted_arcadyan "board_data")
290 label_mac=$wan_mac
291 lan_mac=$(macaddr_add "$wan_mac" 2)
292 ;;
293 netgear,eax12)
294 lan_mac=$(mtd_get_mac_ascii Config mac)
295 label_mac=$lan_mac
296 ;;
297 netgear,wax202)
298 lan_mac=$(mtd_get_mac_ascii Config mac)
299 wan_mac=$(macaddr_add "$lan_mac" 1)
300 label_mac=$lan_mac
301 ;;
302 yuncore,ax820)
303 label_mac=$(mtd_get_mac_binary Factory 0x4)
304 ;;
305 esac
306
307 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
308 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
309 [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
310 }
311
312 board_config_update
313 board=$(board_name)
314 ramips_setup_interfaces $board
315 ramips_setup_macs $board
316 board_config_flush
317
318 exit 0