diff options
Diffstat (limited to 'drivers/net/wireless/wl12xx/wl1251_cmd.h')
-rw-r--r-- | drivers/net/wireless/wl12xx/wl1251_cmd.h | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/drivers/net/wireless/wl12xx/wl1251_cmd.h b/drivers/net/wireless/wl12xx/wl1251_cmd.h index dff798ad0ef5..4ad67cae94d2 100644 --- a/drivers/net/wireless/wl12xx/wl1251_cmd.h +++ b/drivers/net/wireless/wl12xx/wl1251_cmd.h | |||
@@ -27,6 +27,8 @@ | |||
27 | 27 | ||
28 | #include "wl1251.h" | 28 | #include "wl1251.h" |
29 | 29 | ||
30 | #include <net/cfg80211.h> | ||
31 | |||
30 | struct acx_header; | 32 | struct acx_header; |
31 | 33 | ||
32 | int wl1251_cmd_send(struct wl1251 *wl, u16 type, void *buf, size_t buf_len); | 34 | int wl1251_cmd_send(struct wl1251 *wl, u16 type, void *buf, size_t buf_len); |
@@ -43,6 +45,10 @@ int wl1251_cmd_read_memory(struct wl1251 *wl, u32 addr, void *answer, | |||
43 | size_t len); | 45 | size_t len); |
44 | int wl1251_cmd_template_set(struct wl1251 *wl, u16 cmd_id, | 46 | int wl1251_cmd_template_set(struct wl1251 *wl, u16 cmd_id, |
45 | void *buf, size_t buf_len); | 47 | void *buf, size_t buf_len); |
48 | int wl1251_cmd_scan(struct wl1251 *wl, u8 *ssid, size_t ssid_len, | ||
49 | struct ieee80211_channel *channels[], | ||
50 | unsigned int n_channels, unsigned int n_probes); | ||
51 | int wl1251_cmd_trigger_scan_to(struct wl1251 *wl, u32 timeout); | ||
46 | 52 | ||
47 | /* unit ms */ | 53 | /* unit ms */ |
48 | #define WL1251_COMMAND_TIMEOUT 2000 | 54 | #define WL1251_COMMAND_TIMEOUT 2000 |
@@ -163,8 +169,12 @@ struct cmd_read_write_memory { | |||
163 | #define CMDMBOX_HEADER_LEN 4 | 169 | #define CMDMBOX_HEADER_LEN 4 |
164 | #define CMDMBOX_INFO_ELEM_HEADER_LEN 4 | 170 | #define CMDMBOX_INFO_ELEM_HEADER_LEN 4 |
165 | 171 | ||
172 | #define WL1251_SCAN_MIN_DURATION 30000 | ||
173 | #define WL1251_SCAN_MAX_DURATION 60000 | ||
174 | |||
175 | #define WL1251_SCAN_NUM_PROBES 3 | ||
166 | 176 | ||
167 | struct basic_scan_parameters { | 177 | struct wl1251_scan_parameters { |
168 | u32 rx_config_options; | 178 | u32 rx_config_options; |
169 | u32 rx_filter_options; | 179 | u32 rx_filter_options; |
170 | 180 | ||
@@ -189,11 +199,11 @@ struct basic_scan_parameters { | |||
189 | 199 | ||
190 | u8 tid_trigger; | 200 | u8 tid_trigger; |
191 | u8 ssid_len; | 201 | u8 ssid_len; |
192 | u32 ssid[8]; | 202 | u8 ssid[32]; |
193 | 203 | ||
194 | } __attribute__ ((packed)); | 204 | } __attribute__ ((packed)); |
195 | 205 | ||
196 | struct basic_scan_channel_parameters { | 206 | struct wl1251_scan_ch_parameters { |
197 | u32 min_duration; /* in TU */ | 207 | u32 min_duration; /* in TU */ |
198 | u32 max_duration; /* in TU */ | 208 | u32 max_duration; /* in TU */ |
199 | u32 bssid_lsb; | 209 | u32 bssid_lsb; |
@@ -213,11 +223,11 @@ struct basic_scan_channel_parameters { | |||
213 | /* SCAN parameters */ | 223 | /* SCAN parameters */ |
214 | #define SCAN_MAX_NUM_OF_CHANNELS 16 | 224 | #define SCAN_MAX_NUM_OF_CHANNELS 16 |
215 | 225 | ||
216 | struct cmd_scan { | 226 | struct wl1251_cmd_scan { |
217 | struct wl1251_cmd_header header; | 227 | struct wl1251_cmd_header header; |
218 | 228 | ||
219 | struct basic_scan_parameters params; | 229 | struct wl1251_scan_parameters params; |
220 | struct basic_scan_channel_parameters channels[SCAN_MAX_NUM_OF_CHANNELS]; | 230 | struct wl1251_scan_ch_parameters channels[SCAN_MAX_NUM_OF_CHANNELS]; |
221 | } __attribute__ ((packed)); | 231 | } __attribute__ ((packed)); |
222 | 232 | ||
223 | enum { | 233 | enum { |