lantiq: reorganize 02_network board.d files
[oweals/openwrt.git] / target / linux / lantiq / xway / 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         arcadyan,arv4510pw)
16                 ucidef_add_switch "switch0" \
17                         "0:lan:4" "2:lan:2" "1:lan:3" "3:lan:1" "5t@eth0"
18                 ;;
19         arcadyan,arv4519pw|\
20         arcadyan,arv7510pw22|\
21         arcadyan,arv7518pw|\
22         arcadyan,arv752dpw22|\
23         arcadyan,arv8539pw22|\
24         buffalo,wbmr-hp-g300h)
25                 ucidef_add_switch "switch0" \
26                         "0t@eth0" "2:lan" "3:lan" "4:lan" "5:lan"
27                 ;;
28         arcadyan,arv7506pw11|\
29         audiocodes,mp-252|\
30         siemens,gigaset-sx76x)
31                 ucidef_add_switch "switch0" \
32                         "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5t@eth0"
33                 ;;
34         arcadyan,arv7519pw|\
35         zte,h201l)
36                 ucidef_add_switch "switch0" \
37                         "0:lan" "1:lan" "2:lan" "3:lan" "4t@eth0"
38                 ;;
39         bt,homehub-v2b)
40                 ucidef_add_switch "switch0" \
41                         "1:lan" "2:lan" "3:lan" "4:lan" "5t@eth0"
42                 ;;
43         netgear,dgn3500|\
44         netgear,dgn3500b)
45                 ucidef_add_switch "switch0" \
46                         "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5t@eth0"
47                 ;;
48         zyxel,p-2601hn)
49                 ucidef_add_switch "switch0" \
50                         "0:lan" "1:lan" "2:lan" "3:lan" "5t@eth0"
51                 ;;
52         *)
53                 ucidef_set_interface_lan 'eth0'
54                 ;;
55         esac
56 }
57
58 lantiq_setup_dsl()
59 {
60         local board="$1"
61         local annex="a"
62
63         case "$board" in
64         arcadyan,arv7506pw11|\
65         arcadyan,arv7525pw|\
66         arcadyan,arv752dpw|\
67         arcadyan,arv752dpw22|\
68         arcadyan,arv8539pw22|\
69         avm,fritz7312|\
70         avm,fritz7320|\
71         siemens,gigaset-sx76x|\
72         zte,h201l)
73                 annex="b"
74                 ;;
75         esac
76
77         lantiq_setup_dsl_helper "$annex"
78 }
79
80 lantiq_setup_macs()
81 {
82         local board="$1"
83         local lan_mac=""
84         local wan_mac=""
85
86         case "$board" in
87         arcadyan,arv4510pw|\
88         bt,homehub-v2b|\
89         bt,homehub-v3a|\
90         netgear,dgn3500|\
91         netgear,dgn3500b)
92                 lan_mac=$(mtd_get_mac_ascii uboot-env ethaddr)
93                 wan_mac=$(macaddr_add "$lan_mac" 1)
94                 ;;
95         arcadyan,arv7506pw11)
96                 wan_mac=$(macaddr_add "$(mtd_get_mac_binary board_config 0x16)" 2)
97                 ;;
98         arcadyan,arv7519pw)
99                 wan_mac=$(macaddr_add "$(mtd_get_mac_binary board_config 0x16)" 1)
100                 ;;
101         avm,fritz7312|\
102         avm,fritz7320)
103                 wan_mac=$(macaddr_add "$(mtd_get_mac_binary urlader 0xa91)" 1)
104                 ;;
105         esac
106
107         [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" "$lan_mac"
108         [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" "$wan_mac"
109 }
110
111 board_config_update
112 board=$(board_name)
113 lantiq_setup_interfaces $board
114 lantiq_setup_dsl $board
115 lantiq_setup_macs $board
116 board_config_flush
117
118 exit 0