d6b19c981eab991f7b5e26a288273002e28a6506
[openwrt/staging/jow.git] / target / linux / ipq40xx / base-files / etc / board.d / 02_network
1 #
2 # Copyright (c) 2015 The Linux Foundation. All rights reserved.
3 # Copyright (c) 2011-2015 OpenWrt.org
4 #
5
6 . /lib/functions/uci-defaults.sh
7 . /lib/functions/system.sh
8
9 ipq40xx_setup_interfaces()
10 {
11 local board="$1"
12
13 case "$board" in
14 8dev,habanero-dvk|\
15 avm,fritzbox-4040|\
16 asus,rt-ac42u|\
17 asus,rt-ac58u|\
18 linksys,ea6350v3|\
19 linksys,ea8300|\
20 linksys,mr8300|\
21 mikrotik,hap-ac2|\
22 mikrotik,hap-ac3|\
23 mikrotik,hap-ac3-lte6-kit|\
24 p2w,r619ac-64m|\
25 p2w,r619ac-128m|\
26 pakedge,wr-1|\
27 zyxel,nbg6617)
28 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
29 ;;
30 8dev,jalapeno|\
31 alfa-network,ap120c-ac|\
32 asus,map-ac2200|\
33 cilab,meshpoint-one|\
34 edgecore,ecw5211|\
35 glinet,gl-ap1300|\
36 glinet,gl-b2200|\
37 google,wifi|\
38 linksys,whw03v2|\
39 luma,wrtq-329acn|\
40 mikrotik,cap-ac|\
41 netgear,wac510|\
42 sony,ncp-hg100-cellular|\
43 wallys,dr40x9|\
44 zte,mf18a|\
45 zte,mf289f)
46 ucidef_set_interfaces_lan_wan "lan" "wan"
47 ;;
48 aruba,ap-303|\
49 aruba,ap-365|\
50 avm,fritzrepeater-1200|\
51 dlink,dap-2610|\
52 extreme-networks,ws-ap3915i|\
53 meraki,mr33|\
54 meraki,mr74|\
55 mikrotik,lhgg-60ad|\
56 mikrotik,sxtsq-5-ac|\
57 netgear,ex6100v2|\
58 netgear,ex6150v2)
59 ucidef_set_interface_lan "lan"
60 ;;
61 avm,fritzbox-7530)
62 ucidef_set_interface_lan "lan1 lan2 lan3 lan4"
63 ;;
64 avm,fritzrepeater-3000|\
65 cellc,rtl30vw)
66 ucidef_set_interface_lan "lan1 lan2"
67 ;;
68 compex,wpj428)
69 ucidef_set_interface_lan "lan1 lan2"
70 ;;
71 linksys,whw01)
72 ucidef_set_interface_lan "eth1 eth2"
73 ;;
74 glinet,gl-a1300|\
75 glinet,gl-b1300|\
76 mobipromo,cm520-79f)
77 ucidef_set_interfaces_lan_wan "lan1 lan2" "wan"
78 ;;
79 mikrotik,wap-ac|\
80 mikrotik,wap-ac-lte|\
81 mikrotik,wap-r-ac)
82 ucidef_set_interface_lan "sw-eth1 sw-eth2"
83 ;;
84 aruba,ap-303h|\
85 ezviz,cs-w3-wd1200g-eup|\
86 netgear,rbr50|\
87 netgear,rbs50|\
88 netgear,srr60|\
89 netgear,srs60)
90 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3" "wan"
91 ;;
92 openmesh,a42|\
93 openmesh,a62)
94 ucidef_set_interfaces_lan_wan "ethernet2" "ethernet1"
95 ;;
96 plasmacloud,pa1200|\
97 plasmacloud,pa2200)
98 ucidef_set_interfaces_lan_wan "ethernet1" "ethernet2"
99 ;;
100 qxwlan,e2600ac-c1)
101 ucidef_set_interfaces_lan_wan "sw-eth1" "sw-eth2"
102 ;;
103 qxwlan,e2600ac-c2)
104 ucidef_set_interfaces_lan_wan "sw-eth1 sw-eth2" "sw-eth3"
105 ;;
106 zte,mf286d)
107 ucidef_set_interfaces_lan_wan "lan2 lan3 lan4" "wan"
108 ;;
109 *)
110 echo "Unsupported hardware. Network interfaces not initialized"
111 ;;
112 esac
113 }
114
115 ipq40xx_setup_dsl()
116 {
117 local board="$1"
118 local annex="j"
119 local tone="b"
120 local xfer_mode=""
121
122 case "$board" in
123 avm,fritzbox-7530)
124 ;;
125 *)
126 return 0
127 ;;
128 esac
129
130 ucidef_add_atm_bridge "1" "32" "llc" "bridged" "dsl"
131 ucidef_add_vdsl_modem "$annex" "$tone" "$xfer_mode"
132 ucidef_set_interface_wan "dsl0" "pppoe"
133 }
134
135 ipq40xx_setup_macs()
136 {
137 local board="$1"
138 local lan_mac=""
139 local wan_mac=""
140 local label_mac=""
141
142 case "$board" in
143 8dev,habanero-dvk)
144 label_mac=$(mtd_get_mac_binary "ART" 0x1006)
145 ;;
146 asus,rt-ac42u)
147 label_mac=$(mtd_get_mac_binary_ubi Factory 0x1006)
148 ;;
149 asus,rt-ac58u)
150 wan_mac=$(mtd_get_mac_binary_ubi Factory 0x1006)
151 lan_mac=$(mtd_get_mac_binary_ubi Factory 0x5006)
152 label_mac=$wan_mac
153 ;;
154 avm,fritzbox-7530)
155 local tffsdev=$(find_mtd_chardev "nand-tffs")
156 wan_mac=$(/usr/bin/fritz_tffs_nand -b -d $tffsdev -n macdsl)
157 ;;
158 cilab,meshpoint-one)
159 label_mac=$(mtd_get_mac_binary "ART" 0x1006)
160 ;;
161 devolo,magic-2-wifi-next)
162 lan_mac=$(mtd_get_mac_ascii APPSBLENV MacAddress0)
163 label_mac=$lan_mac
164 ;;
165 dlink,dap-2610)
166 lan_mac=$(mtd_get_mac_ascii bdcfg lanmac)
167 label_mac=$lan_mac
168 ;;
169 engenius,eap2200|\
170 engenius,emd1)
171 lan_mac=$(mtd_get_mac_ascii 0:APPSBLENV ethaddr)
172 label_mac=$lan_mac
173 ;;
174 engenius,emr3500)
175 wan_mac=$(mtd_get_mac_ascii 0:APPSBLENV wanaddr)
176 lan_mac=$(mtd_get_mac_ascii 0:APPSBLENV ethaddr)
177 label_mac=$wan_mac
178 ;;
179 engenius,ens620ext)
180 wan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
181 lan_mac=$(macaddr_add "$wan_mac" 1)
182 ;;
183 ezviz,cs-w3-wd1200g-eup)
184 label_mac=$(mtd_get_mac_binary "ART" 0x6)
185 ;;
186 google,wifi)
187 wan_mac=$(get_mac_label)
188 lan_mac=$(macaddr_add "$wan_mac" 1)
189 ;;
190 linksys,ea6350v3|\
191 linksys,ea8300 |\
192 linksys,mr8300)
193 wan_mac=$(mtd_get_mac_ascii devinfo hw_mac_addr)
194 lan_mac=$(macaddr_add "$wan_mac" 1)
195 ;;
196 mikrotik,cap-ac |\
197 mikrotik,hap-ac2|\
198 mikrotik,hap-ac3|\
199 mikrotik,hap-ac3-lte6-kit)
200 wan_mac=$(cat /sys/firmware/mikrotik/hard_config/mac_base)
201 lan_mac=$(macaddr_add $wan_mac 1)
202 label_mac="$wan_mac"
203 ;;
204 mikrotik,lhgg-60ad|\
205 mikrotik,sxtsq-5-ac)
206 lan_mac=$(cat /sys/firmware/mikrotik/hard_config/mac_base)
207 label_mac="$lan_mac"
208 ;;
209 netgear,rbr50|\
210 netgear,rbs50|\
211 netgear,srr60|\
212 netgear,srs60|\
213 pakedge,wr-1)
214 wan_mac=$(macaddr_add $(get_mac_label) 1)
215 ;;
216 esac
217
218 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
219 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
220 [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
221 }
222
223 board_config_update
224 board=$(board_name)
225 ipq40xx_setup_interfaces $board
226 ipq40xx_setup_dsl $board
227 ipq40xx_setup_macs $board
228 board_config_flush
229
230 exit 0