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