106a61352c1ace7f3564bf111839df6c0e2a315a
[openwrt.git] / target / linux / ramips / base-files / etc / uci-defaults / network
1 #!/bin/sh
2
3 . /etc/functions.sh
4 . /lib/ramips.sh
5 . /lib/functions/uci-defaults.sh
6
7 if [ ! -x /usr/sbin/maccalc ]; then
8         echo "$0: maccalc not found!"
9         return
10 fi
11
12 ramips_setup_interfaces()
13 {
14         local board="$1"
15
16         ucidef_set_interface_loopback
17
18         case $board in
19         all0256n | \
20         all5002 | \
21         dir-615-h1 | \
22         wl-330n)
23                 ucidef_set_interface_lan "eth0.1"
24                 ;;
25
26         3g-6200n | \
27         argus-atp52b | \
28         b2c | \
29         nw718 | \
30         psr-680w | \
31         sl-r7205 | \
32         w502u | \
33         wr6202)
34                 ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
35                 ;;
36
37         f5d8235-v1 | \
38         f5d8235-v2 | \
39         ur-336un)
40                 ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
41                 ;;
42
43         v11st-fe)
44                 ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
45                 ucidef_add_switch "switch0" "1" "1"
46                 ucidef_add_switch_vlan "switch0" "1" "1 2 3 4 5t"
47                 ucidef_add_switch_vlan "switch0" "2" "0 5t"
48                 ;;
49
50         rt-n15 | \
51         wl-351)
52                 ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
53                 ucidef_add_switch "switch0" "1" "1"
54                 ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 5t"
55                 ucidef_add_switch_vlan "switch0" "2" "4 5t"
56                 ;;
57
58         rt-n56u)
59                 ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
60                 ucidef_add_switch "switch0" "1" "1"
61                 ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 8t"
62                 ucidef_add_switch_vlan "switch0" "2" "4 8t"
63                 ;;
64
65         freestation5 | \
66         wcr-150gn)
67                 ucidef_set_interfaces_lan_wan "eth0.2" "eth0.1"
68                 ;;
69
70         wli-tx4-ag300n)
71                 ucidef_set_interface_lan "eth0"
72                 ;;
73
74         *)
75                 RT3X5X=`cat /proc/cpuinfo | grep RT3.5`
76                 if [ -n "${RT3X5X}" ]; then
77                         ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
78                 else
79                         ucidef_set_interfaces_lan_wan "eth0" "eth1"
80                 fi
81                 ;;
82         esac
83 }
84
85 ramips_setup_macs()
86 {
87         local board="$1"
88         local lan_mac=""
89         local wan_mac=""
90
91         case $board in
92         all0256n | \
93         all5002 | \
94         dir-615-h1)
95                 lan_mac=$(ramips_get_mac_binary factory 40)
96                 ;;
97         3g-6200n | \
98         argus-atp52b | \
99         bc2 | \
100         f5d8235-v1 | \
101         nw718 | \
102         psr-680w | \
103         rt-n15 | \
104         sl-r7205 | \
105         wl-351)
106                 lan_mac=$(ramips_get_mac_binary factory 4)
107                 wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 1)
108                 ;;
109
110         w306r-v20)
111                 lan_mac=$(ramips_get_mac_binary factory 4)
112                 wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 5)
113                 ;;
114
115         fonera20n)
116                 lan_mac=$(ramips_get_mac_binary factory 40)
117                 wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 1)
118                 ;;
119
120         dir-300-b1 |\
121         dir-300-b2 |\
122         dir-600-b1)
123                 lan_mac=$(ramips_get_mac_binary devdata 16388)
124                 wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 1)
125                 ;;
126
127         dir-620-a1)
128                 lan_mac=$(ramips_get_mac_binary factory 4)
129                 lan_mac=$(maccalc or "$lan_mac" "02:00:00:00:00:00")
130                 wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 1)
131                 ;;
132
133         esr-9753 | \
134         ur-336un)
135                 lan_mac=$(ramips_get_mac_binary devdata 16388)
136                 wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 1)
137                 ;;
138
139         nbg-419n | \
140         wcr-150gn)
141                 lan_mac=$(ramips_get_mac_binary factory 4)
142                 wan_mac=$(ramips_get_mac_binary factory 40)
143                 ;;
144
145         f5d8235-v2)
146                 lan_mac=$(ramips_get_mac_binary "u-boot" 262148)
147                 wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 1)
148                 ;;
149
150         rt-n56u)
151                 lan_mac=$(ramips_get_mac_binary factory 4)
152                 wan_mac=$(ramips_get_mac_binary factory 32772)
153                 ;;
154
155         all0239-3g | \
156         w502u)
157                 lan_mac=$(ramips_get_mac_binary factory 40)
158                 wan_mac=$(ramips_get_mac_binary factory 46)
159                 ;;
160
161         wl341v3)
162                 lan_mac=$(ramips_get_mac_binary board-nvram 65440)
163                 wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 1)
164                 ;;
165
166         wli-tx4-ag300n)
167                 lan_mac=$(ramips_get_mac_binary factory 4)
168                 ;;
169
170         esac
171
172         [ -n "$lan_mac" ] && ucidef_set_interface_macaddr lan $lan_mac
173         [ -n "$wan_mac" ] && ucidef_set_interface_macaddr wan $wan_mac
174 }
175
176 [ -e /etc/config/network ] && exit 0
177
178 touch /etc/config/network
179
180 board=$(ramips_board_name)
181
182 ramips_setup_interfaces $board
183 ramips_setup_macs $board
184
185 uci commit network
186
187 exit 0