ath79: split base-files into subtargets
[openwrt/openwrt.git] / target / linux / ath79 / generic / base-files / etc / hotplug.d / ieee80211 / 10_fix_wifi_mac
diff --git a/target/linux/ath79/generic/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac b/target/linux/ath79/generic/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac
new file mode 100644 (file)
index 0000000..8c8b793
--- /dev/null
@@ -0,0 +1,45 @@
+#!/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
+               ;;
+       iodata,wn-ac1600dgr)
+               # 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
+               ;;
+       phicomm,k2t)
+               # 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
+               ;;
+       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
+               ;;
+esac