aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2012-03-05 14:24:24 -0500
committerJohn W. Linville <linville@tuxdriver.com>2012-03-06 15:16:08 -0500
commit015c15e1067c988fc87fb550b222f075c8d3f47c (patch)
tree20ebc3c951e8d9e531410d3f0a116ea39405f752 /drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h
parent9451ca1a31be44f8235c3f8f998ff27fc7a8395e (diff)
iwlwifi: introduce per-queue locks
Instead of (ab)using the sta_lock, make the transport layer lock its own TX queue data structures with a lock per queue. This also unifies with the cmd queue lock. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h b/drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h
index 5b26b71ae3d5..b1029468ccbd 100644
--- a/drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h
+++ b/drivers/net/wireless/iwlwifi/iwl-trans-pcie-int.h
@@ -169,6 +169,7 @@ struct iwl_queue {
169 * @meta: array of meta data for each command/tx buffer 169 * @meta: array of meta data for each command/tx buffer
170 * @dma_addr_cmd: physical address of cmd/tx buffer array 170 * @dma_addr_cmd: physical address of cmd/tx buffer array
171 * @txb: array of per-TFD driver data 171 * @txb: array of per-TFD driver data
172 * lock: queue lock
172 * @time_stamp: time (in jiffies) of last read_ptr change 173 * @time_stamp: time (in jiffies) of last read_ptr change
173 * @need_update: indicates need to update read/write index 174 * @need_update: indicates need to update read/write index
174 * @sched_retry: indicates queue is high-throughput aggregation (HT AGG) enabled 175 * @sched_retry: indicates queue is high-throughput aggregation (HT AGG) enabled
@@ -187,6 +188,7 @@ struct iwl_tx_queue {
187 struct iwl_device_cmd **cmd; 188 struct iwl_device_cmd **cmd;
188 struct iwl_cmd_meta *meta; 189 struct iwl_cmd_meta *meta;
189 struct sk_buff **skbs; 190 struct sk_buff **skbs;
191 spinlock_t lock;
190 unsigned long time_stamp; 192 unsigned long time_stamp;
191 u8 need_update; 193 u8 need_update;
192 u8 sched_retry; 194 u8 sched_retry;