diff options
author | Emil Tantilov <emil.s.tantilov@intel.com> | 2012-09-19 23:33:51 -0400 |
---|---|---|
committer | Jeff Kirsher <jeffrey.t.kirsher@intel.com> | 2012-10-03 11:36:11 -0400 |
commit | 4a97df0bfaa8c0c1cd057cb8f1030a71cb4d8832 (patch) | |
tree | 201448432ed7a0be732a14f755439b6400e85559 /drivers/net | |
parent | 1cc92eb871d6cbb1da038b4bcd89eec3c73b9781 (diff) |
ixgbe: fix poll loop for FDIRCTRL.INIT_DONE bit
The loop in ixgbe_reinit_fdir_tables_82599() only polls for up to 100us
resulting in failures to update the FDIR filter table at 1Gbps and 10Gbps
when under load.
The poll times for FDIRCTRL.INIT_DONE are 55us, 550us and 5.5ms for 10Gbps,
1Gbps and 100Mbps respectively.
This patch sets the wait time to be the same as in ixgbe_fdir_enable_82599()
Reported-by: Bhushan <shashi-sm@users.sf.net>
Signed-off-by: Emil Tantilov <emil.s.tantilov@intel.com>
Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c index 18bf08c9d7a4..1077cb2b38db 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c | |||
@@ -1099,7 +1099,7 @@ s32 ixgbe_reinit_fdir_tables_82599(struct ixgbe_hw *hw) | |||
1099 | if (IXGBE_READ_REG(hw, IXGBE_FDIRCTRL) & | 1099 | if (IXGBE_READ_REG(hw, IXGBE_FDIRCTRL) & |
1100 | IXGBE_FDIRCTRL_INIT_DONE) | 1100 | IXGBE_FDIRCTRL_INIT_DONE) |
1101 | break; | 1101 | break; |
1102 | udelay(10); | 1102 | usleep_range(1000, 2000); |
1103 | } | 1103 | } |
1104 | if (i >= IXGBE_FDIR_INIT_DONE_POLL) { | 1104 | if (i >= IXGBE_FDIR_INIT_DONE_POLL) { |
1105 | hw_dbg(hw, "Flow Director Signature poll time exceeded!\n"); | 1105 | hw_dbg(hw, "Flow Director Signature poll time exceeded!\n"); |