f7af17995f02f079ca0218b6e3c47806ff3d455b
[openwrt/openwrt.git] / target / linux / lantiq / xrx200 / base-files / etc / board.d / 02_network
1 #!/bin/sh
2 #
3 # Copyright (C) 2011-2015 OpenWrt.org
4 #
5
6 . /lib/functions/uci-defaults.sh
7 . /lib/functions/system.sh
8 . /lib/functions/lantiq.sh
9
10 lantiq_setup_interfaces()
11 {
12 local board="$1"
13
14 case "$board" in
15 alphanetworks,asl56026)
16 ucidef_add_switch "switch0" \
17 "2:lan" "3:lan" "6t@eth0"
18 ;;
19 arcadyan,arv7519rw22)
20 ucidef_add_switch "switch0" \
21 "0:lan:5" "2:lan:3" "3:lan:4" "4:lan:1" "5:lan:2" "6t@eth0"
22 ;;
23 arcadyan,vg3503j)
24 ucidef_add_switch "switch0" \
25 "2:lan:2" "4:lan:1" "6t@eth0"
26 ;;
27 arcadyan,vgv7510kw22-brn|\
28 arcadyan,vgv7510kw22-nor)
29 ucidef_add_switch "switch0" \
30 "2:lan:2" "3:lan:1" "4:lan:4" "5:lan:3" "0:wan:5" "6t@eth0"
31 ;;
32 arcadyan,vgv7519-brn|\
33 arcadyan,vgv7519-nor|\
34 lantiq,easy80920-nand|\
35 lantiq,easy80920-nor)
36 ucidef_add_switch "switch0" \
37 "0:lan:4" "1:lan:3" "2:lan:2" "4:lan:1" "5:wan:5" "6t@eth0"
38 ;;
39 avm,fritz3370-rev2-hynix|\
40 avm,fritz3370-rev2-micron|\
41 avm,fritz7360sl|\
42 avm,fritz7360-v2|\
43 avm,fritz7362sl)
44 ucidef_add_switch "switch0" \
45 "0:lan:3" "1:lan:4" "2:lan:2" "4:lan:1" "6t@eth0"
46 ;;
47 avm,fritz7430)
48 ucidef_add_switch "switch0" \
49 "2:lan:3" "3:lan:4" "4:lan:1" "5:lan:2" "6t@eth0"
50 ;;
51 bt,homehub-v5a)
52 ucidef_add_switch "switch0" \
53 "0:lan:3" "1:lan:4" "2:lan:2" "4:lan:1" "5:wan:5" "6t@eth0"
54 ;;
55 buffalo,wbmr-300hpd)
56 ucidef_add_switch "switch0" \
57 "5:lan:2" "2:lan:3" "3:lan:4" "4:wan:1" "6t@eth0"
58 ;;
59 tplink,tdw8970|\
60 tplink,tdw8980)
61 ucidef_add_switch "switch0" \
62 "0:lan:2" "2:lan:3" "4:lan:4" "5:lan:1" "6t@eth0"
63 ;;
64 tplink,vr200|\
65 tplink,vr200v)
66 ucidef_add_switch "switch0" \
67 "0:lan" "2:lan" "4:lan" "5:lan" "6t@eth0"
68 ;;
69 zyxel,p-2812hnu-f1|\
70 zyxel,p-2812hnu-f3)
71 ucidef_add_switch "switch0" \
72 "0:lan" "1:lan" "2:lan" "4:lan" "5:wan" "6t@eth0"
73 ;;
74 *)
75 ucidef_set_interface_lan 'eth0'
76 ;;
77 esac
78 }
79
80 lantiq_setup_dsl()
81 {
82 local board="$1"
83 local annex="a"
84
85 case "$board" in
86 arcadyan,vgv7510kw22-brn|\
87 arcadyan,vgv7510kw22-nor|\
88 avm,fritz3370-rev2-hynix|\
89 avm,fritz3370-rev2-micron|\
90 avm,fritz7360sl|\
91 avm,fritz7362sl|\
92 avm,fritz7412|\
93 avm,fritz7430)
94 annex="b"
95 ;;
96 esac
97
98 lantiq_setup_dsl_helper "$annex"
99 }
100
101 lantiq_setup_macs()
102 {
103 local board="$1"
104 local lan_mac=""
105 local wan_mac=""
106
107 case "$board" in
108 alphanetworks,asl56026)
109 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
110 wan_mac=$(mtd_get_mac_ascii u-boot-env wanmac)
111 ;;
112 arcadyan,arv7519rw22)
113 wan_mac=$(macaddr_add "$(mtd_get_mac_binary boardconfig 0x16)" 1)
114 ;;
115 arcadyan,vg3503j|\
116 lantiq,easy80920-nand|\
117 lantiq,easy80920-nor|\
118 zyxel,p-2812hnu-f1|\
119 zyxel,p-2812hnu-f3)
120 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
121 wan_mac=$(macaddr_add "$lan_mac" 1)
122 ;;
123 arcadyan,vgv7510kw22-brn|\
124 arcadyan,vgv7510kw22-nor)
125 wan_mac=$(macaddr_add "$(mtd_get_mac_binary board_config 0x16)" 2)
126 ;;
127 arcadyan,vgv7519-brn|\
128 arcadyan,vgv7519-nor)
129 wan_mac=$(mtd_get_mac_binary board_config 0x16)
130 ;;
131 avm,fritz3370-rev2-hynix|\
132 avm,fritz3370-rev2-micron)
133 lan_mac=$(fritz_tffs -n maca -i $(find_mtd_part "tffs (1)"))
134 wan_mac=$(macaddr_add "$lan_mac" 3)
135 ;;
136 avm,fritz7360sl)
137 wan_mac=$(macaddr_add "$(mtd_get_mac_binary urlader 0xa91)" 1)
138 ;;
139 avm,fritz7362sl)
140 lan_mac=$(fritz_tffs -n maca -i $(find_mtd_part "tffs (1)"))
141 wan_mac=$(fritz_tffs -n macdsl -i $(find_mtd_part "tffs (1)"))
142 ;;
143 avm,fritz7412|\
144 avm,fritz7430)
145 tffsdev=$(find_mtd_chardev "nand-tffs")
146 lan_mac=$(/usr/bin/fritz_tffs_nand -d $tffsdev -n maca -o)
147 wan_mac=$(/usr/bin/fritz_tffs_nand -d $tffsdev -n macdsl -o)
148 ;;
149 bt,homehub-v5a)
150 lan_mac=$(mtd_get_mac_binary_ubi caldata 0x110c)
151 wan_mac=$(macaddr_add "$lan_mac" 1)
152 ;;
153 buffalo,wbmr-300hpd)
154 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
155 wan_mac="$lan_mac"
156 ;;
157 netgear,dm200)
158 lan_mac=$(mtd_get_mac_binary ART 0x0)
159 wan_mac=$(macaddr_add "$lan_mac" 1)
160 ;;
161 tplink,tdw8970|\
162 tplink,tdw8980)
163 wan_mac=$(macaddr_add "$(mtd_get_mac_binary boardconfig 0xf100)" 1)
164 ;;
165 tplink,vr200|\
166 tplink,vr200v)
167 wan_mac=$(macaddr_add "$(mtd_get_mac_binary romfile 0xf100)" 1)
168 ;;
169 esac
170
171 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" "$lan_mac"
172 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" "$wan_mac"
173 }
174
175 board_config_update
176 board=$(board_name)
177 lantiq_setup_interfaces $board
178 lantiq_setup_dsl $board
179 lantiq_setup_macs $board
180 board_config_flush
181
182 exit 0