ramips: use full names for Xiaomi Mi Router devices
[openwrt/staging/hauke.git] / target / linux / ramips / mt7621 / base-files / etc / board.d / 02_network
1 #!/bin/sh
2
3 . /lib/functions.sh
4 . /lib/functions/uci-defaults.sh
5 . /lib/functions/system.sh
6
7 ramips_setup_interfaces()
8 {
9 local board="$1"
10
11 case $board in
12 asiarf,ap7621-001|\
13 winstars,ws-wn583a6)
14 ucidef_set_interfaces_lan_wan "lan" "wan"
15 ;;
16 asiarf,ap7621-nv1|\
17 lenovo,newifi-d1|\
18 mikrotik,routerboard-m33g|\
19 xiaomi,mi-router-3g|\
20 xiaomi,mi-router-3g-v2|\
21 xiaomi,mi-router-4a-gigabit)
22 ucidef_set_interfaces_lan_wan "lan1 lan2" "wan"
23 ;;
24 edimax,re23s|\
25 mikrotik,routerboard-m11g|\
26 netgear,ex6150|\
27 thunder,timecloud|\
28 tplink,re350-v1|\
29 tplink,re500-v1|\
30 tplink,re650-v1|\
31 ubnt,unifi-nanohd)
32 ucidef_set_interface_lan "lan"
33 ;;
34 gehua,ghl-r-001|\
35 hiwifi,hc5962|\
36 xiaomi,mi-router-3-pro|\
37 xiaomi,mi-router-ac2100|\
38 xiaomi,redmi-router-ac2100)
39 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3" "wan"
40 ;;
41 gnubee,gb-pc1|\
42 gnubee,gb-pc2)
43 ucidef_set_interface_lan "lan1 lan2"
44 ;;
45 linksys,re6500|\
46 netgear,wac104)
47 ucidef_set_interface_lan "lan1 lan2 lan3 lan4"
48 ;;
49 mikrotik,routerboard-750gr3)
50 ucidef_set_interfaces_lan_wan "lan2 lan3 lan4 lan5" "wan"
51 ;;
52 mikrotik,routerboard-760igs)
53 ucidef_set_interfaces_lan_wan "lan2 lan3 lan4 lan5" "wan sfp"
54 ;;
55 ubnt,edgerouter-x)
56 ucidef_set_interfaces_lan_wan "eth1 eth2 eth3 eth4" "eth0"
57 ;;
58 ubnt,edgerouter-x-sfp)
59 ucidef_set_interfaces_lan_wan "eth1 eth2 eth3 eth4 eth5" "eth0"
60 ;;
61 zyxel,wap6805)
62 ucidef_set_interface_lan "lan1 lan2 lan3 lan4"
63 ucidef_set_interface "qtn" ifname "eth1" protocol "static" ipaddr "1.1.1.1" netmask "255.255.255.0"
64 ;;
65 *)
66 ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
67 ;;
68 esac
69 }
70
71 ramips_setup_macs()
72 {
73 local board="$1"
74 local lan_mac=""
75 local wan_mac=""
76 local label_mac=""
77
78 case $board in
79 asus,rt-ac65p|\
80 asus,rt-ac85p)
81 wan_mac=$(mtd_get_mac_ascii u-boot-env et1macaddr)
82 label_mac=$(mtd_get_mac_binary factory 0x4)
83 ;;
84 buffalo,wsr-1166dhp)
85 local index="$(find_mtd_index "board_data")"
86 wan_mac="$(grep -m1 mac= "/dev/mtd${index}" | cut -d= -f2)"
87 lan_mac=$wan_mac
88 ;;
89 dlink,dir-860l-b1)
90 lan_mac=$(mtd_get_mac_ascii factory lanmac)
91 wan_mac=$(mtd_get_mac_ascii factory wanmac)
92 ;;
93 edimax,ra21s|\
94 edimax,rg21s)
95 lan_mac=$(mtd_get_mac_ascii u-boot-env ethaddr)
96 wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
97 ;;
98 hiwifi,hc5962)
99 lan_mac=$(mtd_get_mac_ascii bdinfo "Vfac_mac ")
100 label_mac=$lan_mac
101 [ -n "$lan_mac" ] || lan_mac=$(cat /sys/class/net/eth0/address)
102 wan_mac=$(macaddr_add "$lan_mac" 1)
103 ;;
104 iodata,wnpr2600g)
105 wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr)
106 label_mac=$wan_mac
107 ;;
108 linksys,ea7300-v1|\
109 linksys,ea7300-v2|\
110 linksys,ea7500-v2)
111 lan_mac=$(mtd_get_mac_ascii devinfo hw_mac_addr)
112 wan_mac=$lan_mac
113 label_mac=$lan_mac
114 ;;
115 mikrotik,routerboard-750gr3|\
116 mikrotik,routerboard-760igs|\
117 mikrotik,routerboard-m11g|\
118 mikrotik,routerboard-m33g)
119 label_mac=$(cat "/sys/firmware/mikrotik/hard_config/mac_base")
120 wan_mac=$label_mac
121 lan_mac=$(macaddr_add $label_mac 1)
122 ;;
123 wavlink,wl-wn531a6|\
124 winstars,ws-wn583a6|\
125 zbtlink,zbt-we1326|\
126 zbtlink,zbt-wg3526-16m|\
127 zbtlink,zbt-wg3526-32m)
128 label_mac=$(mtd_get_mac_binary factory 0x4)
129 ;;
130 esac
131
132 [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
133 [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
134 [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
135 }
136
137 board_config_update
138 board=$(board_name)
139 ramips_setup_interfaces $board
140 ramips_setup_macs $board
141 board_config_flush
142
143 exit 0