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