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.h90
1 files changed, 47 insertions, 43 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-dev.h b/drivers/net/wireless/iwlwifi/iwl-dev.h
index 6054c5fba0c1..2e4d47c7139b 100644
--- a/drivers/net/wireless/iwlwifi/iwl-dev.h
+++ b/drivers/net/wireless/iwlwifi/iwl-dev.h
@@ -304,13 +304,11 @@ struct iwl_channel_info {
304 struct iwl3945_scan_power_info scan_pwr_info[IWL_NUM_SCAN_RATES]; 304 struct iwl3945_scan_power_info scan_pwr_info[IWL_NUM_SCAN_RATES];
305}; 305};
306 306
307#define IWL_TX_FIFO_AC0 0 307#define IWL_TX_FIFO_BK 0
308#define IWL_TX_FIFO_AC1 1 308#define IWL_TX_FIFO_BE 1
309#define IWL_TX_FIFO_AC2 2 309#define IWL_TX_FIFO_VI 2
310#define IWL_TX_FIFO_AC3 3 310#define IWL_TX_FIFO_VO 3
311#define IWL_TX_FIFO_HCCA_1 5 311#define IWL_TX_FIFO_UNUSED -1
312#define IWL_TX_FIFO_HCCA_2 6
313#define IWL_TX_FIFO_NONE 7
314 312
315/* Minimum number of queues. MAX_NUM is defined in hw specific files. 313/* Minimum number of queues. MAX_NUM is defined in hw specific files.
316 * Set the minimum to accommodate the 4 standard TX queues, 1 command 314 * Set the minimum to accommodate the 4 standard TX queues, 1 command
@@ -1092,10 +1090,6 @@ struct iwl_priv {
1092 struct iwl_channel_info *channel_info; /* channel info array */ 1090 struct iwl_channel_info *channel_info; /* channel info array */
1093 u8 channel_count; /* # of channels */ 1091 u8 channel_count; /* # of channels */
1094 1092
1095 /* each calibration channel group in the EEPROM has a derived
1096 * clip setting for each rate. 3945 only.*/
1097 const struct iwl3945_clip_group clip39_groups[5];
1098
1099 /* thermal calibration */ 1093 /* thermal calibration */
1100 s32 temperature; /* degrees Kelvin */ 1094 s32 temperature; /* degrees Kelvin */
1101 s32 last_temperature; 1095 s32 last_temperature;
@@ -1168,7 +1162,6 @@ struct iwl_priv {
1168 u64 led_tpt; 1162 u64 led_tpt;
1169 1163
1170 u16 active_rate; 1164 u16 active_rate;
1171 u16 active_rate_basic;
1172 1165
1173 u8 assoc_station_added; 1166 u8 assoc_station_added;
1174 u8 start_calib; 1167 u8 start_calib;
@@ -1197,7 +1190,6 @@ struct iwl_priv {
1197 1190
1198 unsigned long status; 1191 unsigned long status;
1199 1192
1200 int last_rx_rssi; /* From Rx packet statistics */
1201 int last_rx_noise; /* From beacon statistics */ 1193 int last_rx_noise; /* From beacon statistics */
1202 1194
1203 /* counts mgmt, ctl, and data packets */ 1195 /* counts mgmt, ctl, and data packets */
@@ -1218,8 +1210,6 @@ struct iwl_priv {
1218#endif 1210#endif
1219 1211
1220 /* context information */ 1212 /* context information */
1221 u16 rates_mask;
1222
1223 u8 bssid[ETH_ALEN]; 1213 u8 bssid[ETH_ALEN];
1224 u16 rts_threshold; 1214 u16 rts_threshold;
1225 u8 mac_addr[ETH_ALEN]; 1215 u8 mac_addr[ETH_ALEN];
@@ -1228,7 +1218,7 @@ struct iwl_priv {
1228 spinlock_t sta_lock; 1218 spinlock_t sta_lock;
1229 int num_stations; 1219 int num_stations;
1230 struct iwl_station_entry stations[IWL_STATION_COUNT]; 1220 struct iwl_station_entry stations[IWL_STATION_COUNT];
1231 struct iwl_wep_key wep_keys[WEP_KEYS_MAX]; 1221 struct iwl_wep_key wep_keys[WEP_KEYS_MAX]; /* protected by mutex */
1232 u8 default_wep_key; 1222 u8 default_wep_key;
1233 u8 key_mapping_key; 1223 u8 key_mapping_key;
1234 unsigned long ucode_key_table; 1224 unsigned long ucode_key_table;
@@ -1244,10 +1234,6 @@ struct iwl_priv {
1244 1234
1245 u8 mac80211_registered; 1235 u8 mac80211_registered;
1246 1236
1247 /* Rx'd packet timing information */
1248 u32 last_beacon_time;
1249 u64 last_tsf;
1250
1251 /* eeprom -- this is in the card's little endian byte order */ 1237 /* eeprom -- this is in the card's little endian byte order */
1252 u8 *eeprom; 1238 u8 *eeprom;
1253 int nvm_device_type; 1239 int nvm_device_type;
@@ -1262,20 +1248,48 @@ struct iwl_priv {
1262 u16 beacon_int; 1248 u16 beacon_int;
1263 struct ieee80211_vif *vif; 1249 struct ieee80211_vif *vif;
1264 1250
1265 /*Added for 3945 */ 1251 union {
1266 void *shared_virt; 1252#if defined(CONFIG_IWL3945) || defined(CONFIG_IWL3945_MODULE)
1267 dma_addr_t shared_phys; 1253 struct {
1268 /*End*/ 1254 void *shared_virt;
1269 struct iwl_hw_params hw_params; 1255 dma_addr_t shared_phys;
1256
1257 struct delayed_work thermal_periodic;
1258 struct delayed_work rfkill_poll;
1259
1260 struct iwl3945_notif_statistics statistics;
1261
1262 u32 sta_supp_rates;
1263 int last_rx_rssi; /* From Rx packet statistics */
1264
1265 /* Rx'd packet timing information */
1266 u32 last_beacon_time;
1267 u64 last_tsf;
1270 1268
1271 /* INT ICT Table */ 1269 /*
1272 __le32 *ict_tbl; 1270 * each calibration channel group in the
1273 dma_addr_t ict_tbl_dma; 1271 * EEPROM has a derived clip setting for
1274 dma_addr_t aligned_ict_tbl_dma; 1272 * each rate.
1275 int ict_index; 1273 */
1276 void *ict_tbl_vir; 1274 const struct iwl3945_clip_group clip_groups[5];
1277 u32 inta; 1275
1278 bool use_ict; 1276 } _3945;
1277#endif
1278#if defined(CONFIG_IWLAGN) || defined(CONFIG_IWLAGN_MODULE)
1279 struct {
1280 /* INT ICT Table */
1281 __le32 *ict_tbl;
1282 void *ict_tbl_vir;
1283 dma_addr_t ict_tbl_dma;
1284 dma_addr_t aligned_ict_tbl_dma;
1285 int ict_index;
1286 u32 inta;
1287 bool use_ict;
1288 } _agn;
1289#endif
1290 };
1291
1292 struct iwl_hw_params hw_params;
1279 1293
1280 u32 inta_mask; 1294 u32 inta_mask;
1281 /* Current association information needed to configure the 1295 /* Current association information needed to configure the
@@ -1303,10 +1317,6 @@ struct iwl_priv {
1303 struct delayed_work alive_start; 1317 struct delayed_work alive_start;
1304 struct delayed_work scan_check; 1318 struct delayed_work scan_check;
1305 1319
1306 /*For 3945 only*/
1307 struct delayed_work thermal_periodic;
1308 struct delayed_work rfkill_poll;
1309
1310 /* TX Power */ 1320 /* TX Power */
1311 s8 tx_power_user_lmt; 1321 s8 tx_power_user_lmt;
1312 s8 tx_power_device_lmt; 1322 s8 tx_power_device_lmt;
@@ -1339,12 +1349,6 @@ struct iwl_priv {
1339 struct timer_list statistics_periodic; 1349 struct timer_list statistics_periodic;
1340 struct timer_list ucode_trace; 1350 struct timer_list ucode_trace;
1341 bool hw_ready; 1351 bool hw_ready;
1342 /*For 3945*/
1343#define IWL_DEFAULT_TX_POWER 0x0F
1344
1345 struct iwl3945_notif_statistics statistics_39;
1346
1347 u32 sta_supp_rates;
1348 1352
1349 struct iwl_event_log event_log; 1353 struct iwl_event_log event_log;
1350}; /*iwl_priv */ 1354}; /*iwl_priv */