Commit fa287b8f authored by Eliad Peller's avatar Eliad Peller Committed by Luciano Coelho

wl12xx: don't join upon disassociation

wl12xx "rejoins" upon every BSS_CHANGED_BSSID notification.
However, there is no need to rejoin after disassociation, so just
filter out the case when the new bssid is 00:00:00:00:00:00.
Signed-off-by: default avatarEliad Peller <eliad@wizery.com>
Signed-off-by: default avatarLuciano Coelho <coelho@ti.com>
parent 2354b9fd
...@@ -2266,19 +2266,21 @@ static void wl1271_bss_info_changed_sta(struct wl1271 *wl, ...@@ -2266,19 +2266,21 @@ static void wl1271_bss_info_changed_sta(struct wl1271 *wl,
memcmp(wl->bssid, bss_conf->bssid, ETH_ALEN)) { memcmp(wl->bssid, bss_conf->bssid, ETH_ALEN)) {
memcpy(wl->bssid, bss_conf->bssid, ETH_ALEN); memcpy(wl->bssid, bss_conf->bssid, ETH_ALEN);
ret = wl1271_cmd_build_null_data(wl); if (!is_zero_ether_addr(wl->bssid)) {
if (ret < 0) ret = wl1271_cmd_build_null_data(wl);
goto out; if (ret < 0)
goto out;
ret = wl1271_build_qos_null_data(wl); ret = wl1271_build_qos_null_data(wl);
if (ret < 0) if (ret < 0)
goto out; goto out;
/* filter out all packets not from this BSSID */ /* filter out all packets not from this BSSID */
wl1271_configure_filters(wl, 0); wl1271_configure_filters(wl, 0);
/* Need to update the BSSID (for filtering etc) */ /* Need to update the BSSID (for filtering etc) */
do_join = true; do_join = true;
}
} }
if ((changed & BSS_CHANGED_ASSOC)) { if ((changed & BSS_CHANGED_ASSOC)) {
......
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