developer | 05f3b2b | 2024-08-19 19:17:34 +0800 | [diff] [blame^] | 1 | From 19524840c953100d64d44763576b75a30377f3bf Mon Sep 17 00:00:00 2001 |
developer | 66e89bc | 2024-04-23 14:50:01 +0800 | [diff] [blame] | 2 | From: StanleyYP Wang <StanleyYP.Wang@mediatek.com> |
| 3 | Date: Thu, 1 Feb 2024 17:46:49 +0800 |
developer | 05f3b2b | 2024-08-19 19:17:34 +0800 | [diff] [blame^] | 4 | Subject: [PATCH 53/89] mtk: mac80211: fix radar required of link issue in |
developer | 66e89bc | 2024-04-23 14:50:01 +0800 | [diff] [blame] | 5 | reserve_reassign and reserve_assign |
| 6 | |
| 7 | link->radar_required is not updated in |
| 8 | ieee80211_link_use_reserved_assign & ieee80211_link_use_reserved_reassign |
| 9 | This will lead to DFS RDD init incomplete (RDD_CAC_START, RDD_CAC_END & |
| 10 | RDD_DET_MODE is not set to fw) |
| 11 | |
developer | 66e89bc | 2024-04-23 14:50:01 +0800 | [diff] [blame] | 12 | Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com> |
developer | 66e89bc | 2024-04-23 14:50:01 +0800 | [diff] [blame] | 13 | --- |
| 14 | net/mac80211/chan.c | 2 ++ |
| 15 | 1 file changed, 2 insertions(+) |
| 16 | |
| 17 | diff --git a/net/mac80211/chan.c b/net/mac80211/chan.c |
developer | 05f3b2b | 2024-08-19 19:17:34 +0800 | [diff] [blame^] | 18 | index 608ed52..bdff227 100644 |
developer | 66e89bc | 2024-04-23 14:50:01 +0800 | [diff] [blame] | 19 | --- a/net/mac80211/chan.c |
| 20 | +++ b/net/mac80211/chan.c |
developer | 05f3b2b | 2024-08-19 19:17:34 +0800 | [diff] [blame^] | 21 | @@ -1337,6 +1337,7 @@ ieee80211_link_use_reserved_reassign(struct ieee80211_link_data *link) |
developer | 66e89bc | 2024-04-23 14:50:01 +0800 | [diff] [blame] | 22 | if (link_conf->chanreq.oper.width != link->reserved.oper.width) |
| 23 | changed = BSS_CHANGED_BANDWIDTH; |
| 24 | |
| 25 | + link->radar_required = link->reserved_radar_required; |
| 26 | ieee80211_link_update_chanreq(link, &link->reserved); |
| 27 | |
| 28 | _ieee80211_change_chanctx(local, new_ctx, old_ctx, chanreq, link); |
developer | 05f3b2b | 2024-08-19 19:17:34 +0800 | [diff] [blame^] | 29 | @@ -1418,6 +1419,7 @@ ieee80211_link_use_reserved_assign(struct ieee80211_link_data *link) |
developer | 66e89bc | 2024-04-23 14:50:01 +0800 | [diff] [blame] | 30 | list_del(&link->reserved_chanctx_list); |
| 31 | link->reserved_chanctx = NULL; |
| 32 | |
| 33 | + link->radar_required = link->reserved_radar_required; |
developer | 05f3b2b | 2024-08-19 19:17:34 +0800 | [diff] [blame^] | 34 | err = ieee80211_assign_link_chanctx(link, new_ctx, false); |
developer | 66e89bc | 2024-04-23 14:50:01 +0800 | [diff] [blame] | 35 | if (err) { |
| 36 | if (ieee80211_chanctx_refcount(local, new_ctx) == 0) |
| 37 | -- |
developer | dad89a3 | 2024-04-29 14:17:17 +0800 | [diff] [blame] | 38 | 2.18.0 |
developer | 66e89bc | 2024-04-23 14:50:01 +0800 | [diff] [blame] | 39 | |