147ae0b31f7f5dd801c2d6615b79d735cdec3531
[openwrt/openwrt.git] / target / linux / mvebu / cortexa9 / base-files / etc / board.d / 02_network
1 #
2 # Copyright (C) 2014-2016 OpenWrt.org
3 # Copyright (C) 2016 LEDE-Project.org
4 #
5
6 . /lib/functions.sh
7 . /lib/functions/uci-defaults.sh
8 . /lib/functions/system.sh
9
10 mvebu_setup_interfaces()
11 {
12 local board="$1"
13
14 case "$board" in
15 ctera,c200-v2)
16 ucidef_set_interface_lan "eth0" "dhcp"
17 ;;
18 cznic,turris-omnia)
19 ucidef_set_interfaces_lan_wan "lan0 lan1 lan2 lan3 lan4" "eth2"
20 ;;
21 fortinet,fg-30e|\
22 linksys,wrt1200ac|\
23 linksys,wrt1900ac-v1|\
24 linksys,wrt1900ac-v2|\
25 linksys,wrt1900acs|\
26 linksys,wrt3200acm|\
27 linksys,wrt32x)
28 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
29 ;;
30 fortinet,fg-50e)
31 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 lan5" "eth1 eth2"
32 ;;
33 iptime,nas1dual)
34 ucidef_set_interface_lan "eth0 eth1" "dhcp"
35 ;;
36 marvell,a385-db-ap)
37 ucidef_set_interfaces_lan_wan "eth0 eth1" "eth2"
38 ;;
39 marvell,axp-gp)
40 ucidef_set_interface_lan "eth0 eth1 eth2 eth3"
41 ;;
42 solidrun,clearfog-base-a1)
43 # eth0 is standalone ethernet
44 # eth1 is standalone ethernet
45 # eth2 is SFP
46 ucidef_set_interfaces_lan_wan "eth1" "eth0 eth2"
47 ;;
48 solidrun,clearfog-pro-a1)
49 # eth0 is standalone ethernet
50 # eth1 is switch
51 # eth2 is SFP
52 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 lan5 lan6" "eth0 eth2"
53 ;;
54 *)
55 ucidef_set_interface_lan "eth0"
56 ;;
57 esac
58 }
59
60 mvebu_setup_macs()
61 {
62 local board="$1"
63 local lan_mac=""
64 local wan_mac=""
65 local label_mac=""
66
67 case "$board" in
68 buffalo,ls220de|\
69 buffalo,ls421de)
70 lan_mac=$(mtd_get_mac_ascii u-boot-env eth1addr)
71 ;;
72 ctera,c200-v2)
73 label_mac=$(mtd_get_mac_ascii dev_params mac)
74 lan_mac=$label_mac
75 ;;
76 linksys,wrt1200ac|\
77 linksys,wrt1900ac-v2|\
78 linksys,wrt1900acs|\
79 linksys,wrt3200acm|\
80 linksys,wrt32x)
81 label_mac=$(mtd_get_mac_ascii devinfo hw_mac_addr)
82 wan_mac=$(macaddr_setbit_la $label_mac)
83 ;;
84 linksys,wrt1900ac-v1)
85 label_mac=$(mtd_get_mac_ascii devinfo hw_mac_addr)
86 lan_mac=$label_mac
87 wan_mac=$label_mac
88 ;;
89 esac
90
91 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
92 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
93 [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
94 }
95
96 board_config_update
97 board=$(board_name)
98 mvebu_setup_interfaces $board
99 mvebu_setup_macs $board
100 board_config_flush
101
102 exit 0