summaryrefslogtreecommitdiffstats
path: root/target/linux/ath79/generic/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac
blob: 2a1f230eb4f3275d39e007e8bb8330a21349b1c0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
#!/bin/ash

[ "$ACTION" = "add" ] || exit 0

PHYNBR=${DEVPATH##*/phy}

[ -n $PHYNBR ] || exit 0

. /lib/functions.sh
. /lib/functions/system.sh
. /lib/functions/k2t.sh

board=$(board_name)

case "$board" in
	adtran,bsap1800-v2|\
	adtran,bsap1840)
		macaddr_add "$(mtd_get_mac_binary 'Board data' 2)" $(($PHYNBR * 8 + 1)) > /sys${DEVPATH}/macaddress
		;;
	dlink,covr-c1200-a1|\
	dlink,covr-p2500-a1)
		[ "$PHYNBR" -eq 0 ] && \
			mtd_get_mac_ascii art "protest_ath1_mac" > /sys${DEVPATH}/macaddress
		[ "$PHYNBR" -eq 1 ] && \
			mtd_get_mac_ascii art "protest_ath0_mac" > /sys${DEVPATH}/macaddress
		;;
	dlink,dap-1330-a1|\
	dlink,dap-1365-a1|\
	dlink,dch-g020-a1)
		mtd_get_mac_text "mp" 0x13 > /sys${DEVPATH}/macaddress
		;;
	dlink,dap-2230-a1|\
	dlink,dap-3320-a1)
		mtd_get_mac_ascii bdcfg "wlanmac" > /sys${DEVPATH}/macaddress
		;;
	dlink,dap-2660-a1|\
	dlink,dap-2680-a1|\
	dlink,dap-2695-a1|\
	dlink,dap-3662-a1)
		[ "$PHYNBR" -eq 0 ] && \
			mtd_get_mac_ascii bdcfg "wlanmac_a" > /sys${DEVPATH}/macaddress
		[ "$PHYNBR" -eq 1 ] && \
			mtd_get_mac_ascii bdcfg "wlanmac" > /sys${DEVPATH}/macaddress
		;;
	elecom,wab-i1750-ps|\
	elecom,wab-s1167-ps|\
	elecom,wab-s600-ps)
		# set the 5G MAC address (= ethaddr + 1)
		[ "$PHYNBR" -eq 0 ] && \
			macaddr_add "$(mtd_get_mac_ascii u-boot-env ethaddr)" 1 > /sys${DEVPATH}/macaddress
		# set the 2.4G MAC address (= ethaddr)
		[ "$PHYNBR" -eq 1 ] && \
			mtd_get_mac_ascii u-boot-env "ethaddr" > /sys${DEVPATH}/macaddress
		;;
	engenius,ecb1200|\
	engenius,ecb1750)
		[ "$PHYNBR" -eq 0 ] && \
			mtd_get_mac_ascii u-boot-env athaddr > /sys${DEVPATH}/macaddress
		;;
	engenius,epg5000|\
	engenius,esr1200|\
	engenius,esr1750|\
	engenius,esr900)
		macaddr_add "$(mtd_get_mac_ascii u-boot-env ethaddr)" "$PHYNBR" > /sys${DEVPATH}/macaddress
		;;
	engenius,ews511ap)
		[ "$PHYNBR" -eq 0 ] && \
		macaddr_add $(cat /sys/class/net/eth0/address) 1 > /sys${DEVPATH}/macaddress
		;;
	extreme-networks,ws-ap3805i)
		[ "$PHYNBR" -eq 0 ] && \
		mtd_get_mac_ascii cfg1 RADIOADDR0 > /sys${DEVPATH}/macaddress
		;;
	iodata,wn-ac1167dgr|\
	iodata,wn-ac1600dgr|\
	iodata,wn-ac1600dgr2|\
	sitecom,wlr-7100|\
	sitecom,wlr-8100|\
	zyxel,nbg6616)
		# There is no eeprom data for 5 GHz wlan in "art" partition
		# which would allow to patch the macaddress
		[ "$PHYNBR" -eq 0 ] && \
			macaddr_add "$(mtd_get_mac_ascii u-boot-env ethaddr)" 1 > /sys${DEVPATH}/macaddress
		;;
	iodata,wn-ag300dgr)
		# There is no eeprom data for 5 GHz wlan in "art" partition
		# which would allow to patch the macaddress
		[ "$PHYNBR" -eq 1 ] && \
			macaddr_add "$(mtd_get_mac_ascii u-boot-env ethaddr)" 1 > /sys${DEVPATH}/macaddress
		;;
	nec,wf1200cr|\
	nec,wg1200cr|\
	qihoo,c301)
		[ "$PHYNBR" -eq 0 ] && \
			mtd_get_mac_ascii devdata wlan5mac > /sys${DEVPATH}/macaddress
		;;
	phicomm,k2t)
		[ "$PHYNBR" -eq 0 ] && \
			k2t_get_mac "5g_mac" > /sys${DEVPATH}/macaddress
		# The K2T factory firmware does use LAN mac address as the 2.4G wifi mac address
		[ "$PHYNBR" -eq 1 ] && \
			k2t_get_mac "lan_mac" > /sys${DEVPATH}/macaddress
		;;
	siemens,ws-ap3610)
		mtd_get_mac_ascii cfg1 RADIOADDR${PHYNBR} > /sys${DEVPATH}/macaddress
		;;
	tplink,deco-s4-v2)
		base_mac=$(mtd_get_mac_encrypted_deco $(find_mtd_part config))
		[ "$PHYNBR" -eq 0 ] && \
			macaddr_add $base_mac 2 > /sys${DEVPATH}/macaddress

		;;
	trendnet,tew-823dru)
		# set the 2.4G interface mac address to LAN MAC
		[ "$PHYNBR" -eq 1 ] && \
			mtd_get_mac_text mac 4 > /sys${DEVPATH}/macaddress
		# set the 5G interface mac address to WAN MAC + 1
		[ "$PHYNBR" -eq 0 ] && \
			macaddr_add "$(mtd_get_mac_text mac 0x18)" 1 > /sys${DEVPATH}/macaddress
		;;
	zyxel,nbg6616)
		# Set mac address for 2.4g device
		[ "$PHYNBR" -eq 1 ] && \
			mtd_get_mac_ascii u-boot-env ethaddr > /sys${DEVPATH}/macaddress
		;;
	zyxel,nwa1123-ac)
		[ "$PHYNBR" -eq 0 ] && \
			mtd_get_mac_text mib0 0x66 > /sys${DEVPATH}/macaddress
		;;
	zyxel,nwa1123-ni)
		[ "$PHYNBR" -eq 1 ] && \
			mtd_get_mac_text mib0 0x66 > /sys${DEVPATH}/macaddress
		;;
esac