#!/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,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-3662-a1)
		[ "$PHYNBR" -eq 1 ] && \
			mtd_get_mac_ascii bdcfg "wlanmac" > /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
		;;
	siemens,ws-ap3610)
		mtd_get_mac_ascii cfg1 RADIOADDR${PHYNBR} > /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
		;;
esac
