013412b58905726f1629dba4270fe727c1c362a9
[oweals/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_detect() {
7         local machine
8         local name
9
10         machine=$(awk 'BEGIN{FS="[ \t]+:[ \t]"} /machine/ {print $2}' /proc/cpuinfo)
11
12         case "$machine" in
13         *"3G150B")
14                 name="3g150b"
15                 ;;
16         *"3G300M")
17                 name="3g300m"
18                 ;;
19         *"3g-6200n")
20                 name="3g-6200n"
21                 ;;
22         *"3g-6200nl")
23                 name="3g-6200nl"
24                 ;;
25         *"A5-V11")
26                 name="a5-v11"
27                 ;;
28         *"Air3GII")
29                 name="air3gii"
30                 ;;
31         *"ALL0256N (4M)")
32                 name="all0256n-4M"
33                 ;;
34         *"ALL0256N (8M)")
35                 name="all0256n-8M"
36                 ;;
37         *"ALL5002")
38                 name="all5002"
39                 ;;
40         *"ALL5003")
41                 name="all5003"
42                 ;;
43         *"AR670W")
44                 name="ar670w"
45                 ;;
46         *"AR725W")
47                 name="ar725w"
48                 ;;
49         *"ASL26555 (8M)")
50                 name="asl26555-8M"
51                 ;;
52         *"ASL26555 (16M)")
53                 name="asl26555-16M"
54                 ;;
55         *"ATP-52B")
56                 name="atp-52b"
57                 ;;
58         *"AWAPN2403")
59                 name="awapn2403"
60                 ;;
61         *"AWM002 EVB (4M)")
62                 name="awm002-evb-4M"
63                 ;;
64         *"AWM002 EVB (8M)")
65                 name="awm002-evb-8M"
66                 ;;
67         *"BC2")
68                 name="bc2"
69                 ;;
70         *"BR-6475nD")
71                 name="br-6475nd"
72                 ;;
73         *"Broadway")
74                 name="broadway"
75                 ;;
76         *"Carambola")
77                 name="carambola"
78                 ;;
79         *"CY-SWR1100")
80                 name="cy-swr1100"
81                 ;;
82         *"D105")
83                 name="d105"
84                 ;;
85         *"DAP-1350")
86                 name="dap-1350"
87                 ;;
88         *"DCS-930")
89                 name="dcs-930"
90                 ;;
91         *"DCS-930L B1")
92                 name="dcs-930l-b1"
93                 ;;
94         *"DIR-300 B1")
95                 name="dir-300-b1"
96                 ;;
97         *"DIR-300 B7")
98                 name="dir-300-b7"
99                 ;;
100         *"DIR-320 B1")
101                 name="dir-320-b1"
102                 ;;
103         *"DIR-600 B1")
104                 name="dir-600-b1"
105                 ;;
106         *"DIR-610 A1")
107                 name="dir-610-a1"
108                 ;;
109         *"DIR-615 D")
110                 name="dir-615-d"
111                 ;;
112         *"DIR-615 H1")
113                 name="dir-615-h1"
114                 ;;
115         *"DIR-620 A1")
116                 name="dir-620-a1"
117                 ;;
118         *"DIR-620 D1")
119                 name="dir-620-d1"
120                 ;;
121         *"DIR-645")
122                 name="dir-645"
123                 ;;
124         *"DWR-512 B")
125                 name="dwr-512-b"
126                 ;;
127         *"ESR-9753")
128                 name="esr-9753"
129                 ;;
130         *"F5D8235 v1")
131                 name="f5d8235-v1"
132                 ;;
133         *"F5D8235 v2")
134                 name="f5d8235-v2"
135                 ;;
136         *"F7C027")
137                 name="f7c027"
138                 ;;
139         *"Fonera 2.0N")
140                 name="fonera20n"
141                 ;;
142         *"FreeStation5")
143                 name="freestation5"
144                 ;;
145         *"HG255D")
146                 name="hg255d"
147                 ;;
148         *"HLK-RM04")
149                 name="hlk-rm04"
150                 ;;
151         *"HPM")
152                 name="hpm"
153                 ;;
154         *"HT-TM02")
155                 name="ht-tm02"
156                 ;;
157         *"HW550-3G")
158                 name="hw550-3g"
159                 ;;
160         *"IP2202")
161                 name="ip2202"
162                 ;;
163         *"JHR-N805R")
164                 name="jhr-n805r"
165                 ;;
166         *"JHR-N825R")
167                 name="jhr-n825r"
168                 ;;
169         *"JHR-N926R")
170                 name="jhr-n926r"
171                 ;;
172         *"M3")
173                 name="m3"
174                 ;;
175         *"M4 (4M)")
176                 name="m4-4M"
177                 ;;
178         *"M4 (8M)")
179                 name="m4-8M"
180                 ;;
181         *"Memory 2 Move")
182                 name="m2m"
183                 ;;
184         *"MiniEMBPlug")
185                 name="miniembplug"
186                 ;;
187         *"MiniEMBWiFi")
188                 name="miniembwifi"
189                 ;;
190         *"MOFI3500-3GN")
191                 name="mofi3500-3gn"
192                 ;;
193         *"MPR-A1")
194                 name="mpr-a1"
195                 ;;
196         *"MPR-A2")
197                 name="mpr-a2"
198                 ;;
199         *"MR-102N")
200                 name="mr-102n"
201                 ;;
202         *"MT7688 evaluation"*)
203                 name="mt7688"
204                 ;;
205         *"MZK-DP150N")
206                 name="mzk-dp150n"
207                 ;;
208         *"MZK-W300NH2"*)
209                 name="mzk-w300nh2"
210                 ;;
211         *"MZK-WDPR"*)
212                 name="mzk-wdpr"
213                 ;;
214         *"NBG-419N")
215                 name="nbg-419n"
216                 ;;
217         *"NBG-419N v2")
218                 name="nbg-419n2"
219                 ;;
220         *"NCS601W")
221                 name="ncs601w"
222                 ;;
223         *"NixcoreX1 (8M)")
224                 name="nixcore-x1-8M"
225                 ;;
226         *"NixcoreX1 (16M)")
227                 name="nixcore-x1-16M"
228                 ;;
229         *"NW718")
230                 name="nw718"
231                 ;;
232         *"PSR-680W"*)
233                 name="psr-680w"
234                 ;;
235         *"PWH2004")
236                 name="pwh2004"
237                 ;;
238         *"PX-4885 (4M)")
239                 name="px-4885-4M"
240                 ;;
241         *"PX-4885 (8M)")
242                 name="px-4885-8M"
243                 ;;
244         *"RN502J")
245                 name="xdxrn502j"
246                 ;;
247         *"RT5350F-OLinuXino")
248                 name="rt5350f-olinuxino"
249                 ;;
250         *"RT5350F-OLinuXino-EVB")
251                 name="rt5350f-olinuxino-evb"
252                 ;;
253         *"RT-G32 B1")
254                 name="rt-g32-b1"
255                 ;;
256         *"RT-N10+")
257                 name="rt-n10-plus"
258                 ;;
259         *"RT-N13U")
260                 name="rt-n13u"
261                 ;;
262         *"RT-N15")
263                 name="rt-n15"
264                 ;;
265         *"RT-N56U")
266                 name="rt-n56u"
267                 ;;
268         *"RUT5XX")
269                 name="rut5xx"
270                 ;;
271         *"SL-R7205"*)
272                 name="sl-r7205"
273                 ;;
274         *"TEW-638APB v2")
275                 name="tew-638apb-v2"
276                 ;;
277         *"TEW-691GR")
278                 name="tew-691gr"
279                 ;;
280         *"TEW-692GR")
281                 name="tew-692gr"
282                 ;;
283         *"TEW-714TRU")
284                 name="tew-714tru"
285                 ;;
286         *"UR-326N4G")
287                 name="ur-326n4g"
288                 ;;
289         *"UR-336UN")
290                 name="ur-336un"
291                 ;;
292         *"V11ST-FE")
293                 name="v11st-fe"
294                 ;;
295         *"V22RW-2X2")
296                 name="v22rw-2x2"
297                 ;;
298         *"VoCore (8M)")
299                 name="vocore-8M"
300                 ;;
301         *"VoCore (16M)")
302                 name="vocore-16M"
303                 ;;
304         *"W150M")
305                 name="w150m"
306                 ;;
307         *"W306R V2.0")
308                 name="w306r-v20"
309                 ;;
310         *"W502U")
311                 name="w502u"
312                 ;;
313         *"WCR-150GN")
314                 name="wcr-150gn"
315                 ;;
316         *"WHR-G300N")
317                 name="whr-g300n"
318                 ;;
319         *"WIZARD 8800")
320                 name="wizard8800"
321                 ;;
322         *"WizFi630A")
323                 name="wizfi630a"
324                 ;;
325         *"WL-330N")
326                 name="wl-330n"
327                 ;;
328         *"WL-330N3G")
329                 name="wl-330n3g"
330                 ;;
331         *"WL-351 v1 002")
332                 name="wl-351"
333                 ;;
334         *"WLI-TX4-AG300N")
335                 name="wli-tx4-ag300n"
336                 ;;
337         *"WLR-6000")
338                 name="wlr-6000"
339                 ;;
340         *"WMDR-143N")
341                 name="wmdr-143n"
342                 ;;
343         *"WNCE2001")
344                 name="wnce2001"
345                 ;;
346         *"WR512-3GN (4M)")
347                 name="wr512-3gn-4M"
348                 ;;
349         *"WR512-3GN (8M)")
350                 name="wr512-3gn-8M"
351                 ;;
352         *"WR6202")
353                 name="wr6202"
354                 ;;
355         *"WT1520 (4M)")
356                 name="wt1520-4M"
357                 ;;
358         *"WT1520 (8M)")
359                 name="wt1520-8M"
360                 ;;
361         *"WZR-AGL300NH")
362                 name="wzr-agl300nh"
363                 ;;
364         *"X5")
365                 name="x5"
366                 ;;
367         *"X8")
368                 name="x8"
369                 ;;
370         *"ZyXEL Keenetic")
371                 name="kn"
372                 ;;
373         esac
374
375         # use generic board detect if no name is set
376         [ -z "$name" ] && return
377
378         [ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/"
379
380         echo "$name" > /tmp/sysinfo/board_name
381         echo "$machine" > /tmp/sysinfo/model
382 }