ramips: add D-Link DIR-620 A1 support
[openwrt/openwrt.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 *"Edimax 3g-6200n")
51 name="3g-6200n"
52 ;;
53 *"Allnet ALL0256N")
54 name="all0256n"
55 ;;
56 *"Allnet ALL5002")
57 name="all5002"
58 ;;
59 *"ARC FreeStation5")
60 name="freestation5"
61 ;;
62 *"Argus ATP-52B")
63 name="argus-atp52b"
64 ;;
65 *"Asus WL-330N")
66 name="wl-330n"
67 ;;
68 *"Asus WL-330N3G")
69 name="wl-330n3g"
70 ;;
71 *"Aztech HW550-3G")
72 name="hw550-3g"
73 ;;
74 *"DIR-300 B1")
75 name="dir-300-b1"
76 ;;
77 *"DIR-600 B1")
78 name="dir-600-b1"
79 ;;
80 *"DIR-600 B2")
81 name="dir-600-b2"
82 ;;
83 *"DIR-620 A1")
84 name="dir-620-a1"
85 ;;
86 *"DAP-1350")
87 name="dap-1350"
88 ;;
89 *"ESR-9753")
90 name="esr-9753"
91 ;;
92 *"F5D8235 v1")
93 name="f5d8235-v1"
94 ;;
95 *"F5D8235 v2")
96 name="f5d8235-v2"
97 ;;
98 *"La Fonera 2.0N")
99 name="fonera20n"
100 ;;
101 *"MoFi Network MOFI3500-3GN")
102 name="mofi3500-3gn"
103 ;;
104 *"NBG-419N")
105 name="nbg-419n"
106 ;;
107 *"NexAira BC2")
108 name="bc2"
109 ;;
110 *"NW718")
111 name="nw718"
112 ;;
113 *"Omnima MiniEMBWiFi")
114 name="omni-emb"
115 ;;
116 *"Petatel PSR-680W"*)
117 name="psr-680w"
118 ;;
119 *"PWH2004")
120 name="pwh2004"
121 ;;
122 *"RT-G32 B1")
123 name="rt-g32-b1"
124 ;;
125 *"RT-N10+")
126 name="rt-n10-plus"
127 ;;
128 *"RT-N15")
129 name="rt-n15"
130 ;;
131 *"RT-N56U")
132 name="rt-n56u"
133 ;;
134 *"Skyline SL-R7205"*)
135 name="sl-r7205"
136 ;;
137 *"Sparklan WCR-150GN")
138 name="wcr-150gn"
139 ;;
140 *"V22RW-2X2")
141 name="v22rw-2x2"
142 ;;
143 *"W502U")
144 name="w502u"
145 ;;
146 *"WHR-G300N")
147 name="whr-g300n"
148 ;;
149 *"Sitecom WL-341 v3")
150 name="wl341v3"
151 ;;
152 *"Sitecom WL-351 v1 002")
153 name="wl-351"
154 ;;
155 *"Tenda W306R V2.0")
156 name="w306r-v20"
157 ;;
158 *"Ralink V11ST-FE")
159 name="v11st-fe"
160 ;;
161 *"WLI-TX4-AG300N")
162 name="wli-tx4-ag300n"
163 ;;
164 *"WZR-AGL300NH")
165 name="wzr-agl300nh"
166 ;;
167 *"WR512-3GN-like router")
168 name="wr512-3gn"
169 ;;
170 *"UR-336UN Wireless N router")
171 name="ur-336un"
172 ;;
173 *"AWB WR6202")
174 name="wr6202"
175 ;;
176 *"XDX RN502J")
177 name="xdxrn502j"
178 ;;
179 *)
180 name="generic"
181 ;;
182 esac
183
184 echo $name
185 }