ramips: add support for the ARC FreeStation5 board, also fix WCR-150GN network setup...
[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         *"Allnet ALL0256N")
51                 name="all0256n"
52                 ;;
53         *"ARC FreeStation5")
54                 name="freestation5"
55                 ;;
56         *"Argus ATP-52B")
57                 name="argus-atp52b"
58                 ;;
59         *"Asus WL-330N")
60                 name="wl-330n"
61                 ;;
62         *"Aztech HW550-3G")
63                 name="hw550-3g"
64                 ;;
65         *"DIR-300 B1")
66                 name="dir-300-b1"
67                 ;;
68         *"DIR-600 B1")
69                 name="dir-600-b1"
70                 ;;
71         *"DIR-600 B2")
72                 name="dir-600-b2"
73                 ;;
74         *"ESR-9753")
75                 name="esr-9753"
76                 ;;
77         *"F5D8235 v1")
78                 name="f5d8235-v1"
79                 ;;
80         *"F5D8235 v2")
81                 name="f5d8235-v2"
82                 ;;
83         *"La Fonera 2.0N")
84                 name="fonera20n"
85                 ;;
86         *"MoFi Network MOFI3500-3GN")
87                 name="mofi3500-3gn"
88                 ;;
89         *"NBG-419N")
90                 name="nbg-419n"
91                 ;;
92         *"NexAira BC2")
93                 name="bc2"
94                 ;;
95         *"NW718")
96                 name="nw718"
97                 ;;
98         *"Omnima MiniEMBWiFi")
99                 name="omni-emb"
100                 ;;
101         *"PWH2004")
102                 name="pwh2004"
103                 ;;
104         *"RT-G32 B1")
105                 name="rt-g32-b1"
106                 ;;
107         *"RT-N10+")
108                 name="rt-n10-plus"
109                 ;;
110         *"RT-N15")
111                 name="rt-n15"
112                 ;;
113         *"RT-N56U")
114                 name="rt-n56u"
115                 ;;
116         *"Skyline SL-R7205"*)
117                 name="sl-r7205"
118                 ;;
119         *"Sparklan WCR-150GN")
120                 name="wcr-150gn"
121                 ;;
122         *"V22RW-2X2")
123                 name="v22rw-2x2"
124                 ;;
125         *"W502U")
126                 name="w502u"
127                 ;;
128         *"WHR-G300N")
129                 name="whr-g300n"
130                 ;;
131         *"Sitecom WL-341 v3")
132                 name="wl341v3"
133                 ;;
134         *"Sitecom WL-351 v1 002")
135                 name="wl-351"
136                 ;;
137         *"Ralink V11ST-FE")
138                 name="v11st-fe"
139                 ;;
140         *"WLI-TX4-AG300N")
141                 name="wli-tx4-ag300n"
142                 ;;
143         *"WZR-AGL300NH")
144                 name="wzr-agl300nh"
145                 ;;
146         *"WR512-3GN-like router")
147                 name="wr512-3gn"
148                 ;;
149         *"AWB WR6202")
150                 name="wr6202"
151                 ;;
152         *"XDX RN502J")
153                 name="xdxrn502j"
154                 ;;
155         *)
156                 name="generic"
157                 ;;
158         esac
159
160         echo $name
161 }