ramips: add D-Link DIR-620 A1 support
[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 }