diff options
author | Jérôme Pouiller <jerome.pouiller@silabs.com> | 2020-04-15 18:11:33 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2020-04-16 12:29:41 +0200 |
commit | 1ab6bf4c56bb5f3ecea4453d40a7f4e882a7fbb7 (patch) | |
tree | 51238465eb3f5b63c92659232e8e2adac2ab9487 /drivers/staging | |
parent | b3919d9bbcde6c27f2072dd4242c54e076bb17b7 (diff) | |
download | linux-1ab6bf4c56bb5f3ecea4453d40a7f4e882a7fbb7.tar.bz2 |
staging: wfx: do not wait for a dtim before associate
The only reason we ask to mac80211 to wait for a dtim before to
associate is to get an accurate DTIM value. However, we can temporary
set the dtim period to 1. Then we can waiting for
BSS_CHANGED_BEACON_INFO for the real value. Thus, the association
process is faster.
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Link: https://lore.kernel.org/r/20200415161147.69738-7-Jerome.Pouiller@silabs.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging')
-rw-r--r-- | drivers/staging/wfx/main.c | 1 | ||||
-rw-r--r-- | drivers/staging/wfx/sta.c | 3 |
2 files changed, 1 insertions, 3 deletions
diff --git a/drivers/staging/wfx/main.c b/drivers/staging/wfx/main.c index b8a01ba0d381..8a2c96dacd63 100644 --- a/drivers/staging/wfx/main.c +++ b/drivers/staging/wfx/main.c @@ -288,7 +288,6 @@ struct wfx_dev *wfx_init_common(struct device *dev, SET_IEEE80211_DEV(hw, dev); - ieee80211_hw_set(hw, NEED_DTIM_BEFORE_ASSOC); ieee80211_hw_set(hw, TX_AMPDU_SETUP_IN_HW); ieee80211_hw_set(hw, AMPDU_AGGREGATION); ieee80211_hw_set(hw, CONNECTION_MONITOR); diff --git a/drivers/staging/wfx/sta.c b/drivers/staging/wfx/sta.c index 7255899b4a5a..c8a23146cae0 100644 --- a/drivers/staging/wfx/sta.c +++ b/drivers/staging/wfx/sta.c @@ -630,8 +630,7 @@ static void wfx_join_finalize(struct wfx_vif *wvif, wvif->state = WFX_STATE_STA; hif_keep_alive_period(wvif, 0); hif_set_bss_params(wvif, &wvif->bss_params); - hif_set_beacon_wakeup_period(wvif, info->dtim_period, - info->dtim_period); + hif_set_beacon_wakeup_period(wvif, 1, 1); wfx_update_pm(wvif); } } |