From 15ef885836907b27b2c0481f7ea83d1dd504c5d5 Mon Sep 17 00:00:00 2001
From: David Bauer <mail@david-bauer.net>
Date: Sun, 5 Jun 2022 11:55:25 +0200
Subject: [PATCH] ipq40xx: switch Wave2 firmware to -ct (#2541)

Use the candelatech firmware for the QCA Wave-2 firmware.

The Qualcomm firmware used for the IPQ401x chip in OpenWrt in 22.03
is experiencing heavily degraded performance due to excessive
retransmits when using A-MSDU. Disabling VHT modes or switching to the
candelatech firmware circumvents this issue.

Apply the same to other Wave-2 platforms in order to keep consistency
with upstream.

Wave-1 chips do not support mesh modes with the -ct firmware, so keep
using the QCA firmware in their case.

Signed-off-by: David Bauer <mail@david-bauer.net>
---
 targets/ath79-generic   |  8 +-------
 targets/ipq40xx-generic | 18 ++----------------
 targets/ipq806x-generic |  2 +-
 3 files changed, 4 insertions(+), 24 deletions(-)

diff --git a/targets/ath79-generic b/targets/ath79-generic
index a073b2e67..a2b31a9bd 100644
--- a/targets/ath79-generic
+++ b/targets/ath79-generic
@@ -14,13 +14,7 @@ local ATH10K_PACKAGES_QCA9887 = {
 	'-ath10k-firmware-qca9887-ct',
 }
 
-local ATH10K_PACKAGES_QCA9888 = {
-	'kmod-ath10k',
-	'-kmod-ath10k-ct',
-	'-kmod-ath10k-ct-smallbuffers',
-	'ath10k-firmware-qca9888',
-	'-ath10k-firmware-qca9888-ct',
-}
+local ATH10K_PACKAGES_QCA9888 = {}
 
 -- AVM
 
diff --git a/targets/ipq40xx-generic b/targets/ipq40xx-generic
index e3fc746be..10464d004 100644
--- a/targets/ipq40xx-generic
+++ b/targets/ipq40xx-generic
@@ -1,19 +1,5 @@
-local ATH10K_PACKAGES_IPQ40XX = {
-	'kmod-ath10k',
-	'-kmod-ath10k-ct',
-	'-kmod-ath10k-ct-smallbuffers',
-	'ath10k-firmware-qca4019',
-	'-ath10k-firmware-qca4019-ct',
-}
-local ATH10K_PACKAGES_IPQ40XX_QCA9888 = {
-	'kmod-ath10k',
-	'-kmod-ath10k-ct',
-	'-kmod-ath10k-ct-smallbuffers',
-	'ath10k-firmware-qca4019',
-	'-ath10k-firmware-qca4019-ct',
-	'ath10k-firmware-qca9888',
-	'-ath10k-firmware-qca9888-ct',
-}
+local ATH10K_PACKAGES_IPQ40XX = {}
+local ATH10K_PACKAGES_IPQ40XX_QCA9888 = {}
 
 
 defaults {
diff --git a/targets/ipq806x-generic b/targets/ipq806x-generic
index 1b3263fc3..9a94194a2 100644
--- a/targets/ipq806x-generic
+++ b/targets/ipq806x-generic
@@ -4,7 +4,7 @@
 -- The QCA9984 on the other hand works fine for 11s meshes on both bands.
 
 local QCA9980_PACKAGES = {'-kmod-ath10k', 'kmod-ath10k-ct', '-ath10k-firmware-qca99x0', 'ath10k-firmware-qca99x0-ct'}
-local QCA9984_PACKAGES = {'kmod-ath10k', '-kmod-ath10k-ct', 'ath10k-firmware-qca9984', '-ath10k-firmware-qca9984-ct'}
+local QCA9984_PACKAGES = {}
 
 
 --
-- 
GitLab