[PATCH] wifi: ath11k: allow APs combination when dual stations are supported

From: Jose Ignacio Tornos Martinez
Date: Mon Dec 02 2024 - 04:19:34 EST


Since commit f019f4dff2e4 ("wifi: ath11k: support 2 station interfaces"),
if dual stations are supported for a device, we can not configure more that
one AP and/or DFS cannot be enabled.

Enable this by creating a new parameter (ignore_support_dual_stations) to
ignore this feature if it is convenient. Default behavior is to support
dual stations if possible.

Reported-by: Vladimir Benes <vbenes@xxxxxxxxxx>
Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@xxxxxxxxxx>
---
drivers/net/wireless/ath/ath11k/core.c | 9 +++++++++
1 file changed, 9 insertions(+)

diff --git a/drivers/net/wireless/ath/ath11k/core.c b/drivers/net/wireless/ath/ath11k/core.c
index be67382c00f6..55c7a55d85ff 100644
--- a/drivers/net/wireless/ath/ath11k/core.c
+++ b/drivers/net/wireless/ath/ath11k/core.c
@@ -37,6 +37,12 @@ bool ath11k_ftm_mode;
module_param_named(ftm_mode, ath11k_ftm_mode, bool, 0444);
MODULE_PARM_DESC(ftm_mode, "Boots up in factory test mode");

+static bool ath11k_ignore_support_dual_stations;
+module_param_named(ignore_support_dual_stations,
+ ath11k_ignore_support_dual_stations, bool, 0644);
+MODULE_PARM_DESC(ignore_support_dual_stations,
+ "Ignore the support for dual stations to support other combinations");
+
static const struct ath11k_hw_params ath11k_hw_params[] = {
{
.hw_rev = ATH11K_HW_IPQ8074,
@@ -2162,6 +2168,9 @@ static int ath11k_init_hw_params(struct ath11k_base *ab)
}

ab->hw_params = *hw_params;
+ if (ab->hw_params.support_dual_stations &&
+ ath11k_ignore_support_dual_stations)
+ ab->hw_params.support_dual_stations = false;

ath11k_info(ab, "%s\n", ab->hw_params.name);

--
2.47.0