ipq40xx: add support for Aruba AP-365
[oweals/openwrt.git] / target / linux / ipq40xx / base-files / etc / board.d / 02_network
1 #!/bin/sh
2 #
3 # Copyright (c) 2015 The Linux Foundation. All rights reserved.
4 # Copyright (c) 2011-2015 OpenWrt.org
5 #
6
7 . /lib/functions/uci-defaults.sh
8 . /lib/functions/system.sh
9
10 ipq40xx_setup_interfaces()
11 {
12         local board="$1"
13
14         case "$board" in
15         8dev,habanero-dvk|\
16         8dev,jalapeno|\
17         alfa-network,ap120c-ac|\
18         engenius,ens620ext)
19                 ucidef_set_interfaces_lan_wan "eth0" "eth1"
20                 ;;
21         aruba,ap-303|\
22         aruba,ap-365|\
23         avm,fritzrepeater-1200|\
24         dlink,dap-2610 |\
25         engenius,eap1300|\
26         engenius,emd1|\
27         meraki,mr33|\
28         netgear,ex6100v2|\
29         netgear,ex6150v2|\
30         zyxel,wre6606)
31                 ucidef_set_interface_lan "eth0"
32                 ;;
33         aruba,ap-303h)
34                 ucidef_set_interfaces_lan_wan "eth0" "eth1"
35                 ucidef_add_switch "switch0" \
36                         "0u@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "0u@eth1" "5:wan"
37                 ;;
38         asus,map-ac2200|\
39         cilab,meshpoint-one|\
40         openmesh,a42|\
41         openmesh,a62)
42                 ucidef_set_interfaces_lan_wan "eth1" "eth0"
43                 ;;
44         asus,rt-ac58u|\
45         zyxel,nbg6617)
46                 ucidef_set_interfaces_lan_wan "eth0" "eth1"
47                 ucidef_add_switch "switch0" \
48                         "0u@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
49                 ;;
50         avm,fritzbox-4040|\
51         linksys,ea6350v3|\
52         linksys,ea8300)
53                 ucidef_set_interfaces_lan_wan "eth0" "eth1"
54                 ucidef_add_switch "switch0" \
55                         "0u@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
56                 ;;
57         avm,fritzbox-7530)
58                 ucidef_add_switch "switch0" \
59                         "0u@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
60                 ;;
61         avm,fritzrepeater-3000|\
62         compex,wpj419|\
63         compex,wpj428|\
64         engenius,eap2200)
65                 ucidef_set_interface_lan "eth0 eth1"
66                 ;;
67         cellc,rtl30vw)
68                 ucidef_set_interface_lan "eth0"
69                 ucidef_add_switch "switch0" \
70                         "0u@eth0" "3:lan" "4:lan"
71                 ;;
72         ezviz,cs-w3-wd1200g-eup)
73                 ucidef_set_interfaces_lan_wan "eth0" "eth1"
74                 ucidef_add_switch "switch0" \
75                         "0u@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "0u@eth1" "5:wan"
76                 ;;
77         glinet,gl-b1300)
78                 ucidef_set_interfaces_lan_wan "eth0" "eth1"
79                 ucidef_add_switch "switch0" \
80                         "0u@eth0" "3:lan" "4:lan"
81                 ;;
82         mobipromo,cm520-79f)
83                 ucidef_add_switch "switch0" \
84                         "0u@eth0" "3:lan:2" "4:lan:1"
85                 ucidef_set_interface_wan "eth1"
86                 ;;
87         qxwlan,e2600ac-c1 |\
88         qxwlan,e2600ac-c2)
89                 ucidef_set_interfaces_lan_wan "eth0" "eth1"
90                 ucidef_add_switch "switch0" \
91                         "0u@eth0" "3:lan" "4:lan" "0u@eth1" "5:wan"
92                 ;;
93         unielec,u4019-32m)
94                 ucidef_set_interfaces_lan_wan "eth0" "eth1"
95                 ucidef_add_switch "switch0" \
96                         "0u@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "0u@eth1" "5:wan"
97                 ;;
98         *)
99                 echo "Unsupported hardware. Network interfaces not initialized"
100                 ;;
101         esac
102 }
103
104 ipq40xx_setup_macs()
105 {
106         local board="$1"
107         local lan_mac=""
108         local wan_mac=""
109         local label_mac=""
110
111         case "$board" in
112         8dev,habanero-dvk)
113                 label_mac=$(mtd_get_mac_binary "ART" 0x1006)
114                 ;;
115         asus,rt-ac58u)
116                 CI_UBIPART=UBI_DEV
117                 wan_mac=$(mtd_get_mac_binary_ubi Factory 0x1006)
118                 lan_mac=$(mtd_get_mac_binary_ubi Factory 0x5006)
119                 label_mac=$wan_mac
120                 ;;
121         cilab,meshpoint-one)
122                 label_mac=$(mtd_get_mac_binary "ART" 0x1006)
123                 ;;
124         dlink,dap-2610)
125                 lan_mac=$(mtd_get_mac_ascii bdcfg lanmac)
126                 label_mac=$lan_mac
127                 ;;
128         engenius,eap2200|\
129         engenius,emd1)
130                 lan_mac=$(mtd_get_mac_ascii 0:APPSBLENV ethaddr)
131                 label_mac=$lan_mac
132                 ;;
133         engenius,ens620ext)
134                 wan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
135                 lan_mac=$(macaddr_add "$wan_mac" 1)
136                 ;;
137         ezviz,cs-w3-wd1200g-eup)
138                 label_mac=$(mtd_get_mac_binary "ART" 0x6)
139                 ;;
140         linksys,ea6350v3)
141                 wan_mac=$(mtd_get_mac_ascii devinfo hw_mac_addr)
142                 lan_mac=$(macaddr_add "$wan_mac" 1)
143                 ;;
144         esac
145
146         [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
147         [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
148         [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
149 }
150
151 board_config_update
152 board=$(board_name)
153 ipq40xx_setup_interfaces $board
154 ipq40xx_setup_macs $board
155 board_config_flush
156
157 exit 0