diff options
author | Martin Kaistra <martin.kaistra@linutronix.de> | 2024-09-30 10:49:55 +0200 |
---|---|---|
committer | Ping-Ke Shih <pkshih@realtek.com> | 2024-10-05 04:57:58 +0200 |
commit | d7063ed6758c62e00a2f56467ded85a021fac67a (patch) | |
tree | 88ab241c5640fedb5e7bcb1097c3e026e7cce4f8 /drivers/net | |
parent | wifi: rtw89: debug: add beacon RSSI for debugging (diff) | |
download | linux-d7063ed6758c62e00a2f56467ded85a021fac67a.tar.xz linux-d7063ed6758c62e00a2f56467ded85a021fac67a.zip |
wifi: rtl8xxxu: Perform update_beacon_work when beaconing is enabled
In STA+AP concurrent mode, performing a scan operation on one vif
temporarily stops beacons on the other. When the scan is completed,
beacons are enabled again with BSS_CHANGED_BEACON_ENABLED.
We can observe that no beacons are being sent when just
rtl8xxxu_start_tx_beacon() is being called.
Thus, also perform update_beacon_work in order to restore beaconing.
Fixes: cde8848cad0b ("wifi: rtl8xxxu: Add beacon functions")
Signed-off-by: Martin Kaistra <martin.kaistra@linutronix.de>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Link: https://patch.msgid.link/20240930084955.455241-1-martin.kaistra@linutronix.de
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/wireless/realtek/rtl8xxxu/core.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/wireless/realtek/rtl8xxxu/core.c b/drivers/net/wireless/realtek/rtl8xxxu/core.c index 7891c988dd5f..f95898f68d68 100644 --- a/drivers/net/wireless/realtek/rtl8xxxu/core.c +++ b/drivers/net/wireless/realtek/rtl8xxxu/core.c @@ -5058,10 +5058,12 @@ rtl8xxxu_bss_info_changed(struct ieee80211_hw *hw, struct ieee80211_vif *vif, } if (changed & BSS_CHANGED_BEACON_ENABLED) { - if (bss_conf->enable_beacon) + if (bss_conf->enable_beacon) { rtl8xxxu_start_tx_beacon(priv); - else + schedule_delayed_work(&priv->update_beacon_work, 0); + } else { rtl8xxxu_stop_tx_beacon(priv); + } } if (changed & BSS_CHANGED_BEACON) |