aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorBen Hutchings <bhutchings@solarflare.com>2009-12-23 13:49:13 +0000
committerDavid S. Miller <davem@davemloft.net>2009-12-23 19:09:08 -0800
commit286d47ba90315a871f77351f7f61b7e4a96476a9 (patch)
tree0d5c3d03c51f2734248ec4dfb33f3736ce140207 /drivers
parentsfc: QT2025C: Add error message for suspected bad SFP+ cables (diff)
downloadlinux-dev-286d47ba90315a871f77351f7f61b7e4a96476a9.tar.xz
linux-dev-286d47ba90315a871f77351f7f61b7e4a96476a9.zip
sfc: Disable TX descriptor prefetch watchdog
This hardware watchdog can misfire, so it does more harm than good. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/sfc/nic.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/sfc/nic.c b/drivers/net/sfc/nic.c
index a577be227862..db44224ed2ca 100644
--- a/drivers/net/sfc/nic.c
+++ b/drivers/net/sfc/nic.c
@@ -1576,6 +1576,8 @@ void efx_nic_init_common(struct efx_nic *efx)
EFX_SET_OWORD_FIELD(temp, FRF_AZ_TX_SOFT_EVT_EN, 1);
/* Prefetch threshold 2 => fetch when descriptor cache half empty */
EFX_SET_OWORD_FIELD(temp, FRF_AZ_TX_PREF_THRESHOLD, 2);
+ /* Disable hardware watchdog which can misfire */
+ EFX_SET_OWORD_FIELD(temp, FRF_AZ_TX_PREF_WD_TMR, 0x3fffff);
/* Squash TX of packets of 16 bytes or less */
if (efx_nic_rev(efx) >= EFX_REV_FALCON_B0)
EFX_SET_OWORD_FIELD(temp, FRF_BZ_TX_FLUSH_MIN_LEN_EN, 1);