aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobert Marko <robimarko@gmail.com>2021-11-30 10:27:50 +0100
committerBaptiste Jonglez <git@bitsofnetworks.org>2022-07-01 12:46:45 +0200
commit80602d472aae6c75ca7adf9688a32a4d68c55112 (patch)
tree1e9e8eda71bad232e9b3ffb20eeea67222bd9fb8
parent02cfd1f5a808e786a6d652b42cddd362ecd30592 (diff)
downloadupstream-80602d472aae6c75ca7adf9688a32a4d68c55112.tar.gz
upstream-80602d472aae6c75ca7adf9688a32a4d68c55112.tar.bz2
upstream-80602d472aae6c75ca7adf9688a32a4d68c55112.zip
ipq40xx: mikrotik: provide BDF-s on demand
Since we now can pass the API 1 BDF-s aka board.bin to the ath10k driver per radio lets use that to provide the BDF-s for MikroTik devices. This also resolves the performance issues that happen as MikroTik changes the boards and ships them under the same revision but they actually ship with and require a different BDF. Signed-off-by: Robert Marko <robimarko@gmail.com> (cherry picked from commit 4d4462cc2ace4b044e99e9b22a24cb4d89c7db95) Signed-off-by: Thibaut VARĂˆNE <hacks@slashdirt.org>
-rw-r--r--target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata23
1 files changed, 23 insertions, 0 deletions
diff --git a/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
index c02b12dceb..e0b4eed6f2 100644
--- a/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
+++ b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
@@ -215,6 +215,29 @@ case "$FIRMWARE" in
;;
esac
;;
+"ath10k/QCA4019/hw1.0/board-ahb-a000000.wifi.bin")
+ case "$board" in
+ mikrotik,cap-ac |\
+ mikrotik,hap-ac2 |\
+ mikrotik,hap-ac3)
+ wlan_data="/sys/firmware/mikrotik/hard_config/wlan_data"
+ ( [ -f "$wlan_data" ] && caldata_sysfsload_from_file "$wlan_data" 0x2f20 0x2f20 ) || \
+ ( [ -d "$wlan_data" ] && caldata_sysfsload_from_file "$wlan_data/data_0" 0x2f20 0x2f20 )
+ ;;
+ esac
+ ;;
+"ath10k/QCA4019/hw1.0/board-ahb-a800000.wifi.bin")
+ case "$board" in
+ mikrotik,cap-ac |\
+ mikrotik,hap-ac2 |\
+ mikrotik,hap-ac3 |\
+ mikrotik,sxtsq-5-ac)
+ wlan_data="/sys/firmware/mikrotik/hard_config/wlan_data"
+ ( [ -f "$wlan_data" ] && caldata_sysfsload_from_file "$wlan_data" 0xaf20 0x2f20 ) || \
+ ( [ -d "$wlan_data" ] && caldata_sysfsload_from_file "$wlan_data/data_2" 0x2f20 0x2f20 )
+ ;;
+ esac
+ ;;
*)
exit 1
;;