iwlwifi: mvm: remove 8000 HW family setting of adc sampling on nic config
authorLiad Kaufman <liad.kaufman@intel.com>
Thu, 8 May 2014 13:30:24 +0000 (16:30 +0300)
committerEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Mon, 7 Jul 2014 18:41:24 +0000 (21:41 +0300)
This patch removes the setting of the ADC sampling bits in
the mvm nic configuration. This setting is not required by
the firmware, and furthermore - it interferes with the DBGC
when it is running in DRAM mode on PCIe.

Signed-off-by: Liad Kaufman <liad.kaufman@intel.com>
Reviewed-by: Dor Shaish <dor.shaish@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
drivers/net/wireless/iwlwifi/mvm/ops.c

index 89a095691507a51a88f89ee2b48f9ac2b19715ca..7d7b2fbe7cd1b3906c2378059b99776ccaddf65a 100644 (file)
@@ -166,8 +166,15 @@ static void iwl_mvm_nic_config(struct iwl_op_mode *op_mode)
        WARN_ON((radio_cfg_type << CSR_HW_IF_CONFIG_REG_POS_PHY_TYPE) &
                 ~CSR_HW_IF_CONFIG_REG_MSK_PHY_TYPE);
 
-       /* silicon bits */
-       reg_val |= CSR_HW_IF_CONFIG_REG_BIT_RADIO_SI;
+       /*
+        * TODO: Bits 7-8 of CSR in 8000 HW family set the ADC sampling, and
+        * shouldn't be set to any non-zero value. The same is supposed to be
+        * true of the other HW, but unsetting them (such as the 7260) causes
+        * automatic tests to fail on seemingly unrelated errors. Need to
+        * further investigate this, but for now we'll separate cases.
+        */
+       if (mvm->trans->cfg->device_family != IWL_DEVICE_FAMILY_8000)
+               reg_val |= CSR_HW_IF_CONFIG_REG_BIT_RADIO_SI;
 
        iwl_trans_set_bits_mask(mvm->trans, CSR_HW_IF_CONFIG_REG,
                                CSR_HW_IF_CONFIG_REG_MSK_MAC_DASH |