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 { |
