ath79/mikrotik: add function for loading ath9k caldata
[openwrt/staging/wigyori.git] / target / linux / ath79 / mikrotik / base-files / etc / hotplug.d / firmware / 10-ath9k-eeprom
1 #!/bin/sh
2
3 [ -e /lib/firmware/$FIRMWARE ] && exit 0
4
5 . /lib/functions/caldata.sh
6
7 caldata_mikrotik_ath9k() {
8 local offset=$(($1))
9 local count=$(($2))
10 local macaddr=$3
11
12 caldata_from_file $wlan_data $offset $count /tmp/$FIRMWARE
13 ath9k_patch_mac "$macaddr" /tmp/$FIRMWARE
14 caldata_sysfsload_from_file /tmp/$FIRMWARE 0x0 $count
15 rm -f /tmp/$FIRMWARE
16 }
17
18 wlan_data="/sys/firmware/mikrotik/hard_config/wlan_data"
19 mac_base="$(cat /sys/firmware/mikrotik/hard_config/mac_base)"
20
21 board=$(board_name)
22
23 case "$FIRMWARE" in
24 "ath9k-eeprom-ahb-18100000.wmac.bin")
25 case $board in
26 mikrotik,routerboard-lhg-2nd|\
27 mikrotik,routerboard-sxt-5nd-r2)
28 caldata_mikrotik_ath9k 0x1000 0x440 $(macaddr_add "$mac_base" +1)
29 ;;
30 mikrotik,routerboard-wap-g-5hact2hnd)
31 caldata_mikrotik_ath9k 0x1000 0x440 $(macaddr_add "$mac_base" +2)
32 ;;
33 *)
34 caldata_die "board $board is not supported yet"
35 ;;
36 esac
37 ;;
38 esac