qualcommax: ipq807x: add support for Linksys MX5300
[openwrt/staging/981213.git] / target / linux / qualcommax / ipq807x / base-files / etc / board.d / 02_network
1 #
2 # Copyright (c) 2015 The Linux Foundation. All rights reserved.
3 # Copyright (c) 2011-2015 OpenWrt.org
4 #
5
6 . /lib/functions/uci-defaults.sh
7 . /lib/functions/system.sh
8
9 ipq807x_setup_interfaces()
10 {
11 local board="$1"
12
13 case "$board" in
14 arcadyan,aw1000|\
15 buffalo,wxr-5950ax12|\
16 dynalink,dl-wrx36|\
17 linksys,mx5300|\
18 xiaomi,ax9000)
19 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
20 ;;
21 cmcc,rm2-6)
22 ucidef_set_interfaces_lan_wan "lan plc" "wan"
23 ;;
24 compex,wpq873|\
25 linksys,mx4200v1|\
26 linksys,mx4200v2|\
27 prpl,haze|\
28 redmi,ax6|\
29 xiaomi,ax3600)
30 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3" "wan"
31 ;;
32 edgecore,eap102|\
33 yuncore,ax880|\
34 zte,mf269)
35 ucidef_set_interfaces_lan_wan "lan" "wan"
36 ;;
37 edimax,cax1800)
38 ucidef_set_interfaces_lan_wan "lan"
39 ;;
40 netgear,rax120v2)
41 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 lan5" "wan"
42 ;;
43 netgear,wax218|\
44 netgear,wax620)
45 ucidef_set_interface_lan "lan" "dhcp"
46 ;;
47 netgear,wax630)
48 ucidef_set_interface_lan "lan1 lan2" "dhcp"
49 ;;
50 qnap,301w)
51 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 10g-2" "10g-1"
52 ;;
53 zyxel,nbg7815)
54 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 10g" "wan"
55 ;;
56 *)
57 echo "Unsupported hardware. Network interfaces not initialized"
58 ;;
59 esac
60 }
61
62 ipq807x_setup_macs()
63 {
64 local board="$1"
65 local lan_mac=""
66 local wan_mac=""
67 local label_mac=""
68
69 case "$board" in
70 linksys,mx4200v1|\
71 linksys,mx4200v2)
72 label_mac=$(mtd_get_mac_ascii devinfo hw_mac_addr)
73 for i in $(seq 3 5); do
74 [ "$(mtd_get_mac_ascii u_env eth${i}addr)" != "$label_mac" ] && lan_mac=$label_mac
75 done
76 [ "$(mtd_get_mac_ascii u_env eth2addr)" != "$label_mac" ] && wan_mac=$label_mac
77 ;;
78 esac
79
80 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
81 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
82 [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
83 }
84
85 board_config_update
86 board=$(board_name)
87 ipq807x_setup_interfaces $board
88 ipq807x_setup_macs $board
89 board_config_flush
90
91 exit 0