diff options
author | Johannes Berg <johannes.berg@intel.com> | 2010-12-09 09:30:14 -0800 |
---|---|---|
committer | Wey-Yi Guy <wey-yi.w.guy@intel.com> | 2010-12-13 15:52:11 -0800 |
commit | 8d6748ca73a0caffed4304a47a9cb4cd0aba361e (patch) | |
tree | 33d2a527a6fae850d199cb03d65455d3c8409d68 /drivers/net/wireless/iwlwifi/iwl-6000.c | |
parent | e7362a0069f8448bb346d65f07d98b319f243e30 (diff) |
iwlagn: implement layout-agnostic EEPROM reading
The current EEPROM reading code has some layout
assumptions that now turned out to be false with
some newer versions of the EEPROM. Luckily, we
can avoid all such assumptions by using data in
the EEPROM itself, so implement using that.
However, for risk mitigation purposes, keep the
old reading code for current hardware for now.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-6000.c')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-6000.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-6000.c b/drivers/net/wireless/iwlwifi/iwl-6000.c index 8a789241704..db70a6bfaa5 100644 --- a/drivers/net/wireless/iwlwifi/iwl-6000.c +++ b/drivers/net/wireless/iwlwifi/iwl-6000.c @@ -568,6 +568,7 @@ struct iwl_cfg iwl6005_2agn_cfg = { .need_dc_calib = true, .need_temp_offset_calib = true, .led_mode = IWL_LED_RF_STATE, + .use_new_eeprom_reading = true, }; struct iwl_cfg iwl6005_2abg_cfg = { @@ -583,6 +584,7 @@ struct iwl_cfg iwl6005_2abg_cfg = { .need_dc_calib = true, .need_temp_offset_calib = true, .led_mode = IWL_LED_RF_STATE, + .use_new_eeprom_reading = true, }; struct iwl_cfg iwl6005_2bg_cfg = { @@ -598,6 +600,7 @@ struct iwl_cfg iwl6005_2bg_cfg = { .need_dc_calib = true, .need_temp_offset_calib = true, .led_mode = IWL_LED_RF_STATE, + .use_new_eeprom_reading = true, }; struct iwl_cfg iwl6030_2agn_cfg = { @@ -618,6 +621,7 @@ struct iwl_cfg iwl6030_2agn_cfg = { .adv_pm = true, /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */ .scan_tx_antennas[IEEE80211_BAND_2GHZ] = ANT_A, + .use_new_eeprom_reading = true, }; struct iwl_cfg iwl6030_2abg_cfg = { @@ -637,6 +641,7 @@ struct iwl_cfg iwl6030_2abg_cfg = { .adv_pm = true, /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */ .scan_tx_antennas[IEEE80211_BAND_2GHZ] = ANT_A, + .use_new_eeprom_reading = true, }; struct iwl_cfg iwl6030_2bgn_cfg = { @@ -657,6 +662,7 @@ struct iwl_cfg iwl6030_2bgn_cfg = { .adv_pm = true, /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */ .scan_tx_antennas[IEEE80211_BAND_2GHZ] = ANT_A, + .use_new_eeprom_reading = true, }; struct iwl_cfg iwl6030_2bg_cfg = { @@ -676,6 +682,7 @@ struct iwl_cfg iwl6030_2bg_cfg = { .adv_pm = true, /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */ .scan_tx_antennas[IEEE80211_BAND_2GHZ] = ANT_A, + .use_new_eeprom_reading = true, }; struct iwl_cfg iwl1030_bgn_cfg = { @@ -696,6 +703,7 @@ struct iwl_cfg iwl1030_bgn_cfg = { .adv_pm = true, /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */ .scan_tx_antennas[IEEE80211_BAND_2GHZ] = ANT_A, + .use_new_eeprom_reading = true, }; struct iwl_cfg iwl1030_bg_cfg = { @@ -715,6 +723,7 @@ struct iwl_cfg iwl1030_bg_cfg = { .adv_pm = true, /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */ .scan_tx_antennas[IEEE80211_BAND_2GHZ] = ANT_A, + .use_new_eeprom_reading = true, }; /* @@ -797,6 +806,7 @@ struct iwl_cfg iwl6150_bgn_cfg = { .ht_params = &iwl6000_ht_params, .need_dc_calib = true, .led_mode = IWL_LED_RF_STATE, + .use_new_eeprom_reading = true, }; struct iwl_cfg iwl6050_2abg_cfg = { @@ -846,6 +856,7 @@ struct iwl_cfg iwl130_bgn_cfg = { /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */ .scan_tx_antennas[IEEE80211_BAND_2GHZ] = ANT_A, .rx_with_siso_diversity = true, + .use_new_eeprom_reading = true, }; struct iwl_cfg iwl130_bg_cfg = { @@ -865,6 +876,7 @@ struct iwl_cfg iwl130_bg_cfg = { /* Due to bluetooth, we transmit 2.4 GHz probes only on antenna A */ .scan_tx_antennas[IEEE80211_BAND_2GHZ] = ANT_A, .rx_with_siso_diversity = true, + .use_new_eeprom_reading = true, }; MODULE_FIRMWARE(IWL6000_MODULE_FIRMWARE(IWL6000_UCODE_API_MAX)); |