ramips: scripts updates
[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         *"Argus ATP-52B")
51                 name="argus-atp52b"
52                 ;;
53         *"Aztech HW550-3G")
54                 name="hw550-3g"
55                 ;;
56         *"DIR-300 B1")
57                 name="dir-300-b1"
58                 ;;
59         *"DIR-600 B1")
60                 name="dir-600-b1"
61                 ;;
62         *"DIR-600 B2")
63                 name="dir-600-b2"
64                 ;;
65         *"ESR-9753")
66                 name="esr-9753"
67                 ;;
68         *"F5D8235 v1")
69                 name="f5d8235-v1"
70                 ;;
71         *"F5D8235 v2")
72                 name="f5d8235-v2"
73                 ;;
74         *"La Fonera 2.0N")
75                 name="fonera20n"
76                 ;;
77         *"MoFi Network MOFI3500-3GN")
78                 name="mofi3500-3gn"
79                 ;;
80         *"NBG-419N")
81                 name="nbg-419n"
82                 ;;
83         *"NexAira BC2")
84                 name="bc2"
85                 ;;
86         *"NW718")
87                 name="nw718"
88                 ;;
89         *"Omnima MiniEMBWiFi")
90                 name="omni-emb"
91                 ;;
92         *"PWH2004")
93                 name="pwh2004"
94                 ;;
95         *"RT-G32 B1")
96                 name="rt-g32-b1"
97                 ;;
98         *"RT-N15")
99                 name="rt-n15"
100                 ;;
101         *"Sparklan WCR-150GN")
102                 name="wcr-150gn"
103                 ;;
104         *"V22RW-2X2")
105                 name="v22rw-2x2"
106                 ;;
107         *"W502U")
108                 name="w502u"
109                 ;;
110         *"WHR-G300N")
111                 name="whr-g300n"
112                 ;;
113         *"Sitecom WL-351 v1 002")
114                 name="wl-351"
115                 ;;
116         *"WLI-TX4-AG300N")
117                 name="wli-tx4-ag300n"
118                 ;;
119         *"WZR-AGL300NH")
120                 name="wzr-agl300nh"
121                 ;;
122         *"WR512-3GN-like router")
123                 name="wr512-3gn"
124                 ;;
125         *)
126                 name="generic"
127                 ;;
128         esac
129
130         echo $name
131 }