diff options
| author | David S. Miller <davem@davemloft.net> | 2010-04-21 01:14:25 -0700 | 
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2010-04-21 01:14:25 -0700 | 
| commit | 87eb367003887cdc81a5d183efea227b5b488961 (patch) | |
| tree | 40f617e25a9364d573e3cd2189c9e7fa56c8a0fe /drivers/net/wireless/iwlwifi/iwl-calib.c | |
| parent | ccb7c7732e2ceb4e81a7806faf1670be9681ccd2 (diff) | |
| parent | 05d17608a69b3ae653ea5c9857283bef3439c733 (diff) | |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts:
	drivers/net/wireless/iwlwifi/iwl-6000.c
	net/core/dev.c
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-calib.c')
| -rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-calib.c | 12 | 
1 files changed, 12 insertions, 0 deletions
| diff --git a/drivers/net/wireless/iwlwifi/iwl-calib.c b/drivers/net/wireless/iwlwifi/iwl-calib.c index 0471c3f8713..f1fd00b1a65 100644 --- a/drivers/net/wireless/iwlwifi/iwl-calib.c +++ b/drivers/net/wireless/iwlwifi/iwl-calib.c @@ -808,6 +808,18 @@ void iwl_chain_noise_calibration(struct iwl_priv *priv,  		}  	} +	/* +	 * The above algorithm sometimes fails when the ucode +	 * reports 0 for all chains. It's not clear why that +	 * happens to start with, but it is then causing trouble +	 * because this can make us enable more chains than the +	 * hardware really has. +	 * +	 * To be safe, simply mask out any chains that we know +	 * are not on the device. +	 */ +	active_chains &= priv->hw_params.valid_rx_ant; +  	num_tx_chains = 0;  	for (i = 0; i < NUM_RX_CHAINS; i++) {  		/* loops on all the bits of | 
