mediatek: add support for ZyXEL NWA50AX Pro
[openwrt/staging/stintel.git] / target / linux / mediatek / filogic / base-files / etc / board.d / 02_network
1
2 . /lib/functions.sh
3 . /lib/functions/uci-defaults.sh
4 . /lib/functions/system.sh
5
6 mediatek_setup_interfaces()
7 {
8 local board="$1"
9
10 case $board in
11 asus,tuf-ax4200)
12 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" eth1
13 ;;
14 netgear,wax220|\
15 zyxel,nwa50ax-pro)
16 ucidef_set_interface_lan "eth0"
17 ;;
18 bananapi,bpi-r3)
19 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 sfp2" "eth1 wan"
20 ;;
21 cudy,wr3000-v1)
22 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3" "wan"
23 ;;
24 glinet,gl-mt3000)
25 ucidef_set_interfaces_lan_wan eth1 eth0
26 ;;
27 h3c,magic-nx30-pro)
28 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3" eth1
29 ;;
30 mediatek,mt7986a-rfb)
31 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 lan6" "eth1 wan"
32 ;;
33 mediatek,mt7986b-rfb)
34 ucidef_set_interfaces_lan_wan "lan0 lan1 lan2 lan3" eth1
35 ;;
36 mediatek,mt7988a-dsa-10g-spim-snand)
37 ucidef_set_interfaces_lan_wan "lan0 lan1 lan2 lan3" "eth1 eth2"
38 ;;
39 mercusys,mr90x-v1)
40 ucidef_set_interfaces_lan_wan "lan0 lan1 lan2" eth1
41 ;;
42 qihoo,360t7)
43 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3" wan
44 ;;
45 tplink,tl-xdr4288|\
46 tplink,tl-xdr6088)
47 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 lan5" eth1
48 ;;
49 tplink,tl-xdr6086)
50 ucidef_set_interfaces_lan_wan "lan1 lan2" eth1
51 ;;
52 xiaomi,redmi-router-ax6000-stock|\
53 xiaomi,redmi-router-ax6000-ubootmod)
54 ucidef_set_interfaces_lan_wan "lan2 lan3 lan4" wan
55 ;;
56 *)
57 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" wan
58 ;;
59 esac
60 }
61
62 mediatek_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 asus,tuf-ax4200)
71 CI_UBIPART="UBI_DEV"
72 addr=$(mtd_get_mac_binary_ubi "Factory" 0x4)
73 wan_mac="${addr}"
74 lan_mac="${addr}"
75 ;;
76 bananapi,bpi-r3)
77 wan_mac=$(macaddr_add $(cat /sys/class/net/eth0/address) 1)
78 ;;
79 h3c,magic-nx30-pro)
80 wan_mac=$(mtd_get_mac_ascii pdt_data_1 ethaddr)
81 lan_mac=$(macaddr_add "$wan_mac" 1)
82 label_mac=$wan_mac
83 ;;
84 mercusys,mr90x-v1)
85 label_mac=$(get_mac_binary "/tmp/tp_data/default-mac" 0)
86 lan_mac=$label_mac
87 ;;
88 netgear,wax220)
89 lan_mac=$(mtd_get_mac_ascii u-boot-env mac)
90 label_mac=$lan_mac
91 ;;
92 qihoo,360t7)
93 lan_mac=$(mtd_get_mac_ascii factory lanMac)
94 wan_mac=$(macaddr_add "$lan_mac" 1)
95 label_mac=$wan_mac
96 ;;
97 xiaomi,redmi-router-ax6000-stock|\
98 xiaomi,redmi-router-ax6000-ubootmod)
99 wan_mac=$(mtd_get_mac_ascii Bdata ethaddr_wan)
100 label_mac=$wan_mac
101 ;;
102 esac
103
104 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
105 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
106 [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
107 }
108
109 board_config_update
110 board=$(board_name)
111 mediatek_setup_interfaces $board
112 mediatek_setup_macs $board
113 board_config_flush
114
115 exit 0