aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/libertas/hostcmd.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/libertas/hostcmd.h')
-rw-r--r--drivers/net/wireless/libertas/hostcmd.h69
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 */
15struct txpd { 15struct 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 */
38struct rxpd { 49struct 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
232struct cmd_ds_802_11_authenticate { 252struct 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
245struct cmd_ds_802_11_associate { 267struct 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
260struct cmd_ds_802_11_associate_rsp { 278struct 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
264struct cmd_ds_802_11_set_wep { 287struct 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;