diff options
author | Matthew Vick <matthew.vick@intel.com> | 2012-07-11 20:02:42 -0400 |
---|---|---|
committer | Jeff Kirsher <jeffrey.t.kirsher@intel.com> | 2012-07-14 05:58:34 -0400 |
commit | 22a4cca2f4c2d60c703cdc42158c907570f508e6 (patch) | |
tree | 62977b37e1e8f9077089a2a3d1337f7085e3f92b /drivers/net/ethernet/intel/e1000e/ethtool.c | |
parent | 18115f82bc93094a3554f3013cc314ee366a6e7a (diff) |
e1000e: Program the correct register for ITR when using MSI-X.
When configuring interrupt throttling on 82574 in MSI-X mode, we need to
be programming the EITR registers instead of the ITR register.
-rc2: Renamed e1000_write_itr() to e1000e_write_itr(), fixed whitespace
issues, and removed unnecessary !! operation.
-rc3: Reduced the scope of the loop variable in e1000e_write_itr().
Signed-off-by: Matthew Vick <matthew.vick@intel.com>
Acked-by: Bruce Allan <bruce.w.allan@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net/ethernet/intel/e1000e/ethtool.c')
-rw-r--r-- | drivers/net/ethernet/intel/e1000e/ethtool.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/net/ethernet/intel/e1000e/ethtool.c b/drivers/net/ethernet/intel/e1000e/ethtool.c index 905e2147d918..105d554ea9db 100644 --- a/drivers/net/ethernet/intel/e1000e/ethtool.c +++ b/drivers/net/ethernet/intel/e1000e/ethtool.c | |||
@@ -1897,7 +1897,6 @@ static int e1000_set_coalesce(struct net_device *netdev, | |||
1897 | struct ethtool_coalesce *ec) | 1897 | struct ethtool_coalesce *ec) |
1898 | { | 1898 | { |
1899 | struct e1000_adapter *adapter = netdev_priv(netdev); | 1899 | struct e1000_adapter *adapter = netdev_priv(netdev); |
1900 | struct e1000_hw *hw = &adapter->hw; | ||
1901 | 1900 | ||
1902 | if ((ec->rx_coalesce_usecs > E1000_MAX_ITR_USECS) || | 1901 | if ((ec->rx_coalesce_usecs > E1000_MAX_ITR_USECS) || |
1903 | ((ec->rx_coalesce_usecs > 4) && | 1902 | ((ec->rx_coalesce_usecs > 4) && |
@@ -1916,9 +1915,9 @@ static int e1000_set_coalesce(struct net_device *netdev, | |||
1916 | } | 1915 | } |
1917 | 1916 | ||
1918 | if (adapter->itr_setting != 0) | 1917 | if (adapter->itr_setting != 0) |
1919 | ew32(ITR, 1000000000 / (adapter->itr * 256)); | 1918 | e1000e_write_itr(adapter, adapter->itr); |
1920 | else | 1919 | else |
1921 | ew32(ITR, 0); | 1920 | e1000e_write_itr(adapter, 0); |
1922 | 1921 | ||
1923 | return 0; | 1922 | return 0; |
1924 | } | 1923 | } |