Skip to content
/ linux Public
forked from torvalds/linux

Commit

Permalink
wifi: rtl8xxxu: Perform update_beacon_work when beaconing is enabled
Browse files Browse the repository at this point in the history
[ Upstream commit d7063ed ]

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: cde8848 ("wifi: rtl8xxxu: Add beacon functions")
Signed-off-by: Martin Kaistra <[email protected]>
Signed-off-by: Ping-Ke Shih <[email protected]>
Link: https://patch.msgid.link/[email protected]
Signed-off-by: Sasha Levin <[email protected]>
  • Loading branch information
djfun authored and gregkh committed Dec 3, 2024
1 parent 45f7563 commit c91d04b
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions drivers/net/wireless/realtek/rtl8xxxu/core.c
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down

0 comments on commit c91d04b

Please sign in to comment.