diff options
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-dev.h')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-dev.h | 46 |
1 files changed, 36 insertions, 10 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-dev.h b/drivers/net/wireless/iwlwifi/iwl-dev.h index 70f0e79c8e4a..55dc5a866542 100644 --- a/drivers/net/wireless/iwlwifi/iwl-dev.h +++ b/drivers/net/wireless/iwlwifi/iwl-dev.h | |||
@@ -1,6 +1,6 @@ | |||
1 | /****************************************************************************** | 1 | /****************************************************************************** |
2 | * | 2 | * |
3 | * Copyright(c) 2003 - 2009 Intel Corporation. All rights reserved. | 3 | * Copyright(c) 2003 - 2010 Intel Corporation. All rights reserved. |
4 | * | 4 | * |
5 | * This program is free software; you can redistribute it and/or modify it | 5 | * This program is free software; you can redistribute it and/or modify it |
6 | * under the terms of version 2 of the GNU General Public License as | 6 | * under the terms of version 2 of the GNU General Public License as |
@@ -1011,6 +1011,30 @@ struct iwl_event_log { | |||
1011 | int wraps_more_count; | 1011 | int wraps_more_count; |
1012 | }; | 1012 | }; |
1013 | 1013 | ||
1014 | /* | ||
1015 | * host interrupt timeout value | ||
1016 | * used with setting interrupt coalescing timer | ||
1017 | * the CSR_INT_COALESCING is an 8 bit register in 32-usec unit | ||
1018 | * | ||
1019 | * default interrupt coalescing timer is 64 x 32 = 2048 usecs | ||
1020 | * default interrupt coalescing calibration timer is 16 x 32 = 512 usecs | ||
1021 | */ | ||
1022 | #define IWL_HOST_INT_TIMEOUT_MAX (0xFF) | ||
1023 | #define IWL_HOST_INT_TIMEOUT_DEF (0x40) | ||
1024 | #define IWL_HOST_INT_TIMEOUT_MIN (0x0) | ||
1025 | #define IWL_HOST_INT_CALIB_TIMEOUT_MAX (0xFF) | ||
1026 | #define IWL_HOST_INT_CALIB_TIMEOUT_DEF (0x10) | ||
1027 | #define IWL_HOST_INT_CALIB_TIMEOUT_MIN (0x0) | ||
1028 | |||
1029 | /* | ||
1030 | * This is the threshold value of plcp error rate per 100mSecs. It is | ||
1031 | * used to set and check for the validity of plcp_delta. | ||
1032 | */ | ||
1033 | #define IWL_MAX_PLCP_ERR_THRESHOLD_MIN (0) | ||
1034 | #define IWL_MAX_PLCP_ERR_THRESHOLD_DEF (50) | ||
1035 | #define IWL_MAX_PLCP_ERR_LONG_THRESHOLD_DEF (100) | ||
1036 | #define IWL_MAX_PLCP_ERR_THRESHOLD_MAX (255) | ||
1037 | |||
1014 | struct iwl_priv { | 1038 | struct iwl_priv { |
1015 | 1039 | ||
1016 | /* ieee device used by generic ieee processing code */ | 1040 | /* ieee device used by generic ieee processing code */ |
@@ -1031,13 +1055,16 @@ struct iwl_priv { | |||
1031 | 1055 | ||
1032 | struct ieee80211_supported_band bands[IEEE80211_NUM_BANDS]; | 1056 | struct ieee80211_supported_band bands[IEEE80211_NUM_BANDS]; |
1033 | 1057 | ||
1034 | #if defined(CONFIG_IWLWIFI_SPECTRUM_MEASUREMENT) || defined(CONFIG_IWL3945_SPECTRUM_MEASUREMENT) | ||
1035 | /* spectrum measurement report caching */ | 1058 | /* spectrum measurement report caching */ |
1036 | struct iwl_spectrum_notification measure_report; | 1059 | struct iwl_spectrum_notification measure_report; |
1037 | u8 measurement_status; | 1060 | u8 measurement_status; |
1038 | #endif | 1061 | |
1039 | /* ucode beacon time */ | 1062 | /* ucode beacon time */ |
1040 | u32 ucode_beacon_time; | 1063 | u32 ucode_beacon_time; |
1064 | int missed_beacon_threshold; | ||
1065 | |||
1066 | /* storing the jiffies when the plcp error rate is received */ | ||
1067 | unsigned long plcp_jiffies; | ||
1041 | 1068 | ||
1042 | /* we allocate array of iwl4965_channel_info for NIC's valid channels. | 1069 | /* we allocate array of iwl4965_channel_info for NIC's valid channels. |
1043 | * Access via channel # using indirect index array */ | 1070 | * Access via channel # using indirect index array */ |
@@ -1056,14 +1083,15 @@ struct iwl_priv { | |||
1056 | struct iwl_calib_result calib_results[IWL_CALIB_MAX]; | 1083 | struct iwl_calib_result calib_results[IWL_CALIB_MAX]; |
1057 | 1084 | ||
1058 | /* Scan related variables */ | 1085 | /* Scan related variables */ |
1059 | unsigned long last_scan_jiffies; | ||
1060 | unsigned long next_scan_jiffies; | 1086 | unsigned long next_scan_jiffies; |
1061 | unsigned long scan_start; | 1087 | unsigned long scan_start; |
1062 | unsigned long scan_pass_start; | 1088 | unsigned long scan_pass_start; |
1063 | unsigned long scan_start_tsf; | 1089 | unsigned long scan_start_tsf; |
1090 | unsigned long last_internal_scan_jiffies; | ||
1064 | void *scan; | 1091 | void *scan; |
1065 | int scan_bands; | 1092 | int scan_bands; |
1066 | struct cfg80211_scan_request *scan_request; | 1093 | struct cfg80211_scan_request *scan_request; |
1094 | bool is_internal_short_scan; | ||
1067 | u8 scan_tx_ant[IEEE80211_NUM_BANDS]; | 1095 | u8 scan_tx_ant[IEEE80211_NUM_BANDS]; |
1068 | u8 mgmt_tx_ant; | 1096 | u8 mgmt_tx_ant; |
1069 | 1097 | ||
@@ -1162,6 +1190,8 @@ struct iwl_priv { | |||
1162 | struct iwl_notif_statistics statistics; | 1190 | struct iwl_notif_statistics statistics; |
1163 | #ifdef CONFIG_IWLWIFI_DEBUG | 1191 | #ifdef CONFIG_IWLWIFI_DEBUG |
1164 | struct iwl_notif_statistics accum_statistics; | 1192 | struct iwl_notif_statistics accum_statistics; |
1193 | struct iwl_notif_statistics delta_statistics; | ||
1194 | struct iwl_notif_statistics max_delta; | ||
1165 | #endif | 1195 | #endif |
1166 | 1196 | ||
1167 | /* context information */ | 1197 | /* context information */ |
@@ -1234,15 +1264,10 @@ struct iwl_priv { | |||
1234 | 1264 | ||
1235 | struct workqueue_struct *workqueue; | 1265 | struct workqueue_struct *workqueue; |
1236 | 1266 | ||
1237 | struct work_struct up; | ||
1238 | struct work_struct restart; | 1267 | struct work_struct restart; |
1239 | struct work_struct calibrated_work; | ||
1240 | struct work_struct scan_completed; | 1268 | struct work_struct scan_completed; |
1241 | struct work_struct rx_replenish; | 1269 | struct work_struct rx_replenish; |
1242 | struct work_struct abort_scan; | 1270 | struct work_struct abort_scan; |
1243 | struct work_struct update_link_led; | ||
1244 | struct work_struct auth_work; | ||
1245 | struct work_struct report_work; | ||
1246 | struct work_struct request_scan; | 1271 | struct work_struct request_scan; |
1247 | struct work_struct beacon_update; | 1272 | struct work_struct beacon_update; |
1248 | struct work_struct tt_work; | 1273 | struct work_struct tt_work; |
@@ -1278,7 +1303,8 @@ struct iwl_priv { | |||
1278 | u16 rx_traffic_idx; | 1303 | u16 rx_traffic_idx; |
1279 | u8 *tx_traffic; | 1304 | u8 *tx_traffic; |
1280 | u8 *rx_traffic; | 1305 | u8 *rx_traffic; |
1281 | struct iwl_debugfs *dbgfs; | 1306 | struct dentry *debugfs_dir; |
1307 | u32 dbgfs_sram_offset, dbgfs_sram_len; | ||
1282 | #endif /* CONFIG_IWLWIFI_DEBUGFS */ | 1308 | #endif /* CONFIG_IWLWIFI_DEBUGFS */ |
1283 | #endif /* CONFIG_IWLWIFI_DEBUG */ | 1309 | #endif /* CONFIG_IWLWIFI_DEBUG */ |
1284 | 1310 | ||