2018-02-14 11:15:09

by Timothy Redaelli

[permalink] [raw]
Subject: [PATCH v2] ath9k: fix DFS detector synchronization

some userspace programs (e.g. hostapd) need to set the regulatory domain
before selecting the operating channel. Synchronize DFS detector regardless of
the value of ah->curchan, to avoid situations where wireless scan can't be done
on some 5GHz sub-bands, because dfs_region is constantly UNSET.

Acked-by: Felix Fietkau <[email protected]>
Signed-off-by: Timothy Redaelli <[email protected]>
---
drivers/net/wireless/ath/ath9k/init.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/drivers/net/wireless/ath/ath9k/init.c b/drivers/net/wireless/ath/ath9k/init.c
index e479fae5aab9..b71b16715f6a 100644
--- a/drivers/net/wireless/ath/ath9k/init.c
+++ b/drivers/net/wireless/ath/ath9k/init.c
@@ -257,6 +257,11 @@ static void ath9k_reg_notifier(struct wiphy *wiphy,

ath_reg_notifier_apply(wiphy, request, reg);

+ /* synchronize DFS detector if regulatory domain changed */
+ if (sc->dfs_detector != NULL)
+ sc->dfs_detector->set_dfs_domain(sc->dfs_detector,
+ request->dfs_region);
+
/* Set tx power */
if (!ah->curchan)
return;
@@ -267,10 +272,6 @@ static void ath9k_reg_notifier(struct wiphy *wiphy,
ath9k_cmn_update_txpow(ah, sc->cur_chan->cur_txpower,
sc->cur_chan->txpower,
&sc->cur_chan->cur_txpower);
- /* synchronize DFS detector if regulatory domain changed */
- if (sc->dfs_detector != NULL)
- sc->dfs_detector->set_dfs_domain(sc->dfs_detector,
- request->dfs_region);
ath9k_ps_restore(sc);
}

--
2.14.3


2018-03-29 08:49:02

by Kalle Valo

[permalink] [raw]
Subject: Re: [v2] ath9k: fix DFS detector synchronization

Timothy Redaelli <[email protected]> wrote:

> some userspace programs (e.g. hostapd) need to set the regulatory domain
> before selecting the operating channel. Synchronize DFS detector regardless of
> the value of ah->curchan, to avoid situations where wireless scan can't be done
> on some 5GHz sub-bands, because dfs_region is constantly UNSET.
>
> Acked-by: Felix Fietkau <[email protected]>
> Signed-off-by: Timothy Redaelli <[email protected]>
> Signed-off-by: Kalle Valo <[email protected]>

Patch applied to ath-next branch of ath.git, thanks.

4415d58c47e5 ath9k: fix DFS detector synchronization

--
https://patchwork.kernel.org/patch/10218409/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches