ramips: add userspace support for the Edimax BR-6425
[openwrt/staging/chunkeey.git] / target / linux / ramips / base-files / lib / ramips.sh
1 #!/bin/sh
2 #
3 # Copyright (C) 2010 OpenWrt.org
4 #
5
6 ramips_get_mac_binary()
7 {
8 local mtdname="$1"
9 local seek="$2"
10 local part
11
12 . /lib/functions.sh
13
14 part=$(find_mtd_part "$mtdname")
15 if [ -z "$part" ]; then
16 echo "ramips_get_mac_binary: partition $mtdname not found!" >&2
17 return
18 fi
19
20 dd bs=1 skip=$seek count=6 if=$part 2>/dev/null | /usr/sbin/maccalc bin2mac
21 }
22
23 ramips_get_mac_nvram()
24 {
25 local mtdname="$1"
26 local key="$2"
27 local part
28 local mac_dirty
29
30 . /lib/functions.sh
31
32 part=$(find_mtd_part "$mtdname")
33 if [ -z "$part" ]; then
34 echo "ramips_get_mac_nvram: partition $mtdname not found!" >&2
35 return
36 fi
37
38 mac_dirty=$(strings "$part" | sed -n 's/'"$key"'=//p')
39 # "canonicalize" mac
40 /usr/sbin/maccalc add "$mac_dirty" 0
41 }
42
43 ramips_board_name() {
44 local machine
45 local name
46
47 machine=$(awk 'BEGIN{FS="[ \t]+:[ \t]"} /machine/ {print $2}' /proc/cpuinfo)
48
49 case "$machine" in
50 *"8devices Carambola")
51 name="carambola"
52 ;;
53 *"Edimax 3g-6200n")
54 name="3g-6200n"
55 ;;
56 *"AirLive Air3GII")
57 name="air3gii"
58 ;;
59 *"Edimax BR-6425")
60 name="br6425"
61 ;;
62 *"Allnet ALL0239-3G")
63 name="all0239-3g"
64 ;;
65 *"Allnet ALL0256N")
66 name="all0256n"
67 ;;
68 *"Allnet ALL5002")
69 name="all5002"
70 ;;
71 *"ARC FreeStation5")
72 name="freestation5"
73 ;;
74 *"Argus ATP-52B")
75 name="argus-atp52b"
76 ;;
77 *"BR6524N")
78 name="br6524n"
79 ;;
80 *"Asus WL-330N")
81 name="wl-330n"
82 ;;
83 *"Asus WL-330N3G")
84 name="wl-330n3g"
85 ;;
86 *"Aztech HW550-3G")
87 name="hw550-3g"
88 ;;
89 *"DIR-300 B1")
90 name="dir-300-b1"
91 ;;
92 *"DIR-600 B1")
93 name="dir-600-b1"
94 ;;
95 *"DIR-600 B2")
96 name="dir-600-b2"
97 ;;
98 *"DIR-620 A1")
99 name="dir-620-a1"
100 ;;
101 *"DIR-615 H1")
102 name="dir-615-h1"
103 ;;
104 *"DIR-615 D")
105 name="dir-615-d"
106 ;;
107 *"DIR-645")
108 name="dir-645"
109 ;;
110 *"DAP-1350")
111 name="dap-1350"
112 ;;
113 *"ESR-9753")
114 name="esr-9753"
115 ;;
116 *"F5D8235 v1")
117 name="f5d8235-v1"
118 ;;
119 *"F5D8235 v2")
120 name="f5d8235-v2"
121 ;;
122 *"Hauppauge Broadway")
123 name="broadway"
124 ;;
125 *"La Fonera 2.0N")
126 name="fonera20n"
127 ;;
128 *"Asus RT-N13U")
129 name="rt-n13u"
130 ;;
131 *"MoFi Network MOFI3500-3GN")
132 name="mofi3500-3gn"
133 ;;
134 *"NBG-419N")
135 name="nbg-419n"
136 ;;
137 *"NexAira BC2")
138 name="bc2"
139 ;;
140 *"NW718")
141 name="nw718"
142 ;;
143 *"Omnima MiniEMBWiFi")
144 name="omni-emb"
145 ;;
146 *"Petatel PSR-680W"*)
147 name="psr-680w"
148 ;;
149 *"Planex MZK-W300NH2"*)
150 name="mzk-w300nh2"
151 ;;
152 *"PWH2004")
153 name="pwh2004"
154 ;;
155 *"RT-G32 B1")
156 name="rt-g32-b1"
157 ;;
158 *"RT-N10+")
159 name="rt-n10-plus"
160 ;;
161 *"RT-N15")
162 name="rt-n15"
163 ;;
164 *"RT-N56U")
165 name="rt-n56u"
166 ;;
167 *"Skyline SL-R7205"*)
168 name="sl-r7205"
169 ;;
170 *"Sparklan WCR-150GN")
171 name="wcr-150gn"
172 ;;
173 *"V22RW-2X2")
174 name="v22rw-2x2"
175 ;;
176 *"W502U")
177 name="w502u"
178 ;;
179 *"WHR-G300N")
180 name="whr-g300n"
181 ;;
182 *"Sitecom WL-341 v3")
183 name="wl341v3"
184 ;;
185 *"Sitecom WL-351 v1 002")
186 name="wl-351"
187 ;;
188 *"Tenda 3G300M")
189 name="3g300m"
190 ;;
191 *"Tenda W306R V2.0")
192 name="w306r-v20"
193 ;;
194 *"TEW-691GR")
195 name="tew-691gr"
196 ;;
197 *"TEW-692GR")
198 name="tew-692gr"
199 ;;
200 *"Ralink V11ST-FE")
201 name="v11st-fe"
202 ;;
203 *"WLI-TX4-AG300N")
204 name="wli-tx4-ag300n"
205 ;;
206 *"WZR-AGL300NH")
207 name="wzr-agl300nh"
208 ;;
209 *"WR512-3GN-like router")
210 name="wr512-3gn"
211 ;;
212 *"UR-336UN Wireless N router")
213 name="ur-336un"
214 ;;
215 *"AWB WR6202")
216 name="wr6202"
217 ;;
218 *"XDX RN502J")
219 name="xdxrn502j"
220 ;;
221 *)
222 name="generic"
223 ;;
224 esac
225
226 echo $name
227 }