Lines Matching refs:cmd

26 static void wl18xx_adjust_channels(struct wl18xx_cmd_scan_params *cmd,  in wl18xx_adjust_channels()  argument
29 memcpy(cmd->passive, cmd_channels->passive, sizeof(cmd->passive)); in wl18xx_adjust_channels()
30 memcpy(cmd->active, cmd_channels->active, sizeof(cmd->active)); in wl18xx_adjust_channels()
31 cmd->dfs = cmd_channels->dfs; in wl18xx_adjust_channels()
32 cmd->passive_active = cmd_channels->passive_active; in wl18xx_adjust_channels()
34 memcpy(cmd->channels_2, cmd_channels->channels_2, in wl18xx_adjust_channels()
35 sizeof(cmd->channels_2)); in wl18xx_adjust_channels()
36 memcpy(cmd->channels_5, cmd_channels->channels_5, in wl18xx_adjust_channels()
37 sizeof(cmd->channels_5)); in wl18xx_adjust_channels()
44 struct wl18xx_cmd_scan_params *cmd; in wl18xx_scan_send() local
48 cmd = kzalloc(sizeof(*cmd), GFP_KERNEL); in wl18xx_scan_send()
49 if (!cmd) { in wl18xx_scan_send()
54 cmd->role_id = wlvif->role_id; in wl18xx_scan_send()
56 if (WARN_ON(cmd->role_id == WL12XX_INVALID_ROLE_ID)) { in wl18xx_scan_send()
61 cmd->scan_type = SCAN_TYPE_SEARCH; in wl18xx_scan_send()
62 cmd->rssi_threshold = -127; in wl18xx_scan_send()
63 cmd->snr_threshold = 0; in wl18xx_scan_send()
65 cmd->bss_type = SCAN_BSS_TYPE_ANY; in wl18xx_scan_send()
67 cmd->ssid_from_list = 0; in wl18xx_scan_send()
68 cmd->filter = 0; in wl18xx_scan_send()
69 cmd->add_broadcast = 0; in wl18xx_scan_send()
71 cmd->urgency = 0; in wl18xx_scan_send()
72 cmd->protect = 0; in wl18xx_scan_send()
74 cmd->n_probe_reqs = wl->conf.scan.num_probe_reqs; in wl18xx_scan_send()
75 cmd->terminate_after = 0; in wl18xx_scan_send()
89 wl18xx_adjust_channels(cmd, cmd_channels); in wl18xx_scan_send()
95 cmd->total_cycles = 1; in wl18xx_scan_send()
98 cmd->rate = WL18XX_SCAN_RATE_6; in wl18xx_scan_send()
100 cmd->tag = WL1271_SCAN_DEFAULT_TAG; in wl18xx_scan_send()
103 cmd->ssid_len = req->ssids[0].ssid_len; in wl18xx_scan_send()
104 memcpy(cmd->ssid, req->ssids[0].ssid, cmd->ssid_len); in wl18xx_scan_send()
108 if (cmd->active[0]) { in wl18xx_scan_send()
111 cmd->role_id, band, in wl18xx_scan_send()
125 if (cmd->active[1] || cmd->dfs) { in wl18xx_scan_send()
128 cmd->role_id, band, in wl18xx_scan_send()
142 wl1271_dump(DEBUG_SCAN, "SCAN: ", cmd, sizeof(*cmd)); in wl18xx_scan_send()
144 ret = wl1271_cmd_send(wl, CMD_SCAN, cmd, sizeof(*cmd), 0); in wl18xx_scan_send()
152 kfree(cmd); in wl18xx_scan_send()
170 struct wl18xx_cmd_scan_params *cmd; in wl18xx_scan_sched_scan_config() local
182 cmd = kzalloc(sizeof(*cmd), GFP_KERNEL); in wl18xx_scan_sched_scan_config()
183 if (!cmd) { in wl18xx_scan_sched_scan_config()
188 cmd->role_id = wlvif->role_id; in wl18xx_scan_sched_scan_config()
190 if (WARN_ON(cmd->role_id == WL12XX_INVALID_ROLE_ID)) { in wl18xx_scan_sched_scan_config()
195 cmd->scan_type = SCAN_TYPE_PERIODIC; in wl18xx_scan_sched_scan_config()
196 cmd->rssi_threshold = c->rssi_threshold; in wl18xx_scan_sched_scan_config()
197 cmd->snr_threshold = c->snr_threshold; in wl18xx_scan_sched_scan_config()
200 cmd->bss_type = SCAN_BSS_TYPE_ANY; in wl18xx_scan_sched_scan_config()
202 cmd->ssid_from_list = 1; in wl18xx_scan_sched_scan_config()
204 cmd->filter = 1; in wl18xx_scan_sched_scan_config()
205 cmd->add_broadcast = 0; in wl18xx_scan_sched_scan_config()
207 cmd->urgency = 0; in wl18xx_scan_sched_scan_config()
208 cmd->protect = 0; in wl18xx_scan_sched_scan_config()
210 cmd->n_probe_reqs = c->num_probe_reqs; in wl18xx_scan_sched_scan_config()
212 cmd->terminate_after = 0; in wl18xx_scan_sched_scan_config()
224 wl18xx_adjust_channels(cmd, cmd_channels); in wl18xx_scan_sched_scan_config()
226 cmd->short_cycles_sec = 0; in wl18xx_scan_sched_scan_config()
227 cmd->long_cycles_sec = cpu_to_le16(req->interval); in wl18xx_scan_sched_scan_config()
228 cmd->short_cycles_count = 0; in wl18xx_scan_sched_scan_config()
230 cmd->total_cycles = 0; in wl18xx_scan_sched_scan_config()
232 cmd->tag = WL1271_SCAN_DEFAULT_TAG; in wl18xx_scan_sched_scan_config()
235 cmd->report_threshold = 1; in wl18xx_scan_sched_scan_config()
236 cmd->terminate_on_report = 0; in wl18xx_scan_sched_scan_config()
238 if (cmd->active[0]) { in wl18xx_scan_sched_scan_config()
241 cmd->role_id, band, in wl18xx_scan_sched_scan_config()
255 if (cmd->active[1] || cmd->dfs) { in wl18xx_scan_sched_scan_config()
258 cmd->role_id, band, in wl18xx_scan_sched_scan_config()
272 wl1271_dump(DEBUG_SCAN, "SCAN: ", cmd, sizeof(*cmd)); in wl18xx_scan_sched_scan_config()
274 ret = wl1271_cmd_send(wl, CMD_SCAN, cmd, sizeof(*cmd), 0); in wl18xx_scan_sched_scan_config()
282 kfree(cmd); in wl18xx_scan_sched_scan_config()