iwlwifi: pcie: fix interrupt coalescing for 7260 / 3160
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Mon, 11 Nov 2013 13:23:01 +0000 (15:23 +0200)
committerEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Mon, 25 Nov 2013 21:00:19 +0000 (23:00 +0200)
commit6960a059b2c618f32fe549f13287b3d2278c09e9
tree14f1f27ca98fe7c60072c58df141ed50af028363
parent60765a47a433d54e4744c285ad127f182dcd80aa
iwlwifi: pcie: fix interrupt coalescing for 7260 / 3160

We changed the timeout for the interrupt coealescing for
calibration, but that wasn't effective since we changed
that value back before loading the firmware. Since
calibrations are notification from firmware and not Rx
packets, this doesn't change anyway - the firmware will
fire an interrupt straight away regardless of the interrupt
coalescing value.
Also, a HW issue has been discovered in 7000 devices series.
The work around is to disable the new interrupt coalescing
timeout feature - do this by setting bit 31 in
CSR_INT_COALESCING.
This has been fixed in 7265 which means that we can't rely
on the device family and must have a hint in the iwl_cfg
structure.

Cc: stable@vger.kernel.org [3.10+]
Fixes: 99cd47142399 ("iwlwifi: add 7000 series device configuration")
Reviewed-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
drivers/net/wireless/iwlwifi/iwl-7000.c
drivers/net/wireless/iwlwifi/iwl-config.h
drivers/net/wireless/iwlwifi/iwl-csr.h
drivers/net/wireless/iwlwifi/pcie/rx.c
drivers/net/wireless/iwlwifi/pcie/trans.c