From: Jérôme Pouiller <jerome.pouiller@xxxxxxxxxx> Current code skip some configuration during joining an IBSS network. Indeed, it seems that this configuration is not used in IBSS. However, it would be harmless to set them. In add, we would prefer to keep association processes for ad-hoc and managed networks the closest as possible. It also ensures the values of internal parameters of the firmware. Therefore, apply them unconditionally. Signed-off-by: Jérôme Pouiller <jerome.pouiller@xxxxxxxxxx> --- drivers/staging/wfx/sta.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/drivers/staging/wfx/sta.c b/drivers/staging/wfx/sta.c index a0c841658a0b..a0c7737903b9 100644 --- a/drivers/staging/wfx/sta.c +++ b/drivers/staging/wfx/sta.c @@ -494,14 +494,13 @@ static void wfx_join_finalize(struct wfx_vif *wvif, bss_params.aid = info->aid; hif_set_association_mode(wvif, info); + hif_keep_alive_period(wvif, 0); + hif_set_bss_params(wvif, &bss_params); + hif_set_beacon_wakeup_period(wvif, 1, 1); + wfx_update_pm(wvif); - if (!info->ibss_joined) { + if (!info->ibss_joined) wvif->state = WFX_STATE_STA; - hif_keep_alive_period(wvif, 0); - hif_set_bss_params(wvif, &bss_params); - hif_set_beacon_wakeup_period(wvif, 1, 1); - wfx_update_pm(wvif); - } } int wfx_join_ibss(struct ieee80211_hw *hw, struct ieee80211_vif *vif) -- 2.26.1