diff options
Diffstat (limited to 'drivers/net/wireless/libertas/hostcmd.h')
-rw-r--r-- | drivers/net/wireless/libertas/hostcmd.h | 69 |
1 files changed, 47 insertions, 22 deletions
diff --git a/drivers/net/wireless/libertas/hostcmd.h b/drivers/net/wireless/libertas/hostcmd.h index a899aeb676bb..0a2e29140add 100644 --- a/drivers/net/wireless/libertas/hostcmd.h +++ b/drivers/net/wireless/libertas/hostcmd.h | |||
@@ -13,8 +13,19 @@ | |||
13 | 13 | ||
14 | /* TxPD descriptor */ | 14 | /* TxPD descriptor */ |
15 | struct txpd { | 15 | struct txpd { |
16 | /* Current Tx packet status */ | 16 | /* union to cope up with later FW revisions */ |
17 | __le32 tx_status; | 17 | union { |
18 | /* Current Tx packet status */ | ||
19 | __le32 tx_status; | ||
20 | struct { | ||
21 | /* BSS type: client, AP, etc. */ | ||
22 | u8 bss_type; | ||
23 | /* BSS number */ | ||
24 | u8 bss_num; | ||
25 | /* Reserved */ | ||
26 | __le16 reserved; | ||
27 | } bss; | ||
28 | } u; | ||
18 | /* Tx control */ | 29 | /* Tx control */ |
19 | __le32 tx_control; | 30 | __le32 tx_control; |
20 | __le32 tx_packet_location; | 31 | __le32 tx_packet_location; |
@@ -36,8 +47,17 @@ struct txpd { | |||
36 | 47 | ||
37 | /* RxPD Descriptor */ | 48 | /* RxPD Descriptor */ |
38 | struct rxpd { | 49 | struct rxpd { |
39 | /* Current Rx packet status */ | 50 | /* union to cope up with later FW revisions */ |
40 | __le16 status; | 51 | union { |
52 | /* Current Rx packet status */ | ||
53 | __le16 status; | ||
54 | struct { | ||
55 | /* BSS type: client, AP, etc. */ | ||
56 | u8 bss_type; | ||
57 | /* BSS number */ | ||
58 | u8 bss_num; | ||
59 | } bss; | ||
60 | } u; | ||
41 | 61 | ||
42 | /* SNR */ | 62 | /* SNR */ |
43 | u8 snr; | 63 | u8 snr; |
@@ -230,7 +250,9 @@ struct cmd_ds_gspi_bus_config { | |||
230 | } __attribute__ ((packed)); | 250 | } __attribute__ ((packed)); |
231 | 251 | ||
232 | struct cmd_ds_802_11_authenticate { | 252 | struct cmd_ds_802_11_authenticate { |
233 | u8 macaddr[ETH_ALEN]; | 253 | struct cmd_header hdr; |
254 | |||
255 | u8 bssid[ETH_ALEN]; | ||
234 | u8 authtype; | 256 | u8 authtype; |
235 | u8 reserved[10]; | 257 | u8 reserved[10]; |
236 | } __attribute__ ((packed)); | 258 | } __attribute__ ((packed)); |
@@ -243,22 +265,23 @@ struct cmd_ds_802_11_deauthenticate { | |||
243 | } __attribute__ ((packed)); | 265 | } __attribute__ ((packed)); |
244 | 266 | ||
245 | struct cmd_ds_802_11_associate { | 267 | struct cmd_ds_802_11_associate { |
246 | u8 peerstaaddr[6]; | 268 | struct cmd_header hdr; |
269 | |||
270 | u8 bssid[6]; | ||
247 | __le16 capability; | 271 | __le16 capability; |
248 | __le16 listeninterval; | 272 | __le16 listeninterval; |
249 | __le16 bcnperiod; | 273 | __le16 bcnperiod; |
250 | u8 dtimperiod; | 274 | u8 dtimperiod; |
251 | 275 | u8 iebuf[512]; /* Enough for required and most optional IEs */ | |
252 | #if 0 | ||
253 | mrvlietypes_ssidparamset_t ssidParamSet; | ||
254 | mrvlietypes_phyparamset_t phyparamset; | ||
255 | mrvlietypes_ssparamset_t ssparamset; | ||
256 | mrvlietypes_ratesparamset_t ratesParamSet; | ||
257 | #endif | ||
258 | } __attribute__ ((packed)); | 276 | } __attribute__ ((packed)); |
259 | 277 | ||
260 | struct cmd_ds_802_11_associate_rsp { | 278 | struct cmd_ds_802_11_associate_response { |
261 | struct ieeetypes_assocrsp assocRsp; | 279 | struct cmd_header hdr; |
280 | |||
281 | __le16 capability; | ||
282 | __le16 statuscode; | ||
283 | __le16 aid; | ||
284 | u8 iebuf[512]; | ||
262 | } __attribute__ ((packed)); | 285 | } __attribute__ ((packed)); |
263 | 286 | ||
264 | struct cmd_ds_802_11_set_wep { | 287 | struct cmd_ds_802_11_set_wep { |
@@ -515,9 +538,11 @@ struct cmd_ds_802_11_ad_hoc_start { | |||
515 | u8 bsstype; | 538 | u8 bsstype; |
516 | __le16 beaconperiod; | 539 | __le16 beaconperiod; |
517 | u8 dtimperiod; /* Reserved on v9 and later */ | 540 | u8 dtimperiod; /* Reserved on v9 and later */ |
518 | union IEEEtypes_ssparamset ssparamset; | 541 | struct ieee_ie_ibss_param_set ibss; |
519 | union ieeetypes_phyparamset phyparamset; | 542 | u8 reserved1[4]; |
520 | __le16 probedelay; | 543 | struct ieee_ie_ds_param_set ds; |
544 | u8 reserved2[4]; | ||
545 | __le16 probedelay; /* Reserved on v9 and later */ | ||
521 | __le16 capability; | 546 | __le16 capability; |
522 | u8 rates[MAX_RATES]; | 547 | u8 rates[MAX_RATES]; |
523 | u8 tlv_memory_size_pad[100]; | 548 | u8 tlv_memory_size_pad[100]; |
@@ -538,8 +563,10 @@ struct adhoc_bssdesc { | |||
538 | u8 dtimperiod; | 563 | u8 dtimperiod; |
539 | __le64 timestamp; | 564 | __le64 timestamp; |
540 | __le64 localtime; | 565 | __le64 localtime; |
541 | union ieeetypes_phyparamset phyparamset; | 566 | struct ieee_ie_ds_param_set ds; |
542 | union IEEEtypes_ssparamset ssparamset; | 567 | u8 reserved1[4]; |
568 | struct ieee_ie_ibss_param_set ibss; | ||
569 | u8 reserved2[4]; | ||
543 | __le16 capability; | 570 | __le16 capability; |
544 | u8 rates[MAX_RATES]; | 571 | u8 rates[MAX_RATES]; |
545 | 572 | ||
@@ -745,8 +772,6 @@ struct cmd_ds_command { | |||
745 | /* command Body */ | 772 | /* command Body */ |
746 | union { | 773 | union { |
747 | struct cmd_ds_802_11_ps_mode psmode; | 774 | struct cmd_ds_802_11_ps_mode psmode; |
748 | struct cmd_ds_802_11_associate associate; | ||
749 | struct cmd_ds_802_11_authenticate auth; | ||
750 | struct cmd_ds_802_11_get_stat gstat; | 775 | struct cmd_ds_802_11_get_stat gstat; |
751 | struct cmd_ds_802_3_get_stat gstat_8023; | 776 | struct cmd_ds_802_3_get_stat gstat_8023; |
752 | struct cmd_ds_802_11_rf_antenna rant; | 777 | struct cmd_ds_802_11_rf_antenna rant; |