Messages in this thread Patch in this message | | | From | David Lin <> | Subject | [PATCH v5 4/6] wifi: mwifiex: fixed missing WMM IE for assoc req. | Date | Fri, 20 Oct 2023 03:34:14 +0000 |
| |
Remain on channel must be removed after authentication is done. Otherwise WMM setting for assoiation request will be removed.
Signed-off-by: David Lin <yu-hao.lin@nxp.com> --- drivers/net/wireless/marvell/mwifiex/cfg80211.c | 12 ++++++++++++ 1 file changed, 12 insertions(+)
diff --git a/drivers/net/wireless/marvell/mwifiex/cfg80211.c b/drivers/net/wireless/marvell/mwifiex/cfg80211.c index a21310f3807c..b99de9f4ca14 100644 --- a/drivers/net/wireless/marvell/mwifiex/cfg80211.c +++ b/drivers/net/wireless/marvell/mwifiex/cfg80211.c @@ -4306,6 +4306,8 @@ mwifiex_cfg80211_authenticate(struct wiphy *wiphy, if (!ret) { priv->roc_cfg.cookie = get_random_u32() | 1; priv->roc_cfg.chan = *req->bss->channel; + } else { + return -EFAULT; } } @@ -4418,6 +4420,16 @@ mwifiex_cfg80211_associate(struct wiphy *wiphy, struct net_device *dev, if (priv->auth_flag && !(priv->auth_flag & HOST_MLME_AUTH_DONE)) return -EBUSY; + if (priv->roc_cfg.cookie) { + ret = mwifiex_remain_on_chan_cfg(priv, HostCmd_ACT_GEN_REMOVE, + &priv->roc_cfg.chan, 0); + if (!ret) + memset(&priv->roc_cfg, 0, + sizeof(struct mwifiex_roc_cfg)); + else + return -EFAULT; + } + if (!mwifiex_stop_bg_scan(priv)) cfg80211_sched_scan_stopped_locked(priv->wdev.wiphy, 0); -- 2.25.1 [unhandled content-type:application/ms-tnef] | |