lantiq: reorganize 02_network board.d files
[oweals/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,fritz7362sl)
43                 ucidef_add_switch "switch0" \
44                         "0:lan:3" "1:lan:4" "2:lan:2" "4:lan:1" "6t@eth0"
45                 ;;
46         bt,homehub-v5a)
47                 ucidef_add_switch "switch0" \
48                         "0:lan:3" "1:lan:4" "2:lan:2" "4:lan:1" "5:wan:5" "6t@eth0"
49                 ;;
50         buffalo,wbmr-300hpd)
51                 ucidef_add_switch "switch0" \
52                         "5:lan:2" "2:lan:3" "3:lan:4" "4:wan:1" "6t@eth0"
53                 ;;
54         tplink,tdw8970|\
55         tplink,tdw8980)
56                 ucidef_add_switch "switch0" \
57                         "0:lan:2" "2:lan:3" "4:lan:4" "5:lan:1" "6t@eth0"
58                 ;;
59         tplink,vr200|\
60         tplink,vr200v)
61                 ucidef_add_switch "switch0" \
62                         "0:lan" "2:lan" "4:lan" "5:lan" "6t@eth0"
63                 ;;
64         zyxel,p-2812hnu-f1|\
65         zyxel,p-2812hnu-f3)
66                 ucidef_add_switch "switch0" \
67                         "0:lan" "1:lan" "2:lan" "4:lan" "5:wan" "6t@eth0"
68                 ;;
69         *)
70                 ucidef_set_interface_lan 'eth0'
71                 ;;
72         esac
73 }
74
75 lantiq_setup_dsl()
76 {
77         local board="$1"
78         local annex="a"
79
80         case "$board" in
81         arcadyan,vgv7510kw22-brn|\
82         arcadyan,vgv7510kw22-nor|\
83         avm,fritz3370-rev2-hynix|\
84         avm,fritz3370-rev2-micron|\
85         avm,fritz7360sl|\
86         avm,fritz7362sl|\
87         avm,fritz7412)
88                 annex="b"
89                 ;;
90         esac
91
92         lantiq_setup_dsl_helper "$annex"
93 }
94
95 lantiq_setup_macs()
96 {
97         local board="$1"
98         local lan_mac=""
99         local wan_mac=""
100
101         case "$board" in
102         alphanetworks,asl56026)
103                 lan_mac=$(mtd_get_mac_ascii uboot_env ethaddr)
104                 wan_mac=$(mtd_get_mac_ascii uboot_env wanmac)
105                 ;;
106         arcadyan,arv7519rw22)
107                 wan_mac=$(macaddr_add "$(mtd_get_mac_binary boardconfig 0x16)" 1)
108                 ;;
109         arcadyan,vg3503j|\
110         lantiq,easy80920-nand|\
111         lantiq,easy80920-nor|\
112         zyxel,p-2812hnu-f1|\
113         zyxel,p-2812hnu-f3)
114                 lan_mac=$(mtd_get_mac_ascii uboot-env ethaddr)
115                 wan_mac=$(macaddr_add "$lan_mac" 1)
116                 ;;
117         arcadyan,vgv7510kw22-brn|\
118         arcadyan,vgv7510kw22-nor)
119                 wan_mac=$(macaddr_add "$(mtd_get_mac_binary board_config 0x16)" 2)
120                 ;;
121         arcadyan,vgv7519-brn|\
122         arcadyan,vgv7519-nor)
123                 wan_mac=$(mtd_get_mac_binary board_config 0x16)
124                 ;;
125         avm,fritz3370-rev2-hynix|\
126         avm,fritz3370-rev2-micron)
127                 lan_mac=$(fritz_tffs -n maca -i $(find_mtd_part "tffs (1)"))
128                 wan_mac=$(macaddr_add "$lan_mac" 3)
129                 ;;
130         avm,fritz7360sl)
131                 wan_mac=$(macaddr_add "$(mtd_get_mac_binary urlader 0xa91)" 1)
132                 ;;
133         avm,fritz7362sl)
134                 lan_mac=$(fritz_tffs -n maca -i $(find_mtd_part "tffs (1)"))
135                 wan_mac=$(fritz_tffs -n macdsl -i $(find_mtd_part "tffs (1)"))
136                 ;;
137         avm,fritz7412)
138                 tffsdev=$(find_mtd_chardev "nand-tffs")
139                 lan_mac=$(/usr/bin/fritz_tffs_nand -d $tffsdev -n maca -o)
140                 wan_mac=$(/usr/bin/fritz_tffs_nand -d $tffsdev -n macdsl -o)
141                 ;;
142         bt,homehub-v5a)
143                 lan_mac=$(mtd_get_mac_binary_ubi caldata 0x110c)
144                 wan_mac=$(macaddr_add "$lan_mac" 1)
145                 ;;
146         buffalo,wbmr-300hpd)
147                 lan_mac=$(mtd_get_mac_ascii ubootconfig ethaddr)
148                 wan_mac="$lan_mac"
149                 ;;
150         netgear,dm200)
151                 lan_mac=$(mtd_get_mac_binary ART 0x0)
152                 wan_mac=$(macaddr_add "$lan_mac" 1)
153                 ;;
154         tplink,tdw8970|\
155         tplink,tdw8980)
156                 wan_mac=$(macaddr_add "$(mtd_get_mac_binary boardconfig 0xf100)" 1)
157                 ;;
158         tplink,vr200|\
159         tplink,vr200v)
160                 wan_mac=$(macaddr_add "$(mtd_get_mac_binary romfile 0xf100)" 1)
161                 ;;
162         esac
163
164         [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" "$lan_mac"
165         [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" "$wan_mac"
166 }
167
168 board_config_update
169 board=$(board_name)
170 lantiq_setup_interfaces $board
171 lantiq_setup_dsl $board
172 lantiq_setup_macs $board
173 board_config_flush
174
175 exit 0