|
@@ -319,6 +319,7 @@ static int wil_cfg80211_scan(struct wiphy *wiphy,
|
|
|
mod_timer(&wil->scan_timer, jiffies + WIL6210_SCAN_TO);
|
|
mod_timer(&wil->scan_timer, jiffies + WIL6210_SCAN_TO);
|
|
|
|
|
|
|
|
memset(&cmd, 0, sizeof(cmd));
|
|
memset(&cmd, 0, sizeof(cmd));
|
|
|
|
|
+ cmd.cmd.scan_type = WMI_ACTIVE_SCAN;
|
|
|
cmd.cmd.num_channels = 0;
|
|
cmd.cmd.num_channels = 0;
|
|
|
n = min(request->n_channels, 4U);
|
|
n = min(request->n_channels, 4U);
|
|
|
for (i = 0; i < n; i++) {
|
|
for (i = 0; i < n; i++) {
|
|
@@ -346,6 +347,11 @@ static int wil_cfg80211_scan(struct wiphy *wiphy,
|
|
|
if (rc)
|
|
if (rc)
|
|
|
goto out;
|
|
goto out;
|
|
|
|
|
|
|
|
|
|
+ if (wil->discovery_mode && cmd.cmd.scan_type == WMI_ACTIVE_SCAN) {
|
|
|
|
|
+ cmd.cmd.discovery_mode = 1;
|
|
|
|
|
+ wil_dbg_misc(wil, "active scan with discovery_mode=1\n");
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
rc = wmi_send(wil, WMI_START_SCAN_CMDID, &cmd, sizeof(cmd.cmd) +
|
|
rc = wmi_send(wil, WMI_START_SCAN_CMDID, &cmd, sizeof(cmd.cmd) +
|
|
|
cmd.cmd.num_channels * sizeof(cmd.cmd.channel_list[0]));
|
|
cmd.cmd.num_channels * sizeof(cmd.cmd.channel_list[0]));
|
|
|
|
|
|