diff options
author | Winkler, Tomas <tomas.winkler@intel.com> | 2008-11-07 12:58:39 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-11-21 11:07:22 -0500 |
commit | 8d86422a83d79e3d3241cf0f269fca0c2640bcee (patch) | |
tree | b9791deaa104a7254891d962dceb551864235ee0 /drivers/net/wireless/iwlwifi/iwl-dev.h | |
parent | 5c5aa3f13a50881b8f6e529e321bbefb5faec37b (diff) |
iwlwifi: move rx queue read pointer into rxq
This patch moves rx status/read registers into
iwl_rx_queue structures. This solution is more memory
hungry but is more structured and provides needed RX/TX
separation
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-dev.h')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-dev.h | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-dev.h b/drivers/net/wireless/iwlwifi/iwl-dev.h index d509aed5567a..55590a55198d 100644 --- a/drivers/net/wireless/iwlwifi/iwl-dev.h +++ b/drivers/net/wireless/iwlwifi/iwl-dev.h | |||
@@ -301,7 +301,6 @@ struct iwl_host_cmd { | |||
301 | 301 | ||
302 | /** | 302 | /** |
303 | * struct iwl_rx_queue - Rx queue | 303 | * struct iwl_rx_queue - Rx queue |
304 | * @processed: Internal index to last handled Rx packet | ||
305 | * @read: Shared index to newest available Rx buffer | 304 | * @read: Shared index to newest available Rx buffer |
306 | * @write: Shared index to oldest written Rx packet | 305 | * @write: Shared index to oldest written Rx packet |
307 | * @free_count: Number of pre-allocated buffers in rx_free | 306 | * @free_count: Number of pre-allocated buffers in rx_free |
@@ -316,13 +315,14 @@ struct iwl_rx_queue { | |||
316 | dma_addr_t dma_addr; | 315 | dma_addr_t dma_addr; |
317 | struct iwl_rx_mem_buffer pool[RX_QUEUE_SIZE + RX_FREE_BUFFERS]; | 316 | struct iwl_rx_mem_buffer pool[RX_QUEUE_SIZE + RX_FREE_BUFFERS]; |
318 | struct iwl_rx_mem_buffer *queue[RX_QUEUE_SIZE]; | 317 | struct iwl_rx_mem_buffer *queue[RX_QUEUE_SIZE]; |
319 | u32 processed; | ||
320 | u32 read; | 318 | u32 read; |
321 | u32 write; | 319 | u32 write; |
322 | u32 free_count; | 320 | u32 free_count; |
323 | struct list_head rx_free; | 321 | struct list_head rx_free; |
324 | struct list_head rx_used; | 322 | struct list_head rx_used; |
325 | int need_update; | 323 | int need_update; |
324 | struct iwl_rb_status *rb_stts; | ||
325 | dma_addr_t rb_stts_dma; | ||
326 | spinlock_t lock; | 326 | spinlock_t lock; |
327 | }; | 327 | }; |
328 | 328 | ||
@@ -967,10 +967,9 @@ struct iwl_priv { | |||
967 | struct ieee80211_vif *vif; | 967 | struct ieee80211_vif *vif; |
968 | 968 | ||
969 | struct iwl_hw_params hw_params; | 969 | struct iwl_hw_params hw_params; |
970 | /* driver/uCode shared Tx Byte Counts and Rx status */ | 970 | /* driver/uCode shared Tx Byte Counts */ |
971 | void *shared_virt; | 971 | void *shared_virt; |
972 | int rb_closed_offset; | 972 | /* Physical Pointer to Tx Byte Counts */ |
973 | /* Physical Pointer to Tx Byte Counts and Rx status */ | ||
974 | dma_addr_t shared_phys; | 973 | dma_addr_t shared_phys; |
975 | 974 | ||
976 | /* Current association information needed to configure the | 975 | /* Current association information needed to configure the |