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