aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/wireless/wl12xx/wl1271_event.c12
-rw-r--r--drivers/net/wireless/wl12xx/wl1271_main.c9
2 files changed, 9 insertions, 12 deletions
diff --git a/drivers/net/wireless/wl12xx/wl1271_event.c b/drivers/net/wireless/wl12xx/wl1271_event.c
index a5c1910a024..0e0808fa4e3 100644
--- a/drivers/net/wireless/wl12xx/wl1271_event.c
+++ b/drivers/net/wireless/wl12xx/wl1271_event.c
@@ -31,14 +31,11 @@
31static int wl1271_event_scan_complete(struct wl1271 *wl, 31static int wl1271_event_scan_complete(struct wl1271 *wl,
32 struct event_mailbox *mbox) 32 struct event_mailbox *mbox)
33{ 33{
34 int size = sizeof(struct wl12xx_probe_req_template);
35 wl1271_debug(DEBUG_EVENT, "status: 0x%x", 34 wl1271_debug(DEBUG_EVENT, "status: 0x%x",
36 mbox->scheduled_scan_status); 35 mbox->scheduled_scan_status);
37 36
38 if (test_bit(WL1271_FLAG_SCANNING, &wl->flags)) { 37 if (test_bit(WL1271_FLAG_SCANNING, &wl->flags)) {
39 if (wl->scan.state == WL1271_SCAN_BAND_DUAL) { 38 if (wl->scan.state == WL1271_SCAN_BAND_DUAL) {
40 wl1271_cmd_template_set(wl, CMD_TEMPL_CFG_PROBE_REQ_2_4,
41 NULL, size);
42 /* 2.4 GHz band scanned, scan 5 GHz band, pretend 39 /* 2.4 GHz band scanned, scan 5 GHz band, pretend
43 * to the wl1271_cmd_scan function that we are not 40 * to the wl1271_cmd_scan function that we are not
44 * scanning as it checks that. 41 * scanning as it checks that.
@@ -52,15 +49,6 @@ static int wl1271_event_scan_complete(struct wl1271 *wl,
52 WL1271_SCAN_BAND_5_GHZ, 49 WL1271_SCAN_BAND_5_GHZ,
53 wl->scan.probe_requests); 50 wl->scan.probe_requests);
54 } else { 51 } else {
55 if (wl->scan.state == WL1271_SCAN_BAND_2_4_GHZ)
56 wl1271_cmd_template_set(wl,
57 CMD_TEMPL_CFG_PROBE_REQ_2_4,
58 NULL, size);
59 else
60 wl1271_cmd_template_set(wl,
61 CMD_TEMPL_CFG_PROBE_REQ_5,
62 NULL, size);
63
64 mutex_unlock(&wl->mutex); 52 mutex_unlock(&wl->mutex);
65 ieee80211_scan_completed(wl->hw, false); 53 ieee80211_scan_completed(wl->hw, false);
66 mutex_lock(&wl->mutex); 54 mutex_lock(&wl->mutex);
diff --git a/drivers/net/wireless/wl12xx/wl1271_main.c b/drivers/net/wireless/wl12xx/wl1271_main.c
index 523e051d62d..849c4ac6e01 100644
--- a/drivers/net/wireless/wl12xx/wl1271_main.c
+++ b/drivers/net/wireless/wl12xx/wl1271_main.c
@@ -1667,6 +1667,15 @@ static void wl1271_op_bss_info_changed(struct ieee80211_hw *hw,
1667 if (ret < 0) 1667 if (ret < 0)
1668 goto out_sleep; 1668 goto out_sleep;
1669 1669
1670 /*
1671 * The SSID is intentionally set to NULL here - the
1672 * firmware will set the probe request with a
1673 * broadcast SSID regardless of what we set in the
1674 * template.
1675 */
1676 ret = wl1271_cmd_build_probe_req(wl, NULL, 0,
1677 NULL, 0, wl->band);
1678
1670 ret = wl1271_acx_aid(wl, wl->aid); 1679 ret = wl1271_acx_aid(wl, wl->aid);
1671 if (ret < 0) 1680 if (ret < 0)
1672 goto out_sleep; 1681 goto out_sleep;