diff mbox series

[OpenWrt-Devel,v2,13/14] ath79/mikrotik: load caldata via sysfs loader

Message ID 20200420133503.18700-14-hacks@slashdirt.org
State Accepted
Delegated to: Koen Vandeputte
Headers show
Series RouterBOARD sysfs driver for RouterBoot data | expand

Commit Message

Thibaut April 20, 2020, 1:35 p.m. UTC
This commit takes advantages of base-files 220 which introduces routines
to perform caldata loading directly via the kernel sysfs loader helper.
This has the benefits of not wasting flash space to store caldata.

Memory footprint is reduced to the bare minimum: for devices that don't
need MAC patching, the caldata is loaded directly, for devices that do
need MAC patching, the caldata is extracted to /tmp, patched and then
loaded.

Signed-off-by: Thibaut VARĂˆNE <hacks@slashdirt.org>
---
 .../mikrotik/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom      | 6 ++++--
 .../mikrotik/base-files/etc/hotplug.d/firmware/11-ath10k-caldata    | 4 ++--
 2 files changed, 6 insertions(+), 4 deletions(-)
diff mbox series

Patch

diff --git a/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom b/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom
index be2f6aec69..c63856327c 100644
--- a/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom
+++ b/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom
@@ -13,8 +13,10 @@  case "$FIRMWARE" in
 "ath9k-eeprom-ahb-18100000.wmac.bin")
 	case $board in
 	mikrotik,routerboard-wap-g-5hact2hnd)
-		caldata_from_file $wlan_data 0x1000 0x440
-		ath9k_patch_mac $(macaddr_add $(cat $mac_base) +2)
+		caldata_from_file $wlan_data 0x1000 0x440 /tmp/$FIRMWARE
+		ath9k_patch_mac $(macaddr_add $(cat $mac_base) +2) /tmp/$FIRMWARE
+		caldata_sysfsload_from_file /tmp/$FIRMWARE 0x0 0x440
+		rm -f /tmp/$FIRMWARE
 		;;
 	*)
 		caldata_die "board $board is not supported yet"
diff --git a/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/11-ath10k-caldata b/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
index b486a5720d..531c21678f 100644
--- a/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
+++ b/target/linux/ath79/mikrotik/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
@@ -12,14 +12,14 @@  case "$FIRMWARE" in
 "ath10k/cal-pci-0000:00:00.0.bin")
 	case $board in
 	mikrotik,routerboard-wap-g-5hact2hnd)
-		caldata_from_file $wlan_data 0x5000 0x844
+		caldata_sysfsload_from_file $wlan_data 0x5000 0x844
 		;;
 	esac
 	;;
 "ath10k/cal-pci-0000:01:00.0.bin")
 	case $board in
 	mikrotik,routerboard-922uags-5hpacd)
-		caldata_from_file $wlan_data 0x5000 0x844
+		caldata_sysfsload_from_file $wlan_data 0x5000 0x844
 		;;
 	esac
 	;;