aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorKolekar, Abhijeet <abhijeet.kolekar@intel.com>2008-12-18 21:37:20 -0500
committerJohn W. Linville <linville@tuxdriver.com>2009-01-29 15:59:05 -0500
commit85d4149533e07e5ca4c94010a52fe5496d998611 (patch)
treefd1bf2f90c7b97d2936cc071b6098eaab450e662 /drivers/net
parentc0f20d91417bc8a4b54e1917a45f8fd4cf9f2991 (diff)
iwl3945: move structures from iwl-3945.h to iwl-dev.h
The patch moves few structres from iwl-3945.h to iwl-dev.h. Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com> Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-3945.h46
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-dev.h49
2 files changed, 49 insertions, 46 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-3945.h b/drivers/net/wireless/iwlwifi/iwl-3945.h
index 760482e1201e..f51393046de3 100644
--- a/drivers/net/wireless/iwlwifi/iwl-3945.h
+++ b/drivers/net/wireless/iwlwifi/iwl-3945.h
@@ -121,34 +121,6 @@ struct iwl3945_tx_info {
121 struct sk_buff *skb[MAX_NUM_OF_TBS]; 121 struct sk_buff *skb[MAX_NUM_OF_TBS];
122}; 122};
123 123
124/**
125 * struct iwl3945_tx_queue - Tx Queue for DMA
126 * @q: generic Rx/Tx queue descriptor
127 * @bd: base of circular buffer of TFDs
128 * @cmd: array of command/Tx buffers
129 * @dma_addr_cmd: physical address of cmd/tx buffer array
130 * @txb: array of per-TFD driver data
131 * @need_update: indicates need to update read/write index
132 *
133 * A Tx queue consists of circular buffer of BDs (a.k.a. TFDs, transmit frame
134 * descriptors) and required locking structures.
135 */
136struct iwl3945_tx_queue {
137 struct iwl_queue q;
138 struct iwl3945_tfd_frame *bd;
139 struct iwl3945_cmd *cmd;
140 dma_addr_t dma_addr_cmd;
141 struct iwl3945_tx_info *txb;
142 int need_update;
143 int active;
144};
145
146struct iwl3945_clip_group {
147 /* maximum power level to prevent clipping for each rate, derived by
148 * us from this band's saturation power in EEPROM */
149 const s8 clip_powers[IWL_MAX_RATES];
150};
151
152#include "iwl-agn-rs.h" 124#include "iwl-agn-rs.h"
153 125
154#define IWL_TX_FIFO_AC0 0 126#define IWL_TX_FIFO_AC0 0
@@ -303,16 +275,6 @@ struct iwl3945_rx_queue {
303#define IWL_INVALID_RATE 0xFF 275#define IWL_INVALID_RATE 0xFF
304#define IWL_INVALID_VALUE -1 276#define IWL_INVALID_VALUE -1
305 277
306struct iwl3945_tid_data {
307 u16 seq_number;
308};
309
310struct iwl3945_hw_key {
311 enum ieee80211_key_alg alg;
312 int keylen;
313 u8 key[32];
314};
315
316union iwl3945_ht_rate_supp { 278union iwl3945_ht_rate_supp {
317 u16 rates; 279 u16 rates;
318 struct { 280 struct {
@@ -351,14 +313,6 @@ struct iwl3945_qos_info {
351#define STA_PS_STATUS_WAKE 0 313#define STA_PS_STATUS_WAKE 0
352#define STA_PS_STATUS_SLEEP 1 314#define STA_PS_STATUS_SLEEP 1
353 315
354struct iwl3945_station_entry {
355 struct iwl3945_addsta_cmd sta;
356 struct iwl3945_tid_data tid[MAX_TID_COUNT];
357 u8 used;
358 u8 ps_status;
359 struct iwl3945_hw_key keyinfo;
360};
361
362/* uCode file layout */ 316/* uCode file layout */
363struct iwl3945_ucode { 317struct iwl3945_ucode {
364 __le32 ver; /* major/minor/API/serial */ 318 __le32 ver; /* major/minor/API/serial */
diff --git a/drivers/net/wireless/iwlwifi/iwl-dev.h b/drivers/net/wireless/iwlwifi/iwl-dev.h
index f63209aaeaf6..73318a953191 100644
--- a/drivers/net/wireless/iwlwifi/iwl-dev.h
+++ b/drivers/net/wireless/iwlwifi/iwl-dev.h
@@ -156,6 +156,12 @@ struct iwl4965_channel_tgh_info {
156 156
157#define IWL4965_MAX_RATE (33) 157#define IWL4965_MAX_RATE (33)
158 158
159struct iwl3945_clip_group {
160 /* maximum power level to prevent clipping for each rate, derived by
161 * us from this band's saturation power in EEPROM */
162 const s8 clip_powers[IWL_MAX_RATES];
163};
164
159/* current Tx power values to use, one for each rate for each channel. 165/* current Tx power values to use, one for each rate for each channel.
160 * requested power is limited by: 166 * requested power is limited by:
161 * -- regulatory EEPROM limits for this channel 167 * -- regulatory EEPROM limits for this channel
@@ -218,6 +224,27 @@ struct iwl_channel_info {
218 struct iwl3945_scan_power_info scan_pwr_info[IWL_NUM_SCAN_RATES]; 224 struct iwl3945_scan_power_info scan_pwr_info[IWL_NUM_SCAN_RATES];
219}; 225};
220 226
227/**
228 * struct iwl3945_tx_queue - Tx Queue for DMA
229 * @q: generic Rx/Tx queue descriptor
230 * @bd: base of circular buffer of TFDs
231 * @cmd: array of command/Tx buffers
232 * @dma_addr_cmd: physical address of cmd/tx buffer array
233 * @txb: array of per-TFD driver data
234 * @need_update: indicates need to update read/write index
235 *
236 * A Tx queue consists of circular buffer of BDs (a.k.a. TFDs, transmit frame
237 * descriptors) and required locking structures.
238 */
239struct iwl3945_tx_queue {
240 struct iwl_queue q;
241 struct iwl3945_tfd_frame *bd;
242 struct iwl3945_cmd *cmd;
243 dma_addr_t dma_addr_cmd;
244 struct iwl3945_tx_info *txb;
245 int need_update;
246 int active;
247};
221 248
222#define IWL_TX_FIFO_AC0 0 249#define IWL_TX_FIFO_AC0 0
223#define IWL_TX_FIFO_AC1 1 250#define IWL_TX_FIFO_AC1 1
@@ -462,6 +489,24 @@ struct iwl_qos_info {
462#define STA_PS_STATUS_WAKE 0 489#define STA_PS_STATUS_WAKE 0
463#define STA_PS_STATUS_SLEEP 1 490#define STA_PS_STATUS_SLEEP 1
464 491
492struct iwl3945_tid_data {
493 u16 seq_number;
494};
495
496struct iwl3945_hw_key {
497 enum ieee80211_key_alg alg;
498 int keylen;
499 u8 key[32];
500};
501
502struct iwl3945_station_entry {
503 struct iwl3945_addsta_cmd sta;
504 struct iwl3945_tid_data tid[MAX_TID_COUNT];
505 u8 used;
506 u8 ps_status;
507 struct iwl3945_hw_key keyinfo;
508};
509
465struct iwl_station_entry { 510struct iwl_station_entry {
466 struct iwl_addsta_cmd sta; 511 struct iwl_addsta_cmd sta;
467 struct iwl_tid_data tid[MAX_TID_COUNT]; 512 struct iwl_tid_data tid[MAX_TID_COUNT];
@@ -800,6 +845,10 @@ struct iwl_priv {
800 struct iwl_channel_info *channel_info; /* channel info array */ 845 struct iwl_channel_info *channel_info; /* channel info array */
801 u8 channel_count; /* # of channels */ 846 u8 channel_count; /* # of channels */
802 847
848 /* each calibration channel group in the EEPROM has a derived
849 * clip setting for each rate. 3945 only.*/
850 const struct iwl3945_clip_group clip39_groups[5];
851
803 /* thermal calibration */ 852 /* thermal calibration */
804 s32 temperature; /* degrees Kelvin */ 853 s32 temperature; /* degrees Kelvin */
805 s32 last_temperature; 854 s32 last_temperature;