ath79: convert Engenius EPG5000 radios to nvmem-cells
[openwrt/staging/aparcar.git] / target / linux / ath79 / generic / base-files / etc / hotplug.d / ieee80211 / 10_fix_wifi_mac
1 #!/bin/ash
2
3 [ "$ACTION" = "add" ] || exit 0
4
5 PHYNBR=${DEVPATH##*/phy}
6
7 [ -n $PHYNBR ] || exit 0
8
9 . /lib/functions.sh
10 . /lib/functions/system.sh
11 . /lib/functions/k2t.sh
12
13 board=$(board_name)
14
15 case "$board" in
16 adtran,bsap1800-v2|\
17 adtran,bsap1840)
18 macaddr_add "$(mtd_get_mac_binary 'Board data' 2)" $(($PHYNBR * 8 + 1)) > /sys${DEVPATH}/macaddress
19 ;;
20 dlink,dap-1330-a1|\
21 dlink,dap-1365-a1|\
22 dlink,dch-g020-a1)
23 mtd_get_mac_text "mp" 0x13 > /sys${DEVPATH}/macaddress
24 ;;
25 dlink,dap-2230-a1|\
26 dlink,dap-3320-a1)
27 mtd_get_mac_ascii bdcfg "wlanmac" > /sys${DEVPATH}/macaddress
28 ;;
29 dlink,dap-2660-a1|\
30 dlink,dap-2680-a1|\
31 dlink,dap-2695-a1|\
32 dlink,dap-3662-a1)
33 [ "$PHYNBR" -eq 0 ] && \
34 mtd_get_mac_ascii bdcfg "wlanmac_a" > /sys${DEVPATH}/macaddress
35 [ "$PHYNBR" -eq 1 ] && \
36 mtd_get_mac_ascii bdcfg "wlanmac" > /sys${DEVPATH}/macaddress
37 ;;
38 engenius,epg5000|\
39 engenius,esr1200|\
40 engenius,esr1750|\
41 engenius,esr900)
42 macaddr_add "$(mtd_get_mac_ascii u-boot-env ethaddr)" "$PHYNBR" > /sys${DEVPATH}/macaddress
43 ;;
44 fortinet,fap-221-b)
45 macaddr_add "$(mtd_get_mac_text u-boot 0x3ff80 12)" $((PHYNBR*7+1)) > /sys${DEVPATH}/macaddress
46 ;;
47 iodata,wn-ac1600dgr)
48 # There is no eeprom data for 5 GHz wlan in "art" partition
49 # which would allow to patch the macaddress
50 [ "$PHYNBR" -eq 0 ] && \
51 macaddr_add "$(mtd_get_mac_ascii u-boot-env ethaddr)" 1 > /sys${DEVPATH}/macaddress
52 ;;
53 iodata,wn-ag300dgr)
54 # There is no eeprom data for 5 GHz wlan in "art" partition
55 # which would allow to patch the macaddress
56 [ "$PHYNBR" -eq 1 ] && \
57 macaddr_add "$(mtd_get_mac_ascii u-boot-env ethaddr)" 1 > /sys${DEVPATH}/macaddress
58 ;;
59 phicomm,k2t)
60 # The K2T factory firmware does use LAN mac address as the 2.4G wifi mac address
61 [ "$PHYNBR" -eq 1 ] && \
62 k2t_get_mac "lan_mac" > /sys${DEVPATH}/macaddress
63 ;;
64 siemens,ws-ap3610)
65 mtd_get_mac_ascii cfg1 RADIOADDR${PHYNBR} > /sys${DEVPATH}/macaddress
66 ;;
67 trendnet,tew-823dru)
68 # set the 2.4G interface mac address to LAN MAC
69 [ "$PHYNBR" -eq 1 ] && \
70 mtd_get_mac_text mac 4 > /sys${DEVPATH}/macaddress
71 # set the 5G interface mac address to WAN MAC + 1
72 [ "$PHYNBR" -eq 0 ] && \
73 macaddr_add "$(mtd_get_mac_text mac 0x18)" 1 > /sys${DEVPATH}/macaddress
74 ;;
75 zyxel,nbg6616)
76 # Set mac address for 2.4g device
77 [ "$PHYNBR" -eq 1 ] && \
78 mtd_get_mac_ascii u-boot-env ethaddr > /sys${DEVPATH}/macaddress
79 ;;
80 zyxel,nwa1123-ac)
81 [ "$PHYNBR" -eq 0 ] && \
82 mtd_get_mac_text mib0 0x66 > /sys${DEVPATH}/macaddress
83 ;;
84 zyxel,nwa1123-ni)
85 [ "$PHYNBR" -eq 1 ] && \
86 mtd_get_mac_text mib0 0x66 > /sys${DEVPATH}/macaddress
87 ;;
88 esac