4527414e6e6cdf22293ff6088af1f00624459292
[openwrt/openwrt.git] / target / linux / ramips / base-files / lib / ramips.sh
1 #!/bin/sh
2 #
3 # Copyright (C) 2010-2013 OpenWrt.org
4 #
5
6 RAMIPS_BOARD_NAME=
7 RAMIPS_MODEL=
8
9 ramips_board_detect() {
10 local machine
11 local name
12
13 machine=$(awk 'BEGIN{FS="[ \t]+:[ \t]"} /machine/ {print $2}' /proc/cpuinfo)
14
15 case "$machine" in
16 *"7Links PX-4885")
17 name="px4885"
18 ;;
19 *"8devices Carambola")
20 name="carambola"
21 ;;
22 *"Edimax 3g-6200n")
23 name="3g-6200n"
24 ;;
25 *"Edimax 3g-6200nl")
26 name="3g-6200nl"
27 ;;
28 *"A5-V11")
29 name="a5-v11"
30 ;;
31 *"Aigale Ai-BR100")
32 name="ai-br100"
33 ;;
34 *"Airlink101 AR670W")
35 name="ar670w"
36 ;;
37 *"Airlink101 AR725W")
38 name="ar725w"
39 ;;
40 *"AirLive Air3GII")
41 name="air3gii"
42 ;;
43 *"Edimax BR-6425")
44 name="br6425"
45 ;;
46 *"Allnet ALL0239-3G")
47 name="all0239-3g"
48 ;;
49 *"Allnet ALL0256N")
50 name="all0256n"
51 ;;
52 *"Allnet ALL5002")
53 name="all5002"
54 ;;
55 *"Allnet ALL5003")
56 name="all5003"
57 ;;
58 *"ARC FreeStation5")
59 name="freestation5"
60 ;;
61 *"Archer C20i")
62 name="c20i"
63 ;;
64 *"Argus ATP-52B")
65 name="argus-atp52b"
66 ;;
67 *"AsiaRF AWM002 EVB")
68 name="awm002-evb"
69 ;;
70 *"AsiaRF AWM003 EVB")
71 name="awm003-evb"
72 ;;
73 *"AsiaRF AWAPN2403")
74 name="awapn2403"
75 ;;
76 *"Asus WL-330N")
77 name="wl-330n"
78 ;;
79 *"Asus WL-330N3G")
80 name="wl-330n3g"
81 ;;
82 *"Alpha ASL26555")
83 name="asl26555"
84 ;;
85 *"Aztech HW550-3G")
86 name="hw550-3g"
87 ;;
88 *"Buffalo WSR-600DHP")
89 name="wsr-600"
90 ;;
91 *"Buffalo WSR-1166DHP")
92 name="wsr-1166"
93 ;;
94 *"Firefly FireWRT")
95 name="firewrt"
96 ;;
97 *"CY-SWR1100")
98 name="cy-swr1100"
99 ;;
100 *"DCS-930")
101 name="dcs-930"
102 ;;
103 *"DIR-300 B1")
104 name="dir-300-b1"
105 ;;
106 *"DIR-300 B7")
107 name="dir-300-b7"
108 ;;
109 *"DIR-320 B1")
110 name="dir-320-b1"
111 ;;
112 *"DIR-600 B1")
113 name="dir-600-b1"
114 ;;
115 *"DIR-600 B2")
116 name="dir-600-b2"
117 ;;
118 *"DIR-610 A1")
119 name="dir-610-a1"
120 ;;
121 *"DIR-620 A1")
122 name="dir-620-a1"
123 ;;
124 *"DIR-620 D1")
125 name="dir-620-d1"
126 ;;
127 *"DIR-615 H1")
128 name="dir-615-h1"
129 ;;
130 *"DIR-615 D")
131 name="dir-615-d"
132 ;;
133 *"DIR-645")
134 name="dir-645"
135 ;;
136 *"DIR-810L")
137 name="dir-810l"
138 ;;
139 *"DIR-860L B1")
140 name="dir-860l-b1"
141 ;;
142 *"DAP-1350")
143 name="dap-1350"
144 ;;
145 *"ESR-9753")
146 name="esr-9753"
147 ;;
148 *"EASYACC WI-STOR WIZARD 8800")
149 name="wizard8800"
150 ;;
151 *"Edimax BR-6475nD")
152 name="br-6475nd"
153 ;;
154 *"F7C027")
155 name="f7c027"
156 ;;
157 *"F5D8235 v1")
158 name="f5d8235-v1"
159 ;;
160 *"F5D8235 v2")
161 name="f5d8235-v2"
162 ;;
163 *"Hauppauge Broadway")
164 name="broadway"
165 ;;
166 *"Huawei D105")
167 name="d105"
168 ;;
169 *"La Fonera 2.0N")
170 name="fonera20n"
171 ;;
172 *"Asus RT-N14U")
173 name="rt-n14u"
174 ;;
175 *"Asus RT-N13U")
176 name="rt-n13u"
177 ;;
178 *"MoFi Network MOFI3500-3GN")
179 name="mofi3500-3gn"
180 ;;
181 *"HILINK HLK-RM04")
182 name="hlk-rm04"
183 ;;
184 *"HooToo HT-TM02")
185 name="ht-tm02"
186 ;;
187 *"HAME MPR-A1")
188 name="mpr-a1"
189 ;;
190 *"HAME MPR-A2")
191 name="mpr-a2"
192 ;;
193 *"Kingston MLW221")
194 name="mlw221"
195 ;;
196 *"Kingston MLWG2")
197 name="mlwg2"
198 ;;
199 *"Linksys E1700")
200 name="e1700"
201 ;;
202 *"Planex MZK-750DHP")
203 name="mzk-750dhp"
204 ;;
205 *"NBG-419N")
206 name="nbg-419n"
207 ;;
208 *"Netgear WNCE2001")
209 name="wnce2001"
210 ;;
211 *"NexAira BC2")
212 name="bc2"
213 ;;
214 *"Nexx WT1520")
215 name="wt1520"
216 ;;
217 *"Nexx WT3020")
218 name="wt3020"
219 ;;
220 *"NW718")
221 name="nw718"
222 ;;
223 *"Intenso Memory 2 Move")
224 name="m2m"
225 ;;
226 *"Omnima EMB HPM")
227 name="omni-emb-hpm"
228 ;;
229 *"Omnima MiniEMBWiFi")
230 name="omni-emb"
231 ;;
232 *"Omnima MiniPlug")
233 name="omni-plug"
234 ;;
235 *"Petatel PSR-680W"*)
236 name="psr-680w"
237 ;;
238 *"Planex MZK-W300NH2"*)
239 name="mzk-w300nh2"
240 ;;
241 *"Poray IP2202")
242 name="ip2202"
243 ;;
244 *"Poray M3")
245 name="m3"
246 ;;
247 *"Poray M4")
248 name="m4"
249 ;;
250 *"Poray X5")
251 name="x5"
252 ;;
253 *"Poray X8")
254 name="x8"
255 ;;
256 *"PWH2004")
257 name="pwh2004"
258 ;;
259 *"Asus RP-N53")
260 name="rp-n53"
261 ;;
262 *"Ralink MT7620a + MT7530 evaluation board")
263 name="mt7620a_mt7530"
264 ;;
265 *"RT-G32 B1")
266 name="rt-g32-b1"
267 ;;
268 *"RT-N10+")
269 name="rt-n10-plus"
270 ;;
271 *"RT-N15")
272 name="rt-n15"
273 ;;
274 *"RT-N56U")
275 name="rt-n56u"
276 ;;
277 *"RUT5XX")
278 name="rut5xx"
279 ;;
280 *"Skyline SL-R7205"*)
281 name="sl-r7205"
282 ;;
283 *"Sparklan WCR-150GN")
284 name="wcr-150gn"
285 ;;
286 *"V22RW-2X2")
287 name="v22rw-2x2"
288 ;;
289 *"VoCore")
290 name="vocore"
291 ;;
292 *"W502U")
293 name="w502u"
294 ;;
295 *"WMR-300")
296 name="wmr300"
297 ;;
298 *"WHR-300HP2")
299 name="whr-300hp2"
300 ;;
301 *"WHR-600D")
302 name="whr-600d"
303 ;;
304 *"WHR-1166D")
305 name="whr-1166d"
306 ;;
307 *"WHR-G300N")
308 name="whr-g300n"
309 ;;
310 *"Sitecom WL-341 v3")
311 name="wl341v3"
312 ;;
313 *"Sitecom WL-351 v1 002")
314 name="wl-351"
315 ;;
316 *"Tenda 3G300M")
317 name="3g300m"
318 ;;
319 *"Tenda 3G150B")
320 name="3g150b"
321 ;;
322 *"Tenda W306R V2.0")
323 name="w306r-v20"
324 ;;
325 *"Tenda W150M")
326 name="w150m"
327 ;;
328 *"TEW-691GR")
329 name="tew-691gr"
330 ;;
331 *"TEW-692GR")
332 name="tew-692gr"
333 ;;
334 *"Ralink V11ST-FE")
335 name="v11st-fe"
336 ;;
337 *"WLI-TX4-AG300N")
338 name="wli-tx4-ag300n"
339 ;;
340 *"WZR-AGL300NH")
341 name="wzr-agl300nh"
342 ;;
343 *"WR512-3GN-like router")
344 name="wr512-3gn"
345 ;;
346 *"UR-326N4G Wireless N router")
347 name="ur-326n4g"
348 ;;
349 *"UR-336UN Wireless N router")
350 name="ur-336un"
351 ;;
352 *"AWB WR6202")
353 name="wr6202"
354 ;;
355 *"XDX RN502J")
356 name="xdxrn502j"
357 ;;
358 *"HG255D")
359 name="hg255d"
360 ;;
361 *"V22SG")
362 name="v22sg"
363 ;;
364 *"WRTNODE")
365 name="wrtnode"
366 ;;
367 *"Wansview NCS601W")
368 name="ncs601w"
369 ;;
370 *"Xiaomi MiWiFi Mini")
371 name="xiaomi-miwifi-mini"
372 ;;
373 *"Sercomm NA930")
374 name="na930"
375 ;;
376 *"Zbtlink ZBT-WA05")
377 name="zbt-wa05"
378 ;;
379 *"ZBT WR8305RT")
380 name="wr8305rt"
381 ;;
382 *"Lenovo Y1")
383 name="y1"
384 ;;
385 *"Lenovo Y1S")
386 name="y1s"
387 ;;
388 *"Mediatek MT7621 evaluation board")
389 name="mt7621"
390 ;;
391 *"Mediatek MT7628AN evaluation board")
392 name="mt7628"
393 ;;
394 *)
395 name="generic"
396 ;;
397 esac
398
399 [ -z "$RAMIPS_BOARD_NAME" ] && RAMIPS_BOARD_NAME="$name"
400 [ -z "$RAMIPS_MODEL" ] && RAMIPS_MODEL="$machine"
401
402 [ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/"
403
404 echo "$RAMIPS_BOARD_NAME" > /tmp/sysinfo/board_name
405 echo "$RAMIPS_MODEL" > /tmp/sysinfo/model
406 }
407
408 ramips_board_name() {
409 local name
410
411 [ -f /tmp/sysinfo/board_name ] && name=$(cat /tmp/sysinfo/board_name)
412 [ -z "$name" ] && name="unknown"
413
414 echo "$name"
415 }