diff options
author | Tomas Winkler <tomas.winkler@intel.com> | 2008-09-02 23:26:37 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-09-08 14:23:18 -0400 |
commit | 6e21f2c109edd746a10e08186484bae8168cdd0c (patch) | |
tree | b006657b3a64edd05fc8b568b4241dc3617ec5d5 /drivers/net/wireless/iwlwifi/iwl-dev.h | |
parent | 7c95168aba66bd11bf9efaf45e16e83ae869401d (diff) |
iwlwifi: generic init calibrations framework
This patch allows variable number of init calibrations and allows
addition new HW.
This patch also fixes critical bug. Only last calibration result
was applied. On reception of one calibration result all the calibration
was freed.
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@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/wireless/iwlwifi/iwl-dev.h')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-dev.h | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-dev.h b/drivers/net/wireless/iwlwifi/iwl-dev.h index 0711b35b9ade..5a55c876917d 100644 --- a/drivers/net/wireless/iwlwifi/iwl-dev.h +++ b/drivers/net/wireless/iwlwifi/iwl-dev.h | |||
@@ -728,13 +728,10 @@ struct statistics_general_data { | |||
728 | u32 beacon_energy_c; | 728 | u32 beacon_energy_c; |
729 | }; | 729 | }; |
730 | 730 | ||
731 | struct iwl_calib_results { | 731 | /* Opaque calibration results */ |
732 | void *tx_iq_res; | 732 | struct iwl_calib_result { |
733 | void *tx_iq_perd_res; | 733 | void *buf; |
734 | void *lo_res; | 734 | size_t buf_len; |
735 | u32 tx_iq_res_len; | ||
736 | u32 tx_iq_perd_res_len; | ||
737 | u32 lo_res_len; | ||
738 | }; | 735 | }; |
739 | 736 | ||
740 | enum ucode_type { | 737 | enum ucode_type { |
@@ -796,6 +793,7 @@ enum { | |||
796 | 793 | ||
797 | 794 | ||
798 | #define IWL_MAX_NUM_QUEUES 20 /* FIXME: do dynamic allocation */ | 795 | #define IWL_MAX_NUM_QUEUES 20 /* FIXME: do dynamic allocation */ |
796 | #define IWL_CALIB_MAX 3 | ||
799 | 797 | ||
800 | struct iwl_priv { | 798 | struct iwl_priv { |
801 | 799 | ||
@@ -839,7 +837,7 @@ struct iwl_priv { | |||
839 | s32 last_temperature; | 837 | s32 last_temperature; |
840 | 838 | ||
841 | /* init calibration results */ | 839 | /* init calibration results */ |
842 | struct iwl_calib_results calib_results; | 840 | struct iwl_calib_result calib_results[IWL_CALIB_MAX]; |
843 | 841 | ||
844 | /* Scan related variables */ | 842 | /* Scan related variables */ |
845 | unsigned long last_scan_jiffies; | 843 | unsigned long last_scan_jiffies; |