aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-dev.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-dev.h')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-dev.h24
1 files changed, 21 insertions, 3 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-dev.h b/drivers/net/wireless/iwlwifi/iwl-dev.h
index 16956b777f96..99be58940e27 100644
--- a/drivers/net/wireless/iwlwifi/iwl-dev.h
+++ b/drivers/net/wireless/iwlwifi/iwl-dev.h
@@ -220,8 +220,7 @@ enum iwl_agg_state {
220 * Tx response (REPLY_TX), and the block ack notification 220 * Tx response (REPLY_TX), and the block ack notification
221 * (REPLY_COMPRESSED_BA). 221 * (REPLY_COMPRESSED_BA).
222 * @state: state of the BA agreement establishment / tear down. 222 * @state: state of the BA agreement establishment / tear down.
223 * @txq_id: Tx queue used by the BA session - used by the transport layer. 223 * @txq_id: Tx queue used by the BA session
224 * Needed by the upper layer for debugfs only.
225 * @ssn: the first packet to be sent in AGG HW queue in Tx AGG start flow, or 224 * @ssn: the first packet to be sent in AGG HW queue in Tx AGG start flow, or
226 * the first packet to be sent in legacy HW queue in Tx AGG stop flow. 225 * the first packet to be sent in legacy HW queue in Tx AGG stop flow.
227 * Basically when next_reclaimed reaches ssn, we can tell mac80211 that 226 * Basically when next_reclaimed reaches ssn, we can tell mac80211 that
@@ -623,6 +622,10 @@ struct iwl_force_reset {
623struct iwl_rxon_context { 622struct iwl_rxon_context {
624 struct ieee80211_vif *vif; 623 struct ieee80211_vif *vif;
625 624
625 u8 mcast_queue;
626 u8 ac_to_queue[IEEE80211_NUM_ACS];
627 u8 ac_to_fifo[IEEE80211_NUM_ACS];
628
626 /* 629 /*
627 * We could use the vif to indicate active, but we 630 * We could use the vif to indicate active, but we
628 * also need it to be active during disabling when 631 * also need it to be active during disabling when
@@ -720,6 +723,11 @@ struct iwl_priv {
720 723
721 unsigned long transport_queue_stop; 724 unsigned long transport_queue_stop;
722 bool passive_no_rx; 725 bool passive_no_rx;
726#define IWL_INVALID_AC 0xff
727 u8 queue_to_ac[IWL_MAX_HW_QUEUES];
728 atomic_t ac_stop_count[IEEE80211_NUM_ACS];
729
730 unsigned long agg_q_alloc[BITS_TO_LONGS(IWL_MAX_HW_QUEUES)];
723 731
724 /* ieee device used by generic ieee processing code */ 732 /* ieee device used by generic ieee processing code */
725 struct ieee80211_hw *hw; 733 struct ieee80211_hw *hw;
@@ -731,6 +739,7 @@ struct iwl_priv {
731 struct workqueue_struct *workqueue; 739 struct workqueue_struct *workqueue;
732 740
733 enum ieee80211_band band; 741 enum ieee80211_band band;
742 u8 valid_contexts;
734 743
735 void (*pre_rx_handler)(struct iwl_priv *priv, 744 void (*pre_rx_handler)(struct iwl_priv *priv,
736 struct iwl_rx_cmd_buffer *rxb); 745 struct iwl_rx_cmd_buffer *rxb);
@@ -982,6 +991,15 @@ struct iwl_priv {
982 __le64 replay_ctr; 991 __le64 replay_ctr;
983 __le16 last_seq_ctl; 992 __le16 last_seq_ctl;
984 bool have_rekey_data; 993 bool have_rekey_data;
994
995 /* device_pointers: pointers to ucode event tables */
996 struct {
997 u32 error_event_table;
998 u32 log_event_table;
999 } device_pointers;
1000
1001 /* indicator of loaded ucode image */
1002 enum iwl_ucode_type cur_ucode;
985}; /*iwl_priv */ 1003}; /*iwl_priv */
986 1004
987extern struct kmem_cache *iwl_tx_cmd_pool; 1005extern struct kmem_cache *iwl_tx_cmd_pool;
@@ -998,7 +1016,7 @@ iwl_rxon_ctx_from_vif(struct ieee80211_vif *vif)
998#define for_each_context(priv, ctx) \ 1016#define for_each_context(priv, ctx) \
999 for (ctx = &priv->contexts[IWL_RXON_CTX_BSS]; \ 1017 for (ctx = &priv->contexts[IWL_RXON_CTX_BSS]; \
1000 ctx < &priv->contexts[NUM_IWL_RXON_CTX]; ctx++) \ 1018 ctx < &priv->contexts[NUM_IWL_RXON_CTX]; ctx++) \
1001 if (priv->shrd->valid_contexts & BIT(ctx->ctxid)) 1019 if (priv->valid_contexts & BIT(ctx->ctxid))
1002 1020
1003static inline int iwl_is_associated_ctx(struct iwl_rxon_context *ctx) 1021static inline int iwl_is_associated_ctx(struct iwl_rxon_context *ctx)
1004{ 1022{