Commit 0d9de08d authored by Able Liao's avatar Able Liao Committed by Kalle Valo

brcmfmac: do not disconnect for disassoc frame from unconnected AP

Ignore FW event if the event's BSSID is different form the BSSID of the
currently connected AP. Check interface state is connected or not, if
state is not connected that can ignore link down event.
Signed-off-by: default avatarAble Liao <Able.Liao@cypress.com>
Signed-off-by: default avatarChi-hsien Lin <chi-hsien.lin@cypress.com>
Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/20200618160739.21457-4-chi-hsien.lin@cypress.com
parent 1b050d97
...@@ -6027,7 +6027,12 @@ brcmf_notify_connect_status(struct brcmf_if *ifp, ...@@ -6027,7 +6027,12 @@ brcmf_notify_connect_status(struct brcmf_if *ifp,
brcmf_net_setcarrier(ifp, true); brcmf_net_setcarrier(ifp, true);
} else if (brcmf_is_linkdown(e)) { } else if (brcmf_is_linkdown(e)) {
brcmf_dbg(CONN, "Linkdown\n"); brcmf_dbg(CONN, "Linkdown\n");
if (!brcmf_is_ibssmode(ifp->vif)) { if (!brcmf_is_ibssmode(ifp->vif) &&
test_bit(BRCMF_VIF_STATUS_CONNECTED,
&ifp->vif->sme_state)) {
if (memcmp(profile->bssid, e->addr, ETH_ALEN))
return err;
brcmf_bss_connect_done(cfg, ndev, e, false); brcmf_bss_connect_done(cfg, ndev, e, false);
brcmf_link_down(ifp->vif, brcmf_link_down(ifp->vif,
brcmf_map_fw_linkdown_reason(e), brcmf_map_fw_linkdown_reason(e),
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment