aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-commands.h
diff options
context:
space:
mode:
authorTomas Winkler <tomas.winkler@intel.com>2008-05-04 22:22:34 -0400
committerJohn W. Linville <linville@tuxdriver.com>2008-05-14 16:29:45 -0400
commit133636deffc86809f59a0c8b768408d13237a9a2 (patch)
tree2c1d156db37f33ad9dd7eb311c6977d2948e9277 /drivers/net/wireless/iwlwifi/iwl-commands.h
parentdb11d6343aa14ab61258bfad9178042d4be49333 (diff)
iwlwifi: generalize iwl4965_send_add_station function
This patch moves iwl4965_send_add_station to iwlcore under new name iwl_send_add_sta. Function uses build command handler in order to support multiple HWs. Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-commands.h')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-commands.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-commands.h b/drivers/net/wireless/iwlwifi/iwl-commands.h
index e5449b8c3359..d16a853f376a 100644
--- a/drivers/net/wireless/iwlwifi/iwl-commands.h
+++ b/drivers/net/wireless/iwlwifi/iwl-commands.h
@@ -769,6 +769,20 @@ struct iwl4965_keyinfo {
769 u8 key[16]; /* 16-byte unicast decryption key */ 769 u8 key[16]; /* 16-byte unicast decryption key */
770} __attribute__ ((packed)); 770} __attribute__ ((packed));
771 771
772/* 5000 */
773struct iwl_keyinfo {
774 __le16 key_flags;
775 u8 tkip_rx_tsc_byte2; /* TSC[2] for key mix ph1 detection */
776 u8 reserved1;
777 __le16 tkip_rx_ttak[5]; /* 10-byte unicast TKIP TTAK */
778 u8 key_offset;
779 u8 reserved2;
780 u8 key[16]; /* 16-byte unicast decryption key */
781 __le64 tx_secur_seq_cnt;
782 __le64 hw_tkip_mic_rx_key;
783 __le64 hw_tkip_mic_tx_key;
784} __attribute__ ((packed));
785
772/** 786/**
773 * struct sta_id_modify 787 * struct sta_id_modify
774 * @addr[ETH_ALEN]: station's MAC address 788 * @addr[ETH_ALEN]: station's MAC address
@@ -844,6 +858,38 @@ struct iwl4965_addsta_cmd {
844 __le32 reserved2; 858 __le32 reserved2;
845} __attribute__ ((packed)); 859} __attribute__ ((packed));
846 860
861/* 5000 */
862struct iwl_addsta_cmd {
863 u8 mode; /* 1: modify existing, 0: add new station */
864 u8 reserved[3];
865 struct sta_id_modify sta;
866 struct iwl_keyinfo key;
867 __le32 station_flags; /* STA_FLG_* */
868 __le32 station_flags_msk; /* STA_FLG_* */
869
870 /* bit field to disable (1) or enable (0) Tx for Traffic ID (TID)
871 * corresponding to bit (e.g. bit 5 controls TID 5).
872 * Set modify_mask bit STA_MODIFY_TID_DISABLE_TX to use this field. */
873 __le16 tid_disable_tx;
874
875 __le16 reserved1;
876
877 /* TID for which to add block-ack support.
878 * Set modify_mask bit STA_MODIFY_ADDBA_TID_MSK to use this field. */
879 u8 add_immediate_ba_tid;
880
881 /* TID for which to remove block-ack support.
882 * Set modify_mask bit STA_MODIFY_DELBA_TID_MSK to use this field. */
883 u8 remove_immediate_ba_tid;
884
885 /* Starting Sequence Number for added block-ack support.
886 * Set modify_mask bit STA_MODIFY_ADDBA_TID_MSK to use this field. */
887 __le16 add_immediate_ba_ssn;
888
889 __le32 reserved2;
890} __attribute__ ((packed));
891
892
847#define ADD_STA_SUCCESS_MSK 0x1 893#define ADD_STA_SUCCESS_MSK 0x1
848#define ADD_STA_NO_ROOM_IN_TABLE 0x2 894#define ADD_STA_NO_ROOM_IN_TABLE 0x2
849#define ADD_STA_NO_BLOCK_ACK_RESOURCE 0x4 895#define ADD_STA_NO_BLOCK_ACK_RESOURCE 0x4