|
@@ -32,7 +32,7 @@ struct txpd {
|
|
u8 pktdelay_2ms;
|
|
u8 pktdelay_2ms;
|
|
/* reserved */
|
|
/* reserved */
|
|
u8 reserved1;
|
|
u8 reserved1;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
/* RxPD Descriptor */
|
|
/* RxPD Descriptor */
|
|
struct rxpd {
|
|
struct rxpd {
|
|
@@ -63,7 +63,7 @@ struct rxpd {
|
|
/* Pkt Priority */
|
|
/* Pkt Priority */
|
|
u8 priority;
|
|
u8 priority;
|
|
u8 reserved[3];
|
|
u8 reserved[3];
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_header {
|
|
struct cmd_header {
|
|
__le16 command;
|
|
__le16 command;
|
|
@@ -97,7 +97,7 @@ struct enc_key {
|
|
struct lbs_offset_value {
|
|
struct lbs_offset_value {
|
|
u32 offset;
|
|
u32 offset;
|
|
u32 value;
|
|
u32 value;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
/* Define general data structure */
|
|
/* Define general data structure */
|
|
/* cmd_DS_GEN */
|
|
/* cmd_DS_GEN */
|
|
@@ -107,7 +107,7 @@ struct cmd_ds_gen {
|
|
__le16 seqnum;
|
|
__le16 seqnum;
|
|
__le16 result;
|
|
__le16 result;
|
|
void *cmdresp[0];
|
|
void *cmdresp[0];
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
#define S_DS_GEN sizeof(struct cmd_ds_gen)
|
|
#define S_DS_GEN sizeof(struct cmd_ds_gen)
|
|
|
|
|
|
@@ -163,7 +163,7 @@ struct cmd_ds_802_11_subscribe_event {
|
|
* bump this up a bit.
|
|
* bump this up a bit.
|
|
*/
|
|
*/
|
|
uint8_t tlv[128];
|
|
uint8_t tlv[128];
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
/*
|
|
/*
|
|
* This scan handle Country Information IE(802.11d compliant)
|
|
* This scan handle Country Information IE(802.11d compliant)
|
|
@@ -180,7 +180,7 @@ struct cmd_ds_802_11_scan {
|
|
mrvlietypes_chanlistparamset_t ChanListParamSet;
|
|
mrvlietypes_chanlistparamset_t ChanListParamSet;
|
|
mrvlietypes_ratesparamset_t OpRateSet;
|
|
mrvlietypes_ratesparamset_t OpRateSet;
|
|
#endif
|
|
#endif
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_scan_rsp {
|
|
struct cmd_ds_802_11_scan_rsp {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
@@ -188,7 +188,7 @@ struct cmd_ds_802_11_scan_rsp {
|
|
__le16 bssdescriptsize;
|
|
__le16 bssdescriptsize;
|
|
uint8_t nr_sets;
|
|
uint8_t nr_sets;
|
|
uint8_t bssdesc_and_tlvbuffer[0];
|
|
uint8_t bssdesc_and_tlvbuffer[0];
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_get_log {
|
|
struct cmd_ds_802_11_get_log {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
@@ -206,33 +206,33 @@ struct cmd_ds_802_11_get_log {
|
|
__le32 fcserror;
|
|
__le32 fcserror;
|
|
__le32 txframe;
|
|
__le32 txframe;
|
|
__le32 wepundecryptable;
|
|
__le32 wepundecryptable;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_mac_control {
|
|
struct cmd_ds_mac_control {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
__le16 action;
|
|
__le16 action;
|
|
u16 reserved;
|
|
u16 reserved;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_mac_multicast_adr {
|
|
struct cmd_ds_mac_multicast_adr {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
__le16 action;
|
|
__le16 action;
|
|
__le16 nr_of_adrs;
|
|
__le16 nr_of_adrs;
|
|
u8 maclist[ETH_ALEN * MRVDRV_MAX_MULTICAST_LIST_SIZE];
|
|
u8 maclist[ETH_ALEN * MRVDRV_MAX_MULTICAST_LIST_SIZE];
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_authenticate {
|
|
struct cmd_ds_802_11_authenticate {
|
|
u8 macaddr[ETH_ALEN];
|
|
u8 macaddr[ETH_ALEN];
|
|
u8 authtype;
|
|
u8 authtype;
|
|
u8 reserved[10];
|
|
u8 reserved[10];
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_deauthenticate {
|
|
struct cmd_ds_802_11_deauthenticate {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
|
|
|
|
u8 macaddr[ETH_ALEN];
|
|
u8 macaddr[ETH_ALEN];
|
|
__le16 reasoncode;
|
|
__le16 reasoncode;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_associate {
|
|
struct cmd_ds_802_11_associate {
|
|
u8 peerstaaddr[6];
|
|
u8 peerstaaddr[6];
|
|
@@ -251,7 +251,7 @@ struct cmd_ds_802_11_associate {
|
|
|
|
|
|
struct cmd_ds_802_11_associate_rsp {
|
|
struct cmd_ds_802_11_associate_rsp {
|
|
struct ieeetypes_assocrsp assocRsp;
|
|
struct ieeetypes_assocrsp assocRsp;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_set_wep {
|
|
struct cmd_ds_802_11_set_wep {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
@@ -265,7 +265,7 @@ struct cmd_ds_802_11_set_wep {
|
|
/* 40, 128bit or TXWEP */
|
|
/* 40, 128bit or TXWEP */
|
|
uint8_t keytype[4];
|
|
uint8_t keytype[4];
|
|
uint8_t keymaterial[4][16];
|
|
uint8_t keymaterial[4][16];
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_3_get_stat {
|
|
struct cmd_ds_802_3_get_stat {
|
|
__le32 xmitok;
|
|
__le32 xmitok;
|
|
@@ -274,7 +274,7 @@ struct cmd_ds_802_3_get_stat {
|
|
__le32 rcverror;
|
|
__le32 rcverror;
|
|
__le32 rcvnobuffer;
|
|
__le32 rcvnobuffer;
|
|
__le32 rcvcrcerror;
|
|
__le32 rcvcrcerror;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_get_stat {
|
|
struct cmd_ds_802_11_get_stat {
|
|
__le32 txfragmentcnt;
|
|
__le32 txfragmentcnt;
|
|
@@ -294,7 +294,7 @@ struct cmd_ds_802_11_get_stat {
|
|
__le32 txbeacon;
|
|
__le32 txbeacon;
|
|
__le32 rxbeacon;
|
|
__le32 rxbeacon;
|
|
__le32 wepundecryptable;
|
|
__le32 wepundecryptable;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_snmp_mib {
|
|
struct cmd_ds_802_11_snmp_mib {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
@@ -303,58 +303,58 @@ struct cmd_ds_802_11_snmp_mib {
|
|
__le16 oid;
|
|
__le16 oid;
|
|
__le16 bufsize;
|
|
__le16 bufsize;
|
|
u8 value[128];
|
|
u8 value[128];
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_mac_reg_map {
|
|
struct cmd_ds_mac_reg_map {
|
|
__le16 buffersize;
|
|
__le16 buffersize;
|
|
u8 regmap[128];
|
|
u8 regmap[128];
|
|
__le16 reserved;
|
|
__le16 reserved;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_bbp_reg_map {
|
|
struct cmd_ds_bbp_reg_map {
|
|
__le16 buffersize;
|
|
__le16 buffersize;
|
|
u8 regmap[128];
|
|
u8 regmap[128];
|
|
__le16 reserved;
|
|
__le16 reserved;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_rf_reg_map {
|
|
struct cmd_ds_rf_reg_map {
|
|
__le16 buffersize;
|
|
__le16 buffersize;
|
|
u8 regmap[64];
|
|
u8 regmap[64];
|
|
__le16 reserved;
|
|
__le16 reserved;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_mac_reg_access {
|
|
struct cmd_ds_mac_reg_access {
|
|
__le16 action;
|
|
__le16 action;
|
|
__le16 offset;
|
|
__le16 offset;
|
|
__le32 value;
|
|
__le32 value;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_bbp_reg_access {
|
|
struct cmd_ds_bbp_reg_access {
|
|
__le16 action;
|
|
__le16 action;
|
|
__le16 offset;
|
|
__le16 offset;
|
|
u8 value;
|
|
u8 value;
|
|
u8 reserved[3];
|
|
u8 reserved[3];
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_rf_reg_access {
|
|
struct cmd_ds_rf_reg_access {
|
|
__le16 action;
|
|
__le16 action;
|
|
__le16 offset;
|
|
__le16 offset;
|
|
u8 value;
|
|
u8 value;
|
|
u8 reserved[3];
|
|
u8 reserved[3];
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_radio_control {
|
|
struct cmd_ds_802_11_radio_control {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
|
|
|
|
__le16 action;
|
|
__le16 action;
|
|
__le16 control;
|
|
__le16 control;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_beacon_control {
|
|
struct cmd_ds_802_11_beacon_control {
|
|
__le16 action;
|
|
__le16 action;
|
|
__le16 beacon_enable;
|
|
__le16 beacon_enable;
|
|
__le16 beacon_period;
|
|
__le16 beacon_period;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_sleep_params {
|
|
struct cmd_ds_802_11_sleep_params {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
@@ -379,7 +379,7 @@ struct cmd_ds_802_11_sleep_params {
|
|
|
|
|
|
/* reserved field, should be set to zero */
|
|
/* reserved field, should be set to zero */
|
|
__le16 reserved;
|
|
__le16 reserved;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_inactivity_timeout {
|
|
struct cmd_ds_802_11_inactivity_timeout {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
@@ -389,7 +389,7 @@ struct cmd_ds_802_11_inactivity_timeout {
|
|
|
|
|
|
/* Inactivity timeout in msec */
|
|
/* Inactivity timeout in msec */
|
|
__le16 timeout;
|
|
__le16 timeout;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_rf_channel {
|
|
struct cmd_ds_802_11_rf_channel {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
@@ -399,7 +399,7 @@ struct cmd_ds_802_11_rf_channel {
|
|
__le16 rftype; /* unused */
|
|
__le16 rftype; /* unused */
|
|
__le16 reserved; /* unused */
|
|
__le16 reserved; /* unused */
|
|
u8 channellist[32]; /* unused */
|
|
u8 channellist[32]; /* unused */
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_rssi {
|
|
struct cmd_ds_802_11_rssi {
|
|
/* weighting factor */
|
|
/* weighting factor */
|
|
@@ -408,21 +408,21 @@ struct cmd_ds_802_11_rssi {
|
|
__le16 reserved_0;
|
|
__le16 reserved_0;
|
|
__le16 reserved_1;
|
|
__le16 reserved_1;
|
|
__le16 reserved_2;
|
|
__le16 reserved_2;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_rssi_rsp {
|
|
struct cmd_ds_802_11_rssi_rsp {
|
|
__le16 SNR;
|
|
__le16 SNR;
|
|
__le16 noisefloor;
|
|
__le16 noisefloor;
|
|
__le16 avgSNR;
|
|
__le16 avgSNR;
|
|
__le16 avgnoisefloor;
|
|
__le16 avgnoisefloor;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_mac_address {
|
|
struct cmd_ds_802_11_mac_address {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
|
|
|
|
__le16 action;
|
|
__le16 action;
|
|
u8 macadd[ETH_ALEN];
|
|
u8 macadd[ETH_ALEN];
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_rf_tx_power {
|
|
struct cmd_ds_802_11_rf_tx_power {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
@@ -431,7 +431,7 @@ struct cmd_ds_802_11_rf_tx_power {
|
|
__le16 curlevel;
|
|
__le16 curlevel;
|
|
s8 maxlevel;
|
|
s8 maxlevel;
|
|
s8 minlevel;
|
|
s8 minlevel;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_rf_antenna {
|
|
struct cmd_ds_802_11_rf_antenna {
|
|
__le16 action;
|
|
__le16 action;
|
|
@@ -439,33 +439,33 @@ struct cmd_ds_802_11_rf_antenna {
|
|
/* Number of antennas or 0xffff(diversity) */
|
|
/* Number of antennas or 0xffff(diversity) */
|
|
__le16 antennamode;
|
|
__le16 antennamode;
|
|
|
|
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_monitor_mode {
|
|
struct cmd_ds_802_11_monitor_mode {
|
|
__le16 action;
|
|
__le16 action;
|
|
__le16 mode;
|
|
__le16 mode;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_set_boot2_ver {
|
|
struct cmd_ds_set_boot2_ver {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
|
|
|
|
__le16 action;
|
|
__le16 action;
|
|
__le16 version;
|
|
__le16 version;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_fw_wake_method {
|
|
struct cmd_ds_802_11_fw_wake_method {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
|
|
|
|
__le16 action;
|
|
__le16 action;
|
|
__le16 method;
|
|
__le16 method;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_sleep_period {
|
|
struct cmd_ds_802_11_sleep_period {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
|
|
|
|
__le16 action;
|
|
__le16 action;
|
|
__le16 period;
|
|
__le16 period;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_ps_mode {
|
|
struct cmd_ds_802_11_ps_mode {
|
|
__le16 action;
|
|
__le16 action;
|
|
@@ -473,7 +473,7 @@ struct cmd_ds_802_11_ps_mode {
|
|
__le16 multipledtim;
|
|
__le16 multipledtim;
|
|
__le16 reserved;
|
|
__le16 reserved;
|
|
__le16 locallisteninterval;
|
|
__le16 locallisteninterval;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_confirm_sleep {
|
|
struct cmd_confirm_sleep {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
@@ -483,7 +483,7 @@ struct cmd_confirm_sleep {
|
|
__le16 multipledtim;
|
|
__le16 multipledtim;
|
|
__le16 reserved;
|
|
__le16 reserved;
|
|
__le16 locallisteninterval;
|
|
__le16 locallisteninterval;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_data_rate {
|
|
struct cmd_ds_802_11_data_rate {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
@@ -491,14 +491,14 @@ struct cmd_ds_802_11_data_rate {
|
|
__le16 action;
|
|
__le16 action;
|
|
__le16 reserved;
|
|
__le16 reserved;
|
|
u8 rates[MAX_RATES];
|
|
u8 rates[MAX_RATES];
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_rate_adapt_rateset {
|
|
struct cmd_ds_802_11_rate_adapt_rateset {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
__le16 action;
|
|
__le16 action;
|
|
__le16 enablehwauto;
|
|
__le16 enablehwauto;
|
|
__le16 bitmap;
|
|
__le16 bitmap;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_802_11_ad_hoc_start {
|
|
struct cmd_ds_802_11_ad_hoc_start {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|
|
@@ -520,7 +520,7 @@ struct cmd_ds_802_11_ad_hoc_result {
|
|
|
|
|
|
u8 pad[3];
|
|
u8 pad[3];
|
|
u8 bssid[ETH_ALEN];
|
|
u8 bssid[ETH_ALEN];
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct adhoc_bssdesc {
|
|
struct adhoc_bssdesc {
|
|
u8 bssid[ETH_ALEN];
|
|
u8 bssid[ETH_ALEN];
|
|
@@ -578,7 +578,7 @@ struct MrvlIEtype_keyParamSet {
|
|
|
|
|
|
/* key material of size keylen */
|
|
/* key material of size keylen */
|
|
u8 key[32];
|
|
u8 key[32];
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
#define MAX_WOL_RULES 16
|
|
#define MAX_WOL_RULES 16
|
|
|
|
|
|
@@ -590,7 +590,7 @@ struct host_wol_rule {
|
|
__le16 reserve;
|
|
__le16 reserve;
|
|
__be32 sig_mask;
|
|
__be32 sig_mask;
|
|
__be32 signature;
|
|
__be32 signature;
|
|
-};
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct wol_config {
|
|
struct wol_config {
|
|
uint8_t action;
|
|
uint8_t action;
|
|
@@ -598,8 +598,7 @@ struct wol_config {
|
|
uint8_t no_rules_in_cmd;
|
|
uint8_t no_rules_in_cmd;
|
|
uint8_t result;
|
|
uint8_t result;
|
|
struct host_wol_rule rule[MAX_WOL_RULES];
|
|
struct host_wol_rule rule[MAX_WOL_RULES];
|
|
-};
|
|
|
|
-
|
|
|
|
|
|
+} __attribute__ ((packed));
|
|
|
|
|
|
struct cmd_ds_host_sleep {
|
|
struct cmd_ds_host_sleep {
|
|
struct cmd_header hdr;
|
|
struct cmd_header hdr;
|