diff options
Diffstat (limited to 'drivers/net/wireless/wl12xx/main.c')
-rw-r--r-- | drivers/net/wireless/wl12xx/main.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/net/wireless/wl12xx/main.c b/drivers/net/wireless/wl12xx/main.c index b1555fb5815b..a1ede7b48270 100644 --- a/drivers/net/wireless/wl12xx/main.c +++ b/drivers/net/wireless/wl12xx/main.c | |||
@@ -3791,8 +3791,7 @@ static void wl1271_bss_info_changed_sta(struct wl1271 *wl, | |||
3791 | wlvif->rssi_thold = bss_conf->cqm_rssi_thold; | 3791 | wlvif->rssi_thold = bss_conf->cqm_rssi_thold; |
3792 | } | 3792 | } |
3793 | 3793 | ||
3794 | if (changed & BSS_CHANGED_BSSID && | 3794 | if (changed & BSS_CHANGED_BSSID) |
3795 | (is_ibss || bss_conf->assoc)) | ||
3796 | if (!is_zero_ether_addr(bss_conf->bssid)) { | 3795 | if (!is_zero_ether_addr(bss_conf->bssid)) { |
3797 | ret = wl12xx_cmd_build_null_data(wl, wlvif); | 3796 | ret = wl12xx_cmd_build_null_data(wl, wlvif); |
3798 | if (ret < 0) | 3797 | if (ret < 0) |
@@ -3801,9 +3800,6 @@ static void wl1271_bss_info_changed_sta(struct wl1271 *wl, | |||
3801 | ret = wl1271_build_qos_null_data(wl, vif); | 3800 | ret = wl1271_build_qos_null_data(wl, vif); |
3802 | if (ret < 0) | 3801 | if (ret < 0) |
3803 | goto out; | 3802 | goto out; |
3804 | |||
3805 | /* Need to update the BSSID (for filtering etc) */ | ||
3806 | do_join = true; | ||
3807 | } | 3803 | } |
3808 | 3804 | ||
3809 | if (changed & (BSS_CHANGED_ASSOC | BSS_CHANGED_HT)) { | 3805 | if (changed & (BSS_CHANGED_ASSOC | BSS_CHANGED_HT)) { |
@@ -3830,6 +3826,7 @@ sta_not_found: | |||
3830 | int ieoffset; | 3826 | int ieoffset; |
3831 | wlvif->aid = bss_conf->aid; | 3827 | wlvif->aid = bss_conf->aid; |
3832 | wlvif->beacon_int = bss_conf->beacon_int; | 3828 | wlvif->beacon_int = bss_conf->beacon_int; |
3829 | do_join = true; | ||
3833 | set_assoc = true; | 3830 | set_assoc = true; |
3834 | 3831 | ||
3835 | /* | 3832 | /* |