aboutsummaryrefslogtreecommitdiff
path: root/target/linux/ramips/mt7621/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom
blob: 0bf5e85cd0134d3687ed0733f761597c88cdaa32 (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
#!/bin/sh

[ -e /lib/firmware/$FIRMWARE ] && exit 0

. /lib/functions/caldata.sh

caldata_mikrotik_ath9k() {
	local offset=$(($1))
	local count=$(($2))
	local macaddr=$3
	local wlan_data="/sys/firmware/mikrotik/hard_config/wlan_data"

	caldata_from_file $wlan_data $offset $count /tmp/$FIRMWARE
	ath9k_patch_mac "$macaddr" /tmp/$FIRMWARE
	caldata_sysfsload_from_file /tmp/$FIRMWARE 0x0 $count
	rm -f /tmp/$FIRMWARE
}

board=$(board_name)

case "$FIRMWARE" in
"ath9k-eeprom-pci-0000:01:00.0.bin")
	case $board in
	mikrotik,ltap-2hnd)
		mac_base="$(cat /sys/firmware/mikrotik/hard_config/mac_base)"
		caldata_mikrotik_ath9k 0x5000 0x440 $(macaddr_add "$mac_base" 1)
		;;
	*)
		caldata_die "board $board is not supported yet"
		;;
	esac
	;;
esac