netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [net-next 0/7][pull request] Intel Wired LAN Driver Updates
@ 2012-01-03  1:50 Jeff Kirsher
  2012-01-03 17:23 ` David Miller
  0 siblings, 1 reply; 21+ messages in thread
From: Jeff Kirsher @ 2012-01-03  1:50 UTC (permalink / raw)
  To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann

The following series contains updates to igb, ixgbe and ixgbevf.  Most of
the changes are adding support of some kind.  There are 3 fixes, one fix
for ixgbevf to fix register defines.  The other two fixes are for ixgbe,
one being a minor comment spelling fix and the other is to fix register
reads.

Here is a list of the new support added:
 - 2 new device id's in ixgbe
 - igb flow control advertising to ethtool

v2: Dropped the 2 patches to 'add thermal data sensor' to ixgbe while Don/PJ
    review and potentially fix-up the patches based on community feedback.

The following are changes since commit 455ffa607f0efa90c9fec99604553b7cdd5274b2:
  Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
and are available in the git repository at:
  git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master

Alexander Duyck (1):
  ixgbevf: Fix register defines to correctly handle complex expressions

Carolyn Wyborny (1):
  igb: Add flow control advertising to ethtool setting.

Don Skidmore (1):
  ixgbe: add support for new 82599 device.

Emil Tantilov (3):
  ixgbe: fix incorrect PHY register reads
  ixgbe: add write flush in ixgbe_clock_out_i2c_byte()
  ixgbe: add support for new 82599 device id

Stephen Hemminger (1):
  ixgbe: fix typo's

 drivers/net/ethernet/intel/igb/igb_ethtool.c     |    6 ++-
 drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c   |    1 +
 drivers/net/ethernet/intel/ixgbe/ixgbe_common.c  |    8 ++--
 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c |   15 ++++++--
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c    |   26 +++++++++-----
 drivers/net/ethernet/intel/ixgbe/ixgbe_phy.c     |    1 +
 drivers/net/ethernet/intel/ixgbe/ixgbe_type.h    |    2 +
 drivers/net/ethernet/intel/ixgbevf/mbx.h         |    4 +-
 drivers/net/ethernet/intel/ixgbevf/regs.h        |   42 +++++++++++-----------
 9 files changed, 64 insertions(+), 41 deletions(-)

-- 
1.7.7.4

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [net-next 0/7][pull request] Intel Wired LAN Driver Updates
  2012-01-03  1:50 Jeff Kirsher
@ 2012-01-03 17:23 ` David Miller
  0 siblings, 0 replies; 21+ messages in thread
From: David Miller @ 2012-01-03 17:23 UTC (permalink / raw)
  To: jeffrey.t.kirsher; +Cc: netdev, gospo, sassmann

From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Mon,  2 Jan 2012 17:50:44 -0800

> The following series contains updates to igb, ixgbe and ixgbevf.  Most of
> the changes are adding support of some kind.  There are 3 fixes, one fix
> for ixgbevf to fix register defines.  The other two fixes are for ixgbe,
> one being a minor comment spelling fix and the other is to fix register
> reads.
> 
> Here is a list of the new support added:
>  - 2 new device id's in ixgbe
>  - igb flow control advertising to ethtool
> 
> v2: Dropped the 2 patches to 'add thermal data sensor' to ixgbe while Don/PJ
>     review and potentially fix-up the patches based on community feedback.
> 
> The following are changes since commit 455ffa607f0efa90c9fec99604553b7cdd5274b2:
>   Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
> and are available in the git repository at:
>   git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master

Pulled, thanks Jeff.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [net-next 0/7][pull request] Intel Wired LAN Driver Updates
@ 2012-02-09 10:27 Jeff Kirsher
  0 siblings, 0 replies; 21+ messages in thread
From: Jeff Kirsher @ 2012-02-09 10:27 UTC (permalink / raw)
  To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann

The following series contains updates to igb and e1000e.
Majority of the updates are to e1000e and do the following:
 - several cleanups which remove unnecessary () and returns from void
   functions
 - remove test that is always false
 - use 'true' instead of '1' for boolean
The one igb fix resolves warning about unused function.

The following are changes since commit a584b7ae4ef01425f6827657abdc3e4db49b3578:
  netxen_nic: signedness bug in netxen_md_entry_err_chk()
and are available in the git repository at:
  git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master

Bruce Allan (6):
  e1000e: remove test that is always false
  e1000e: remove unnecessary returns from void functions
  e1000e: remove unnecessary parentheses
  e1000e: use true/false for bool autoneg_false
  e1000e: pass pointer to hw struct for e1000_init_mac_params_XXX()
  e1000e: replace '1' with 'true' for boolean get_link_status

Emil Tantilov (1):
  igb: fix warning about unused function

 drivers/net/ethernet/intel/e1000e/80003es2lan.c |    7 ++---
 drivers/net/ethernet/intel/e1000e/82571.c       |    9 +++---
 drivers/net/ethernet/intel/e1000e/ethtool.c     |    4 +-
 drivers/net/ethernet/intel/e1000e/ich8lan.c     |    8 +----
 drivers/net/ethernet/intel/e1000e/mac.c         |   32 ++++++++++-------------
 drivers/net/ethernet/intel/e1000e/manage.c      |    2 +-
 drivers/net/ethernet/intel/e1000e/netdev.c      |   13 +++-----
 drivers/net/ethernet/intel/e1000e/phy.c         |   12 ++++----
 drivers/net/ethernet/intel/igb/igb_main.c       |    4 +++
 9 files changed, 41 insertions(+), 50 deletions(-)

-- 
1.7.7.6

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [net-next 0/7][pull request] Intel Wired LAN Driver Updates
@ 2012-02-11  0:08 Jeff Kirsher
  2012-02-12 22:05 ` David Miller
  0 siblings, 1 reply; 21+ messages in thread
From: Jeff Kirsher @ 2012-02-11  0:08 UTC (permalink / raw)
  To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann

The following series contains updates to ixgbe and skbuff.
The skbuff patch helps reduce the overall size of sk_buff and the
remaining patches are against ixgbe.  They do the following:
 - refactor RSC and address that RSC was not setting GSO size
 - combine post-DMA processing of sk_buff fields into 1 function
 - drop _ADV since all descriptors are advanced
 - improvements in the use of clear and status bits on Rx

The following are changes since commit d9dd966d7fc088a6bed991c2b1e2fba4485e0a31:
  igb: fix warning about unused function
and are available in the git repository at:
  git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master

Alexander Duyck (7):
  ixgbe: Minor refactor of RSC
  ixgbe: Address fact that RSC was not setting GSO size for incoming
    frames
  ixgbe: Let the Rx buffer allocation clear status bits instead of
    cleanup
  ixgbe: Add function for testing status bits in Rx descriptor
  ixgbe: Drop the _ADV of descriptor macros since all ixgbe descriptors
    are ADV
  ixgbe: Combine post-DMA processing of sk_buff fields into single
    function
  skbuff: Move rxhash and vlan_tci to consolidate holes in sk_buff

 drivers/net/ethernet/intel/ixgbe/ixgbe.h         |   29 +-
 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c |    4 +-
 drivers/net/ethernet/intel/ixgbe/ixgbe_fcoe.c    |   59 ++-
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c    |  686 ++++++++++++++--------
 include/linux/skbuff.h                           |    9 +-
 5 files changed, 505 insertions(+), 282 deletions(-)

-- 
1.7.7.6

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [net-next 0/7][pull request] Intel Wired LAN Driver Updates
  2012-02-11  0:08 Jeff Kirsher
@ 2012-02-12 22:05 ` David Miller
  0 siblings, 0 replies; 21+ messages in thread
From: David Miller @ 2012-02-12 22:05 UTC (permalink / raw)
  To: jeffrey.t.kirsher; +Cc: netdev, gospo, sassmann

From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Fri, 10 Feb 2012 16:08:17 -0800

> The following series contains updates to ixgbe and skbuff.
> The skbuff patch helps reduce the overall size of sk_buff and the
> remaining patches are against ixgbe.  They do the following:
>  - refactor RSC and address that RSC was not setting GSO size
>  - combine post-DMA processing of sk_buff fields into 1 function
>  - drop _ADV since all descriptors are advanced
>  - improvements in the use of clear and status bits on Rx
> 
> The following are changes since commit d9dd966d7fc088a6bed991c2b1e2fba4485e0a31:
>   igb: fix warning about unused function
> and are available in the git repository at:
>   git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master

Pulled, thanks.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [net-next 0/7][pull request] Intel Wired LAN Driver Updates
@ 2012-03-14  7:55 Jeff Kirsher
  2012-03-14  7:55 ` [net-next 1/7] ixgb: Remove unnecessary defines, use pr_debug Jeff Kirsher
                   ` (7 more replies)
  0 siblings, 8 replies; 21+ messages in thread
From: Jeff Kirsher @ 2012-03-14  7:55 UTC (permalink / raw)
  To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann

This series of patches contains fixes/cleanups ixgb and ixgbe.  This
series is part two of three to update ixgbe.

The following are changes since commit 3832b26e49ad9e585239b32f763c31679f9e41fe:
  ixgbe: Simplify logic for ethtool loopback frame creation and testing
and are available in the git repository at:
  git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master

Alexander Duyck (2):
  ixgbe: Do not disable read relaxed ordering when DCA is enabled
  ixgbe: Replace eitr_low and eitr_high with static values in
    ixgbe_update_itr

Atita Shirwaikar (1):
  ixgbe: Fix race condition where RX buffer could become corrupted.

Don Skidmore (1):
  ixgbe: fix obvious return value bug.

Jesse Brandeburg (1):
  ixgbe: use typed min/max functions where possible

Joe Perches (1):
  ixgb: Remove unnecessary defines, use pr_debug

John Fastabend (1):
  ixgbe: dcb: use DCB config values for FCoE traffic class on open

 drivers/net/ethernet/intel/ixgb/ixgb.h           |   12 --
 drivers/net/ethernet/intel/ixgb/ixgb_main.c      |    4 +-
 drivers/net/ethernet/intel/ixgbe/ixgbe.h         |    4 -
 drivers/net/ethernet/intel/ixgbe/ixgbe_82598.c   |    6 +-
 drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c   |   32 ++-----
 drivers/net/ethernet/intel/ixgbe/ixgbe_common.c  |   58 ++++++++++-
 drivers/net/ethernet/intel/ixgbe/ixgbe_common.h  |    2 +
 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c |    8 +-
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c    |  125 +++++++++++++---------
 drivers/net/ethernet/intel/ixgbe/ixgbe_type.h    |   10 ++-
 drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c    |    2 +
 11 files changed, 156 insertions(+), 107 deletions(-)

-- 
1.7.7.6

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [net-next 1/7] ixgb: Remove unnecessary defines, use pr_debug
  2012-03-14  7:55 [net-next 0/7][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
@ 2012-03-14  7:55 ` Jeff Kirsher
  2012-03-14  7:55 ` [net-next 2/7] ixgbe: Do not disable read relaxed ordering when DCA is enabled Jeff Kirsher
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 21+ messages in thread
From: Jeff Kirsher @ 2012-03-14  7:55 UTC (permalink / raw)
  To: davem; +Cc: Joe Perches, netdev, gospo, sassmann, Jeff Kirsher

From: Joe Perches <joe@perches.com>

Use the current logging styles.

Remove unnecessary _DEBUG_DRIVER_ and PFX, use pr_debug.
Coalesce format.

Signed-off-by: Joe Perches <joe@perches.com>
Tested-by:  Jeff Pieper <jeffrey.e.pieper@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
 drivers/net/ethernet/intel/ixgb/ixgb.h      |   12 ------------
 drivers/net/ethernet/intel/ixgb/ixgb_main.c |    4 ++--
 2 files changed, 2 insertions(+), 14 deletions(-)

diff --git a/drivers/net/ethernet/intel/ixgb/ixgb.h b/drivers/net/ethernet/intel/ixgb/ixgb.h
index cb23448..4d2ae97 100644
--- a/drivers/net/ethernet/intel/ixgb/ixgb.h
+++ b/drivers/net/ethernet/intel/ixgb/ixgb.h
@@ -75,18 +75,6 @@ struct ixgb_adapter;
 #include "ixgb_ee.h"
 #include "ixgb_ids.h"
 
-#define PFX "ixgb: "
-
-#ifdef _DEBUG_DRIVER_
-#define IXGB_DBG(fmt, args...) printk(KERN_DEBUG PFX fmt, ##args)
-#else
-#define IXGB_DBG(fmt, args...)				\
-do {							\
-	if (0)						\
-		printk(KERN_DEBUG PFX fmt, ##args);	\
-} while (0)
-#endif
-
 /* TX/RX descriptor defines */
 #define DEFAULT_TXD      256
 #define MAX_TXD         4096
diff --git a/drivers/net/ethernet/intel/ixgb/ixgb_main.c b/drivers/net/ethernet/intel/ixgb/ixgb_main.c
index 0024788..82aaa79 100644
--- a/drivers/net/ethernet/intel/ixgb/ixgb_main.c
+++ b/drivers/net/ethernet/intel/ixgb/ixgb_main.c
@@ -2068,8 +2068,8 @@ ixgb_clean_rx_irq(struct ixgb_adapter *adapter, int *work_done, int work_to_do)
 
 			/* All receives must fit into a single buffer */
 
-			IXGB_DBG("Receive packet consumed multiple buffers "
-					 "length<%x>\n", length);
+			pr_debug("Receive packet consumed multiple buffers length<%x>\n",
+				 length);
 
 			dev_kfree_skb_irq(skb);
 			goto rxdesc_done;
-- 
1.7.7.6

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [net-next 2/7] ixgbe: Do not disable read relaxed ordering when DCA is enabled
  2012-03-14  7:55 [net-next 0/7][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
  2012-03-14  7:55 ` [net-next 1/7] ixgb: Remove unnecessary defines, use pr_debug Jeff Kirsher
@ 2012-03-14  7:55 ` Jeff Kirsher
  2012-03-14  7:55 ` [net-next 3/7] ixgbe: Replace eitr_low and eitr_high with static values in ixgbe_update_itr Jeff Kirsher
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 21+ messages in thread
From: Jeff Kirsher @ 2012-03-14  7:55 UTC (permalink / raw)
  To: davem; +Cc: Alexander Duyck, netdev, gospo, sassmann, Jeff Kirsher

From: Alexander Duyck <alexander.h.duyck@intel.com>

A previous fix had gone though and disabled relaxed ordering for Rx
descriptor read fetching.  This was not necessary as this functions
correctly and has no ill effects on the system.

In addition several of the defines used for the DCA control registers were
incorrect in that they indicated descriptor effects when they actually had
an impact on either data or header write back.  As such I have update these
to correctly reflect either DATA or HEAD.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Tested-by: Stephen Ko <stephen.s.ko@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
 drivers/net/ethernet/intel/ixgbe/ixgbe_82598.c  |    6 +-
 drivers/net/ethernet/intel/ixgbe/ixgbe_common.c |    6 +-
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c   |   71 ++++++++++++-----------
 drivers/net/ethernet/intel/ixgbe/ixgbe_type.h   |    8 ++-
 4 files changed, 49 insertions(+), 42 deletions(-)

diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_82598.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_82598.c
index 752dbe6..85d2e2c 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_82598.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_82598.c
@@ -213,15 +213,15 @@ static s32 ixgbe_start_hw_82598(struct ixgbe_hw *hw)
 	for (i = 0; ((i < hw->mac.max_tx_queues) &&
 	     (i < IXGBE_DCA_MAX_QUEUES_82598)); i++) {
 		regval = IXGBE_READ_REG(hw, IXGBE_DCA_TXCTRL(i));
-		regval &= ~IXGBE_DCA_TXCTRL_TX_WB_RO_EN;
+		regval &= ~IXGBE_DCA_TXCTRL_DESC_WRO_EN;
 		IXGBE_WRITE_REG(hw, IXGBE_DCA_TXCTRL(i), regval);
 	}
 
 	for (i = 0; ((i < hw->mac.max_rx_queues) &&
 	     (i < IXGBE_DCA_MAX_QUEUES_82598)); i++) {
 		regval = IXGBE_READ_REG(hw, IXGBE_DCA_RXCTRL(i));
-		regval &= ~(IXGBE_DCA_RXCTRL_DESC_WRO_EN |
-			    IXGBE_DCA_RXCTRL_DESC_HSRO_EN);
+		regval &= ~(IXGBE_DCA_RXCTRL_DATA_WRO_EN |
+			    IXGBE_DCA_RXCTRL_HEAD_WRO_EN);
 		IXGBE_WRITE_REG(hw, IXGBE_DCA_RXCTRL(i), regval);
 	}
 
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_common.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_common.c
index 87f6b4f..67ec37b 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_common.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_common.c
@@ -128,14 +128,14 @@ s32 ixgbe_start_hw_gen2(struct ixgbe_hw *hw)
 	/* Disable relaxed ordering */
 	for (i = 0; i < hw->mac.max_tx_queues; i++) {
 		regval = IXGBE_READ_REG(hw, IXGBE_DCA_TXCTRL_82599(i));
-		regval &= ~IXGBE_DCA_TXCTRL_TX_WB_RO_EN;
+		regval &= ~IXGBE_DCA_TXCTRL_DESC_WRO_EN;
 		IXGBE_WRITE_REG(hw, IXGBE_DCA_TXCTRL_82599(i), regval);
 	}
 
 	for (i = 0; i < hw->mac.max_rx_queues; i++) {
 		regval = IXGBE_READ_REG(hw, IXGBE_DCA_RXCTRL(i));
-		regval &= ~(IXGBE_DCA_RXCTRL_DESC_WRO_EN |
-					IXGBE_DCA_RXCTRL_DESC_HSRO_EN);
+		regval &= ~(IXGBE_DCA_RXCTRL_DATA_WRO_EN |
+			    IXGBE_DCA_RXCTRL_HEAD_WRO_EN);
 		IXGBE_WRITE_REG(hw, IXGBE_DCA_RXCTRL(i), regval);
 	}
 
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
index 95240ab..ac35324 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
@@ -860,63 +860,68 @@ static bool ixgbe_clean_tx_irq(struct ixgbe_q_vector *q_vector,
 }
 
 #ifdef CONFIG_IXGBE_DCA
-static void ixgbe_update_rx_dca(struct ixgbe_adapter *adapter,
-				struct ixgbe_ring *rx_ring,
+static void ixgbe_update_tx_dca(struct ixgbe_adapter *adapter,
+				struct ixgbe_ring *tx_ring,
 				int cpu)
 {
 	struct ixgbe_hw *hw = &adapter->hw;
-	u32 rxctrl;
-	u8 reg_idx = rx_ring->reg_idx;
+	u32 txctrl = dca3_get_tag(tx_ring->dev, cpu);
+	u16 reg_offset;
 
-	rxctrl = IXGBE_READ_REG(hw, IXGBE_DCA_RXCTRL(reg_idx));
 	switch (hw->mac.type) {
 	case ixgbe_mac_82598EB:
-		rxctrl &= ~IXGBE_DCA_RXCTRL_CPUID_MASK;
-		rxctrl |= dca3_get_tag(rx_ring->dev, cpu);
+		reg_offset = IXGBE_DCA_TXCTRL(tx_ring->reg_idx);
 		break;
 	case ixgbe_mac_82599EB:
 	case ixgbe_mac_X540:
-		rxctrl &= ~IXGBE_DCA_RXCTRL_CPUID_MASK_82599;
-		rxctrl |= (dca3_get_tag(rx_ring->dev, cpu) <<
-			   IXGBE_DCA_RXCTRL_CPUID_SHIFT_82599);
+		reg_offset = IXGBE_DCA_TXCTRL_82599(tx_ring->reg_idx);
+		txctrl <<= IXGBE_DCA_TXCTRL_CPUID_SHIFT_82599;
 		break;
 	default:
-		break;
+		/* for unknown hardware do not write register */
+		return;
 	}
-	rxctrl |= IXGBE_DCA_RXCTRL_DESC_DCA_EN;
-	rxctrl |= IXGBE_DCA_RXCTRL_HEAD_DCA_EN;
-	rxctrl &= ~(IXGBE_DCA_RXCTRL_DESC_RRO_EN);
-	IXGBE_WRITE_REG(hw, IXGBE_DCA_RXCTRL(reg_idx), rxctrl);
+
+	/*
+	 * We can enable relaxed ordering for reads, but not writes when
+	 * DCA is enabled.  This is due to a known issue in some chipsets
+	 * which will cause the DCA tag to be cleared.
+	 */
+	txctrl |= IXGBE_DCA_TXCTRL_DESC_RRO_EN |
+		  IXGBE_DCA_TXCTRL_DATA_RRO_EN |
+		  IXGBE_DCA_TXCTRL_DESC_DCA_EN;
+
+	IXGBE_WRITE_REG(hw, reg_offset, txctrl);
 }
 
-static void ixgbe_update_tx_dca(struct ixgbe_adapter *adapter,
-				struct ixgbe_ring *tx_ring,
+static void ixgbe_update_rx_dca(struct ixgbe_adapter *adapter,
+				struct ixgbe_ring *rx_ring,
 				int cpu)
 {
 	struct ixgbe_hw *hw = &adapter->hw;
-	u32 txctrl;
-	u8 reg_idx = tx_ring->reg_idx;
+	u32 rxctrl = dca3_get_tag(rx_ring->dev, cpu);
+	u8 reg_idx = rx_ring->reg_idx;
+
 
 	switch (hw->mac.type) {
-	case ixgbe_mac_82598EB:
-		txctrl = IXGBE_READ_REG(hw, IXGBE_DCA_TXCTRL(reg_idx));
-		txctrl &= ~IXGBE_DCA_TXCTRL_CPUID_MASK;
-		txctrl |= dca3_get_tag(tx_ring->dev, cpu);
-		txctrl |= IXGBE_DCA_TXCTRL_DESC_DCA_EN;
-		IXGBE_WRITE_REG(hw, IXGBE_DCA_TXCTRL(reg_idx), txctrl);
-		break;
 	case ixgbe_mac_82599EB:
 	case ixgbe_mac_X540:
-		txctrl = IXGBE_READ_REG(hw, IXGBE_DCA_TXCTRL_82599(reg_idx));
-		txctrl &= ~IXGBE_DCA_TXCTRL_CPUID_MASK_82599;
-		txctrl |= (dca3_get_tag(tx_ring->dev, cpu) <<
-			   IXGBE_DCA_TXCTRL_CPUID_SHIFT_82599);
-		txctrl |= IXGBE_DCA_TXCTRL_DESC_DCA_EN;
-		IXGBE_WRITE_REG(hw, IXGBE_DCA_TXCTRL_82599(reg_idx), txctrl);
+		rxctrl <<= IXGBE_DCA_RXCTRL_CPUID_SHIFT_82599;
 		break;
 	default:
 		break;
 	}
+
+	/*
+	 * We can enable relaxed ordering for reads, but not writes when
+	 * DCA is enabled.  This is due to a known issue in some chipsets
+	 * which will cause the DCA tag to be cleared.
+	 */
+	rxctrl |= IXGBE_DCA_RXCTRL_DESC_RRO_EN |
+		  IXGBE_DCA_RXCTRL_DATA_DCA_EN |
+		  IXGBE_DCA_RXCTRL_DESC_DCA_EN;
+
+	IXGBE_WRITE_REG(hw, IXGBE_DCA_RXCTRL(reg_idx), rxctrl);
 }
 
 static void ixgbe_update_dca(struct ixgbe_q_vector *q_vector)
@@ -991,8 +996,8 @@ static int __ixgbe_notify_dca(struct device *dev, void *data)
 
 	return 0;
 }
-#endif /* CONFIG_IXGBE_DCA */
 
+#endif /* CONFIG_IXGBE_DCA */
 static inline void ixgbe_rx_hash(struct ixgbe_ring *ring,
 				 union ixgbe_adv_rx_desc *rx_desc,
 				 struct sk_buff *skb)
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h b/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h
index 4c06029..54e2a5e 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h
@@ -1021,14 +1021,16 @@
 #define IXGBE_DCA_RXCTRL_HEAD_DCA_EN (1 << 6) /* DCA Rx Desc header enable */
 #define IXGBE_DCA_RXCTRL_DATA_DCA_EN (1 << 7) /* DCA Rx Desc payload enable */
 #define IXGBE_DCA_RXCTRL_DESC_RRO_EN (1 << 9) /* DCA Rx rd Desc Relax Order */
-#define IXGBE_DCA_RXCTRL_DESC_WRO_EN (1 << 13) /* DCA Rx wr Desc Relax Order */
-#define IXGBE_DCA_RXCTRL_DESC_HSRO_EN (1 << 15) /* DCA Rx Split Header RO */
+#define IXGBE_DCA_RXCTRL_DATA_WRO_EN (1 << 13) /* Rx wr data Relax Order */
+#define IXGBE_DCA_RXCTRL_HEAD_WRO_EN (1 << 15) /* Rx wr header RO */
 
 #define IXGBE_DCA_TXCTRL_CPUID_MASK 0x0000001F /* Tx CPUID Mask */
 #define IXGBE_DCA_TXCTRL_CPUID_MASK_82599  0xFF000000 /* Tx CPUID Mask */
 #define IXGBE_DCA_TXCTRL_CPUID_SHIFT_82599 24 /* Tx CPUID Shift */
 #define IXGBE_DCA_TXCTRL_DESC_DCA_EN (1 << 5) /* DCA Tx Desc enable */
-#define IXGBE_DCA_TXCTRL_TX_WB_RO_EN (1 << 11) /* Tx Desc writeback RO bit */
+#define IXGBE_DCA_TXCTRL_DESC_RRO_EN (1 << 9) /* Tx rd Desc Relax Order */
+#define IXGBE_DCA_TXCTRL_DESC_WRO_EN (1 << 11) /* Tx Desc writeback RO bit */
+#define IXGBE_DCA_TXCTRL_DATA_RRO_EN (1 << 13) /* Tx rd data Relax Order */
 #define IXGBE_DCA_MAX_QUEUES_82598   16 /* DCA regs only on 16 queues */
 
 /* MSCA Bit Masks */
-- 
1.7.7.6

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [net-next 3/7] ixgbe: Replace eitr_low and eitr_high with static values in ixgbe_update_itr
  2012-03-14  7:55 [net-next 0/7][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
  2012-03-14  7:55 ` [net-next 1/7] ixgb: Remove unnecessary defines, use pr_debug Jeff Kirsher
  2012-03-14  7:55 ` [net-next 2/7] ixgbe: Do not disable read relaxed ordering when DCA is enabled Jeff Kirsher
@ 2012-03-14  7:55 ` Jeff Kirsher
  2012-03-14  7:55 ` [net-next 4/7] ixgbe: fix obvious return value bug Jeff Kirsher
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 21+ messages in thread
From: Jeff Kirsher @ 2012-03-14  7:55 UTC (permalink / raw)
  To: davem; +Cc: Alexander Duyck, netdev, gospo, sassmann, Jeff Kirsher

From: Alexander Duyck <alexander.h.duyck@intel.com>

There isn't much point in using variables to store the values of eitr_low
and eitr_high since they are not user changeable.  As such I am replacing
them with the constants 10 and 20 in order to avoid any confusion on what
the values actually are.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Tested-by: Stephen Ko <stephen.s.ko@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
 drivers/net/ethernet/intel/ixgbe/ixgbe.h      |    4 ----
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c |   21 ++++++++-------------
 2 files changed, 8 insertions(+), 17 deletions(-)

diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe.h b/drivers/net/ethernet/intel/ixgbe/ixgbe.h
index 03175cb..f069c1b 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe.h
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe.h
@@ -511,10 +511,6 @@ struct ixgbe_adapter {
 #endif /* IXGBE_FCOE */
 	u32 wol;
 
-	/* Interrupt Throttle Rate */
-	u16 eitr_low;
-	u16 eitr_high;
-
 	u16 bd_number;
 
 	u16 eeprom_verh;
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
index ac35324..71ced43 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
@@ -1782,20 +1782,19 @@ enum latency_range {
 static void ixgbe_update_itr(struct ixgbe_q_vector *q_vector,
 			     struct ixgbe_ring_container *ring_container)
 {
-	u64 bytes_perint;
-	struct ixgbe_adapter *adapter = q_vector->adapter;
 	int bytes = ring_container->total_bytes;
 	int packets = ring_container->total_packets;
 	u32 timepassed_us;
+	u64 bytes_perint;
 	u8 itr_setting = ring_container->itr;
 
 	if (packets == 0)
 		return;
 
 	/* simple throttlerate management
-	 *    0-20MB/s lowest (100000 ints/s)
-	 *   20-100MB/s low   (20000 ints/s)
-	 *  100-1249MB/s bulk (8000 ints/s)
+	 *   0-10MB/s   lowest (100000 ints/s)
+	 *  10-20MB/s   low    (20000 ints/s)
+	 *  20-1249MB/s bulk   (8000 ints/s)
 	 */
 	/* what was last interrupt timeslice? */
 	timepassed_us = q_vector->itr >> 2;
@@ -1803,17 +1802,17 @@ static void ixgbe_update_itr(struct ixgbe_q_vector *q_vector,
 
 	switch (itr_setting) {
 	case lowest_latency:
-		if (bytes_perint > adapter->eitr_low)
+		if (bytes_perint > 10)
 			itr_setting = low_latency;
 		break;
 	case low_latency:
-		if (bytes_perint > adapter->eitr_high)
+		if (bytes_perint > 20)
 			itr_setting = bulk_latency;
-		else if (bytes_perint <= adapter->eitr_low)
+		else if (bytes_perint <= 10)
 			itr_setting = lowest_latency;
 		break;
 	case bulk_latency:
-		if (bytes_perint <= adapter->eitr_high)
+		if (bytes_perint <= 20)
 			itr_setting = low_latency;
 		break;
 	}
@@ -5239,10 +5238,6 @@ static int __devinit ixgbe_sw_init(struct ixgbe_adapter *adapter)
 	adapter->rx_itr_setting = 1;
 	adapter->tx_itr_setting = 1;
 
-	/* set defaults for eitr in MegaBytes */
-	adapter->eitr_low = 10;
-	adapter->eitr_high = 20;
-
 	/* set default ring sizes */
 	adapter->tx_ring_count = IXGBE_DEFAULT_TXD;
 	adapter->rx_ring_count = IXGBE_DEFAULT_RXD;
-- 
1.7.7.6

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [net-next 4/7] ixgbe: fix obvious return value bug.
  2012-03-14  7:55 [net-next 0/7][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
                   ` (2 preceding siblings ...)
  2012-03-14  7:55 ` [net-next 3/7] ixgbe: Replace eitr_low and eitr_high with static values in ixgbe_update_itr Jeff Kirsher
@ 2012-03-14  7:55 ` Jeff Kirsher
  2012-03-14  7:55 ` [net-next 5/7] ixgbe: use typed min/max functions where possible Jeff Kirsher
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 21+ messages in thread
From: Jeff Kirsher @ 2012-03-14  7:55 UTC (permalink / raw)
  To: davem; +Cc: Don Skidmore, netdev, gospo, sassmann, Jeff Kirsher

From: Don Skidmore <donald.c.skidmore@intel.com>

This is clearly a typeo where we are not checking the return value from
get_link_capabilities but should.  This patch corrects that.

Signed-off-by: Don Skidmore <donald.c.skidmore@intel.com>
Tested-by: Stephen Ko <stephen.s.ko@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
 drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c
index 4e59083..e39df22 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c
@@ -779,7 +779,8 @@ static s32 ixgbe_setup_mac_link_82599(struct ixgbe_hw *hw,
 	ixgbe_link_speed link_capabilities = IXGBE_LINK_SPEED_UNKNOWN;
 
 	/* Check to see if speed passed in is supported. */
-	hw->mac.ops.get_link_capabilities(hw, &link_capabilities, &autoneg);
+	status = hw->mac.ops.get_link_capabilities(hw, &link_capabilities,
+						   &autoneg);
 	if (status != 0)
 		goto out;
 
-- 
1.7.7.6

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [net-next 5/7] ixgbe: use typed min/max functions where possible
  2012-03-14  7:55 [net-next 0/7][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
                   ` (3 preceding siblings ...)
  2012-03-14  7:55 ` [net-next 4/7] ixgbe: fix obvious return value bug Jeff Kirsher
@ 2012-03-14  7:55 ` Jeff Kirsher
  2012-03-14  7:55 ` [net-next 6/7] ixgbe: Fix race condition where RX buffer could become corrupted Jeff Kirsher
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 21+ messages in thread
From: Jeff Kirsher @ 2012-03-14  7:55 UTC (permalink / raw)
  To: davem; +Cc: Jesse Brandeburg, netdev, gospo, sassmann, Jeff Kirsher

From: Jesse Brandeburg <jesse.brandeburg@intel.com>

using the form min((int)var, ver)) is replaced by min_t(int, ...)

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Tested-by: Stephen Ko <stephen.s.ko@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c |    8 ++++----
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c    |    8 ++++----
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c
index 1216bae..24f7291 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c
@@ -935,12 +935,12 @@ static int ixgbe_set_ringparam(struct net_device *netdev,
 	if ((ring->rx_mini_pending) || (ring->rx_jumbo_pending))
 		return -EINVAL;
 
-	new_rx_count = max(ring->rx_pending, (u32)IXGBE_MIN_RXD);
-	new_rx_count = min(new_rx_count, (u32)IXGBE_MAX_RXD);
+	new_rx_count = max_t(u32, ring->rx_pending, IXGBE_MIN_RXD);
+	new_rx_count = min_t(u32, new_rx_count, IXGBE_MAX_RXD);
 	new_rx_count = ALIGN(new_rx_count, IXGBE_REQ_RX_DESCRIPTOR_MULTIPLE);
 
-	new_tx_count = max(ring->tx_pending, (u32)IXGBE_MIN_TXD);
-	new_tx_count = min(new_tx_count, (u32)IXGBE_MAX_TXD);
+	new_tx_count = max_t(u32, ring->tx_pending, IXGBE_MIN_TXD);
+	new_tx_count = min_t(u32, new_tx_count, IXGBE_MAX_TXD);
 	new_tx_count = ALIGN(new_tx_count, IXGBE_REQ_TX_DESCRIPTOR_MULTIPLE);
 
 	if ((new_tx_count == adapter->tx_ring[0]->count) &&
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
index 71ced43..fce33f1 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
@@ -4316,7 +4316,7 @@ static inline bool ixgbe_set_fcoe_queues(struct ixgbe_adapter *adapter)
 	if (!(adapter->flags & IXGBE_FLAG_FCOE_ENABLED))
 		return false;
 
-	f->indices = min((int)num_online_cpus(), f->indices);
+	f->indices = min_t(int, num_online_cpus(), f->indices);
 
 	adapter->num_rx_queues = 1;
 	adapter->num_tx_queues = 1;
@@ -4352,8 +4352,8 @@ static inline bool ixgbe_set_dcb_queues(struct ixgbe_adapter *adapter)
 		return false;
 
 	/* Map queue offset and counts onto allocated tx queues */
-	per_tc_q = min(dev->num_tx_queues / tcs, (unsigned int)DCB_QUEUE_CAP);
-	q = min((int)num_online_cpus(), per_tc_q);
+	per_tc_q = min_t(unsigned int, dev->num_tx_queues / tcs, DCB_QUEUE_CAP);
+	q = min_t(int, num_online_cpus(), per_tc_q);
 
 	for (i = 0; i < tcs; i++) {
 		netdev_set_tc_queue(dev, i, q, offset);
@@ -5146,7 +5146,7 @@ static int __devinit ixgbe_sw_init(struct ixgbe_adapter *adapter)
 	hw->subsystem_device_id = pdev->subsystem_device;
 
 	/* Set capability flags */
-	rss = min(IXGBE_MAX_RSS_INDICES, (int)num_online_cpus());
+	rss = min_t(int, IXGBE_MAX_RSS_INDICES, num_online_cpus());
 	adapter->ring_feature[RING_F_RSS].indices = rss;
 	adapter->flags |= IXGBE_FLAG_RSS_ENABLED;
 	switch (hw->mac.type) {
-- 
1.7.7.6

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [net-next 6/7] ixgbe: Fix race condition where RX buffer could become corrupted.
  2012-03-14  7:55 [net-next 0/7][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
                   ` (4 preceding siblings ...)
  2012-03-14  7:55 ` [net-next 5/7] ixgbe: use typed min/max functions where possible Jeff Kirsher
@ 2012-03-14  7:55 ` Jeff Kirsher
  2012-03-14  7:55 ` [net-next 7/7] ixgbe: dcb: use DCB config values for FCoE traffic class on open Jeff Kirsher
  2012-03-14  9:27 ` [net-next 0/7][pull request] Intel Wired LAN Driver Updates David Miller
  7 siblings, 0 replies; 21+ messages in thread
From: Jeff Kirsher @ 2012-03-14  7:55 UTC (permalink / raw)
  To: davem; +Cc: Atita Shirwaikar, netdev, gospo, sassmann, Jeff Kirsher

From: Atita Shirwaikar <atita.shirwaikar@intel.com>

There was a race condition in the reset path where the RX buffer
could become corrupted during Fdir configuration.This is due to
a HW bug.The fix right now is to lock the buffer while we do the
fdir configuration.Since we were using similar workaround for another bug,
I moved the existing code to a function and reused it.HW team also recommended
that IXGBE_MAX_SECRX_POLL value be changed from 30 to 40.The erratum for this
bug will be published in the next release 82599 Spec Update

Signed-off-by: Atita Shirwaikar <atita.shirwaikar@intel.com>
Acked-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Tested-by: Stephen Ko <stephen.s.ko@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
 drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c  |   29 ++----------
 drivers/net/ethernet/intel/ixgbe/ixgbe_common.c |   52 +++++++++++++++++++++++
 drivers/net/ethernet/intel/ixgbe/ixgbe_common.h |    2 +
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c   |   21 +++++++++
 drivers/net/ethernet/intel/ixgbe/ixgbe_type.h   |    2 +
 drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c   |    2 +
 6 files changed, 84 insertions(+), 24 deletions(-)

diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c
index e39df22..9c14685 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c
@@ -1907,38 +1907,17 @@ out:
  **/
 static s32 ixgbe_enable_rx_dma_82599(struct ixgbe_hw *hw, u32 regval)
 {
-#define IXGBE_MAX_SECRX_POLL 30
-	int i;
-	int secrxreg;
-
 	/*
 	 * Workaround for 82599 silicon errata when enabling the Rx datapath.
 	 * If traffic is incoming before we enable the Rx unit, it could hang
 	 * the Rx DMA unit.  Therefore, make sure the security engine is
 	 * completely disabled prior to enabling the Rx unit.
 	 */
-	secrxreg = IXGBE_READ_REG(hw, IXGBE_SECRXCTRL);
-	secrxreg |= IXGBE_SECRXCTRL_RX_DIS;
-	IXGBE_WRITE_REG(hw, IXGBE_SECRXCTRL, secrxreg);
-	for (i = 0; i < IXGBE_MAX_SECRX_POLL; i++) {
-		secrxreg = IXGBE_READ_REG(hw, IXGBE_SECRXSTAT);
-		if (secrxreg & IXGBE_SECRXSTAT_SECRX_RDY)
-			break;
-		else
-			/* Use interrupt-safe sleep just in case */
-			udelay(10);
-	}
-
-	/* For informational purposes only */
-	if (i >= IXGBE_MAX_SECRX_POLL)
-		hw_dbg(hw, "Rx unit being enabled before security "
-		       "path fully disabled.  Continuing with init.\n");
+	hw->mac.ops.disable_rx_buff(hw);
 
 	IXGBE_WRITE_REG(hw, IXGBE_RXCTRL, regval);
-	secrxreg = IXGBE_READ_REG(hw, IXGBE_SECRXCTRL);
-	secrxreg &= ~IXGBE_SECRXCTRL_RX_DIS;
-	IXGBE_WRITE_REG(hw, IXGBE_SECRXCTRL, secrxreg);
-	IXGBE_WRITE_FLUSH(hw);
+
+	hw->mac.ops.enable_rx_buff(hw);
 
 	return 0;
 }
@@ -2103,6 +2082,8 @@ static struct ixgbe_mac_operations mac_ops_82599 = {
 	.get_media_type         = &ixgbe_get_media_type_82599,
 	.get_supported_physical_layer = &ixgbe_get_supported_physical_layer_82599,
 	.enable_rx_dma          = &ixgbe_enable_rx_dma_82599,
+	.disable_rx_buff	= &ixgbe_disable_rx_buff_generic,
+	.enable_rx_buff		= &ixgbe_enable_rx_buff_generic,
 	.get_mac_addr           = &ixgbe_get_mac_addr_generic,
 	.get_san_mac_addr       = &ixgbe_get_san_mac_addr_generic,
 	.get_device_caps        = &ixgbe_get_device_caps_generic,
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_common.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_common.c
index 67ec37b..6117bfd 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_common.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_common.c
@@ -2578,6 +2578,58 @@ void ixgbe_release_swfw_sync(struct ixgbe_hw *hw, u16 mask)
 }
 
 /**
+ *  ixgbe_disable_rx_buff_generic - Stops the receive data path
+ *  @hw: pointer to hardware structure
+ *
+ *  Stops the receive data path and waits for the HW to internally
+ *  empty the Rx security block.
+ **/
+s32 ixgbe_disable_rx_buff_generic(struct ixgbe_hw *hw)
+{
+#define IXGBE_MAX_SECRX_POLL 40
+	int i;
+	int secrxreg;
+
+	secrxreg = IXGBE_READ_REG(hw, IXGBE_SECRXCTRL);
+	secrxreg |= IXGBE_SECRXCTRL_RX_DIS;
+	IXGBE_WRITE_REG(hw, IXGBE_SECRXCTRL, secrxreg);
+	for (i = 0; i < IXGBE_MAX_SECRX_POLL; i++) {
+		secrxreg = IXGBE_READ_REG(hw, IXGBE_SECRXSTAT);
+		if (secrxreg & IXGBE_SECRXSTAT_SECRX_RDY)
+			break;
+		else
+			/* Use interrupt-safe sleep just in case */
+			udelay(10);
+	}
+
+	/* For informational purposes only */
+	if (i >= IXGBE_MAX_SECRX_POLL)
+		hw_dbg(hw, "Rx unit being enabled before security "
+		       "path fully disabled.  Continuing with init.\n");
+
+	return 0;
+
+}
+
+/**
+ *  ixgbe_enable_rx_buff - Enables the receive data path
+ *  @hw: pointer to hardware structure
+ *
+ *  Enables the receive data path
+ **/
+s32 ixgbe_enable_rx_buff_generic(struct ixgbe_hw *hw)
+{
+	int secrxreg;
+
+	secrxreg = IXGBE_READ_REG(hw, IXGBE_SECRXCTRL);
+	secrxreg &= ~IXGBE_SECRXCTRL_RX_DIS;
+	IXGBE_WRITE_REG(hw, IXGBE_SECRXCTRL, secrxreg);
+	IXGBE_WRITE_FLUSH(hw);
+
+	return 0;
+}
+
+/**
  *  ixgbe_enable_rx_dma_generic - Enable the Rx DMA unit
  *  @hw: pointer to hardware structure
  *  @regval: register value to write to RXCTRL
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_common.h b/drivers/net/ethernet/intel/ixgbe/ixgbe_common.h
index 2c834c4..204f062 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_common.h
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_common.h
@@ -74,6 +74,8 @@ s32 ixgbe_update_mc_addr_list_generic(struct ixgbe_hw *hw,
 				      struct net_device *netdev);
 s32 ixgbe_enable_mc_generic(struct ixgbe_hw *hw);
 s32 ixgbe_disable_mc_generic(struct ixgbe_hw *hw);
+s32 ixgbe_disable_rx_buff_generic(struct ixgbe_hw *hw);
+s32 ixgbe_enable_rx_buff_generic(struct ixgbe_hw *hw);
 s32 ixgbe_enable_rx_dma_generic(struct ixgbe_hw *hw, u32 regval);
 s32 ixgbe_fc_enable_generic(struct ixgbe_hw *hw, s32 packetbuf_num);
 s32 ixgbe_fc_autoneg(struct ixgbe_hw *hw);
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
index fce33f1..e1444bd 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
@@ -3661,6 +3661,8 @@ static void ixgbe_fdir_filter_restore(struct ixgbe_adapter *adapter)
 
 static void ixgbe_configure(struct ixgbe_adapter *adapter)
 {
+	struct ixgbe_hw *hw = &adapter->hw;
+
 	ixgbe_configure_pb(adapter);
 #ifdef CONFIG_IXGBE_DCB
 	ixgbe_configure_dcb(adapter);
@@ -3674,6 +3676,16 @@ static void ixgbe_configure(struct ixgbe_adapter *adapter)
 		ixgbe_configure_fcoe(adapter);
 
 #endif /* IXGBE_FCOE */
+
+	switch (hw->mac.type) {
+	case ixgbe_mac_82599EB:
+	case ixgbe_mac_X540:
+		hw->mac.ops.disable_rx_buff(hw);
+		break;
+	default:
+		break;
+	}
+
 	if (adapter->flags & IXGBE_FLAG_FDIR_HASH_CAPABLE) {
 		ixgbe_init_fdir_signature_82599(&adapter->hw,
 						adapter->fdir_pballoc);
@@ -3683,6 +3695,15 @@ static void ixgbe_configure(struct ixgbe_adapter *adapter)
 		ixgbe_fdir_filter_restore(adapter);
 	}
 
+	switch (hw->mac.type) {
+	case ixgbe_mac_82599EB:
+	case ixgbe_mac_X540:
+		hw->mac.ops.enable_rx_buff(hw);
+		break;
+	default:
+		break;
+	}
+
 	ixgbe_configure_virtualization(adapter);
 
 	ixgbe_configure_tx(adapter);
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h b/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h
index 54e2a5e..8636e83 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h
@@ -2728,6 +2728,8 @@ struct ixgbe_mac_operations {
 	s32 (*read_analog_reg8)(struct ixgbe_hw*, u32, u8*);
 	s32 (*write_analog_reg8)(struct ixgbe_hw*, u32, u8);
 	s32 (*setup_sfp)(struct ixgbe_hw *);
+	s32 (*disable_rx_buff)(struct ixgbe_hw *);
+	s32 (*enable_rx_buff)(struct ixgbe_hw *);
 	s32 (*enable_rx_dma)(struct ixgbe_hw *, u32);
 	s32 (*acquire_swfw_sync)(struct ixgbe_hw *, u16);
 	void (*release_swfw_sync)(struct ixgbe_hw *, u16);
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c
index 5e9f05f..97a9914 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c
@@ -847,6 +847,8 @@ static struct ixgbe_mac_operations mac_ops_X540 = {
 	.set_vlan_anti_spoofing = &ixgbe_set_vlan_anti_spoofing,
 	.acquire_swfw_sync      = &ixgbe_acquire_swfw_sync_X540,
 	.release_swfw_sync      = &ixgbe_release_swfw_sync_X540,
+	.disable_rx_buff	= &ixgbe_disable_rx_buff_generic,
+	.enable_rx_buff		= &ixgbe_enable_rx_buff_generic,
 };
 
 static struct ixgbe_eeprom_operations eeprom_ops_X540 = {
-- 
1.7.7.6

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [net-next 7/7] ixgbe: dcb: use DCB config values for FCoE traffic class on open
  2012-03-14  7:55 [net-next 0/7][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
                   ` (5 preceding siblings ...)
  2012-03-14  7:55 ` [net-next 6/7] ixgbe: Fix race condition where RX buffer could become corrupted Jeff Kirsher
@ 2012-03-14  7:55 ` Jeff Kirsher
  2012-03-14  9:27 ` [net-next 0/7][pull request] Intel Wired LAN Driver Updates David Miller
  7 siblings, 0 replies; 21+ messages in thread
From: Jeff Kirsher @ 2012-03-14  7:55 UTC (permalink / raw)
  To: davem; +Cc: John Fastabend, netdev, gospo, sassmann, Jeff Kirsher

From: John Fastabend <john.r.fastabend@intel.com>

Disabling and enabling DCB can cause FCoE hardware initialization to
occur on the incorrect traffic class when the up2tc mapping has not
yet been reconfigured.

Fix this by using the DCB configuration maps that are correct
and will be pushed at mqprio after DCB driver setup completes
successfully.

Signed-off-by: John Fastabend <john.r.fastabend@intel.com>
Tested-by: Marcus Dennis <marcusx.e.dennis@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
index e1444bd..167e898 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
@@ -4391,11 +4391,13 @@ static inline bool ixgbe_set_dcb_queues(struct ixgbe_adapter *adapter)
 	 * configuration later.
 	 */
 	if (adapter->flags & IXGBE_FLAG_FCOE_ENABLED) {
+		u8 prio_tc[MAX_USER_PRIORITY] = {0};
 		int tc;
 		struct ixgbe_ring_feature *f =
 					&adapter->ring_feature[RING_F_FCOE];
 
-		tc = netdev_get_prio_tc_map(dev, adapter->fcoe.up);
+		ixgbe_dcb_unpack_map(&adapter->dcb_cfg, DCB_TX_CONFIG, prio_tc);
+		tc = prio_tc[adapter->fcoe.up];
 		f->indices = dev->tc_to_txq[tc].count;
 		f->mask = dev->tc_to_txq[tc].offset;
 	}
-- 
1.7.7.6

^ permalink raw reply related	[flat|nested] 21+ messages in thread

* Re: [net-next 0/7][pull request] Intel Wired LAN Driver Updates
  2012-03-14  7:55 [net-next 0/7][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
                   ` (6 preceding siblings ...)
  2012-03-14  7:55 ` [net-next 7/7] ixgbe: dcb: use DCB config values for FCoE traffic class on open Jeff Kirsher
@ 2012-03-14  9:27 ` David Miller
  7 siblings, 0 replies; 21+ messages in thread
From: David Miller @ 2012-03-14  9:27 UTC (permalink / raw)
  To: jeffrey.t.kirsher; +Cc: netdev, gospo, sassmann

From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Wed, 14 Mar 2012 00:55:19 -0700

> This series of patches contains fixes/cleanups ixgb and ixgbe.  This
> series is part two of three to update ixgbe.
> 
> The following are changes since commit 3832b26e49ad9e585239b32f763c31679f9e41fe:
>   ixgbe: Simplify logic for ethtool loopback frame creation and testing
> and are available in the git repository at:
>   git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master

Pulled, thanks Jeff.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [net-next 0/7][pull request] Intel Wired LAN Driver Updates
@ 2012-07-14 23:06 Jeff Kirsher
  2012-07-17  6:04 ` David Miller
  0 siblings, 1 reply; 21+ messages in thread
From: Jeff Kirsher @ 2012-07-14 23:06 UTC (permalink / raw)
  To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann

This series contains updates to e1000e and ixgbe.

The following are changes since commit 141e369de698f2e17bf716b83fcc647ddcb2220c:
  xfrm: Initialize the struct xfrm_dst behind the dst_enty field
and are available in the git repository at:
  git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master

Alexander Duyck (5):
  ixgbe: Simplify logic for getting traffic class from user priority
  ixgbe: Cleanup unpacking code for DCB
  ixgbe: Populate the prio_tc_map in ixgbe_setup_tc
  ixgbe: Add function for obtaining FCoE TC based on FCoE user priority
  ixgbe: Merge FCoE set_num and cache_ring calls into RSS/DCB config

Matthew Vick (1):
  e1000e: Program the correct register for ITR when using MSI-X.

Tushar Dave (1):
  e1000e: Cleanup code logic in e1000_check_for_serdes_link_82571()

 drivers/net/ethernet/intel/e1000e/82571.c       |   14 +-
 drivers/net/ethernet/intel/e1000e/e1000.h       |    1 +
 drivers/net/ethernet/intel/e1000e/ethtool.c     |    5 +-
 drivers/net/ethernet/intel/e1000e/netdev.c      |   32 ++-
 drivers/net/ethernet/intel/ixgbe/ixgbe.h        |    1 +
 drivers/net/ethernet/intel/ixgbe/ixgbe_dcb.c    |   74 ++++---
 drivers/net/ethernet/intel/ixgbe/ixgbe_dcb.h    |    1 +
 drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c |   26 +--
 drivers/net/ethernet/intel/ixgbe/ixgbe_fcoe.c   |   15 ++
 drivers/net/ethernet/intel/ixgbe/ixgbe_lib.c    |  260 ++++++++++-------------
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c   |   61 ++++--
 11 files changed, 265 insertions(+), 225 deletions(-)

-- 
1.7.10.4

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [net-next 0/7][pull request] Intel Wired LAN Driver Updates
  2012-07-14 23:06 Jeff Kirsher
@ 2012-07-17  6:04 ` David Miller
  0 siblings, 0 replies; 21+ messages in thread
From: David Miller @ 2012-07-17  6:04 UTC (permalink / raw)
  To: jeffrey.t.kirsher; +Cc: netdev, gospo, sassmann

From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Sat, 14 Jul 2012 16:06:58 -0700

> This series contains updates to e1000e and ixgbe.
> 
> The following are changes since commit 141e369de698f2e17bf716b83fcc647ddcb2220c:
>   xfrm: Initialize the struct xfrm_dst behind the dst_enty field
> and are available in the git repository at:
>   git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
> 
> Alexander Duyck (5):
>   ixgbe: Simplify logic for getting traffic class from user priority
>   ixgbe: Cleanup unpacking code for DCB
>   ixgbe: Populate the prio_tc_map in ixgbe_setup_tc
>   ixgbe: Add function for obtaining FCoE TC based on FCoE user priority
>   ixgbe: Merge FCoE set_num and cache_ring calls into RSS/DCB config
> 
> Matthew Vick (1):
>   e1000e: Program the correct register for ITR when using MSI-X.
> 
> Tushar Dave (1):
>   e1000e: Cleanup code logic in e1000_check_for_serdes_link_82571()

Pulled, thanks Jeff.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [net-next 0/7][pull request] Intel Wired LAN Driver Updates
@ 2012-09-22 10:30 Jeff Kirsher
  2012-09-22 19:39 ` David Miller
  0 siblings, 1 reply; 21+ messages in thread
From: Jeff Kirsher @ 2012-09-22 10:30 UTC (permalink / raw)
  To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann

This series contains updates to igb only.

The following are changes since commit abb17e6c0c7b27693201dc85f75dbb184279fd10:
  netlink: use <linux/export.h> instead of <linux/module.h>
and are available in the git repository at:
  git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master

Alexander Duyck (5):
  igb: Remove logic that was doing NUMA pseudo-aware allocations
  igb: Change Tx cleanup loop to do/while instead of for
  igb: Change how we populate the RSS indirection table
  igb: Simplify how we populate the RSS key
  igb: Use dma_unmap_addr and dma_unmap_len defines

Carolyn Wyborny (1):
  igb: Fix stats output on i210/i211 parts.

Stefan Assmann (1):
  igb: Change how we check for pre-existing and assigned VFs

 drivers/net/ethernet/intel/igb/igb.h      |   8 +-
 drivers/net/ethernet/intel/igb/igb_main.c | 370 ++++++++++--------------------
 2 files changed, 122 insertions(+), 256 deletions(-)

-- 
1.7.11.4

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [net-next 0/7][pull request] Intel Wired LAN Driver Updates
  2012-09-22 10:30 Jeff Kirsher
@ 2012-09-22 19:39 ` David Miller
  0 siblings, 0 replies; 21+ messages in thread
From: David Miller @ 2012-09-22 19:39 UTC (permalink / raw)
  To: jeffrey.t.kirsher; +Cc: netdev, gospo, sassmann

From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Sat, 22 Sep 2012 03:30:29 -0700

> This series contains updates to igb only.
> 
> The following are changes since commit abb17e6c0c7b27693201dc85f75dbb184279fd10:
>   netlink: use <linux/export.h> instead of <linux/module.h>
> and are available in the git repository at:
>   git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
> 
> Alexander Duyck (5):
>   igb: Remove logic that was doing NUMA pseudo-aware allocations
>   igb: Change Tx cleanup loop to do/while instead of for
>   igb: Change how we populate the RSS indirection table
>   igb: Simplify how we populate the RSS key
>   igb: Use dma_unmap_addr and dma_unmap_len defines
> 
> Carolyn Wyborny (1):
>   igb: Fix stats output on i210/i211 parts.
> 
> Stefan Assmann (1):
>   igb: Change how we check for pre-existing and assigned VFs

Pulled, thanks Jeff.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [net-next 0/7][pull request] Intel Wired LAN Driver Updates
@ 2012-11-28 13:06 Jeff Kirsher
  2012-11-28 16:05 ` David Miller
  0 siblings, 1 reply; 21+ messages in thread
From: Jeff Kirsher @ 2012-11-28 13:06 UTC (permalink / raw)
  To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann

This series contains updates to igb, igbvf and ixgbe.

The following are changes since commit 03f52a0a554210d5049eeed9f1bb29047dc807cb:
  ip6mr: Add sizeof verification to MRT6_ASSERT and MT6_PIM
and are available in the git repository at:
  git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master

Alexander Duyck (1):
  ixgbe: Drop RLPML configuration from x540 RXDCTL register
    configuration

Don Skidmore (1):
  ixgbe: bump version number

Greg Rose (1):
  ixgbe: Make the bridge mode setting sticky

Matthew Vick (1):
  igb: Use a 32-bit mask when calculating the flow control watermarks

Mitch A Williams (2):
  igbvf: work around i350 erratum
  igbvf: update version number

Neerav Parikh (1):
  ixgbe: Fix incorrect disabling of Tx hang check in case of PFC

 drivers/net/ethernet/intel/igb/igb_main.c      |  5 ++--
 drivers/net/ethernet/intel/igbvf/defines.h     |  1 +
 drivers/net/ethernet/intel/igbvf/igbvf.h       |  2 +-
 drivers/net/ethernet/intel/igbvf/netdev.c      | 17 +++++++++--
 drivers/net/ethernet/intel/ixgbe/ixgbe.h       |  1 +
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c  | 40 ++++++++++++--------------
 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c |  1 +
 7 files changed, 39 insertions(+), 28 deletions(-)

-- 
1.7.11.7

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [net-next 0/7][pull request] Intel Wired LAN Driver Updates
  2012-11-28 13:06 Jeff Kirsher
@ 2012-11-28 16:05 ` David Miller
  0 siblings, 0 replies; 21+ messages in thread
From: David Miller @ 2012-11-28 16:05 UTC (permalink / raw)
  To: jeffrey.t.kirsher; +Cc: netdev, gospo, sassmann

From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Wed, 28 Nov 2012 05:06:11 -0800

> This series contains updates to igb, igbvf and ixgbe.
> 
> The following are changes since commit 03f52a0a554210d5049eeed9f1bb29047dc807cb:
>   ip6mr: Add sizeof verification to MRT6_ASSERT and MT6_PIM
> and are available in the git repository at:
>   git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master

Pulled, thanks Jeff.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [net-next 0/7][pull request] Intel Wired LAN Driver Updates
@ 2014-06-03  7:45 Jeff Kirsher
  0 siblings, 0 replies; 21+ messages in thread
From: Jeff Kirsher @ 2014-06-03  7:45 UTC (permalink / raw)
  To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann

This series contains updates to e1000, igb and ixgbe.

Emil provides his version 2 fix for the detection of SFP+ capable interfaces.
In cases where the driver is loaded while there are no SFP+ modules in cage,
the interface was not being detected as SFP capable.  Resolve the issue by
identifying interfaces with no PHY type set as SFP capable which allows the
driver to detect the SFP module when the interface is brought up.  In this
version 2 of the patch, the 82599 specific check was removed since we only
have 82598 devices that are SFP capable.

Jacob removes the including of the export header in the ixgbe PTP core, since
it is not needed.  Renames igb_ptp_enable() to igb_ptp_feature_enable() to
better reflect the actual functions purpose.

Todd fixes the ethtool loopback test for i354 backplane devices since we
do not know what PHY is to be used for the devices, use MAC loopback for
ethtool tests.  Todd also sets the packet buffer size register defaults for
i210 devices.

Yongjian Xu removes the check for skb->len being negative or zero since there
is never a case where it would be zero or negative for e1000.

Manuel Schölling updates e1000 to use the time_after() helper function.

The following are changes since commit a68ab98e6c7ab0955babcdc45ca446886f3bfb25:
  fec: Include pinctrl header file
and are available in the git repository at:
  git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master

Emil Tantilov (1):
  ixgbe: fix detection of SFP+ capable interfaces

Jacob Keller (2):
  ixgbe: remove linux/export.h header from ixgbe_ptp.c
  igb: rename igb_ptp_enable to igb_ptp_feature_enable

Manuel Schölling (1):
  e1000: Use time_after() for time comparison

Todd Fujinaka (2):
  igb: use mac loopback for i354 backplane
  igb: add defaults for i210 TX/RX PBSIZE

Yongjian Xu (1):
  e1000: remove the check: skb->len<=0

 drivers/net/ethernet/intel/e1000/e1000_ethtool.c | 3 ++-
 drivers/net/ethernet/intel/e1000/e1000_main.c    | 5 -----
 drivers/net/ethernet/intel/igb/e1000_defines.h   | 3 +++
 drivers/net/ethernet/intel/igb/e1000_regs.h      | 4 ++++
 drivers/net/ethernet/intel/igb/igb_ethtool.c     | 4 ++--
 drivers/net/ethernet/intel/igb/igb_main.c        | 6 ++++++
 drivers/net/ethernet/intel/igb/igb_ptp.c         | 8 ++++----
 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c | 7 -------
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c    | 2 ++
 drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c     | 1 -
 10 files changed, 23 insertions(+), 20 deletions(-)

-- 
1.9.3

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2014-06-03  7:47 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-03-14  7:55 [net-next 0/7][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
2012-03-14  7:55 ` [net-next 1/7] ixgb: Remove unnecessary defines, use pr_debug Jeff Kirsher
2012-03-14  7:55 ` [net-next 2/7] ixgbe: Do not disable read relaxed ordering when DCA is enabled Jeff Kirsher
2012-03-14  7:55 ` [net-next 3/7] ixgbe: Replace eitr_low and eitr_high with static values in ixgbe_update_itr Jeff Kirsher
2012-03-14  7:55 ` [net-next 4/7] ixgbe: fix obvious return value bug Jeff Kirsher
2012-03-14  7:55 ` [net-next 5/7] ixgbe: use typed min/max functions where possible Jeff Kirsher
2012-03-14  7:55 ` [net-next 6/7] ixgbe: Fix race condition where RX buffer could become corrupted Jeff Kirsher
2012-03-14  7:55 ` [net-next 7/7] ixgbe: dcb: use DCB config values for FCoE traffic class on open Jeff Kirsher
2012-03-14  9:27 ` [net-next 0/7][pull request] Intel Wired LAN Driver Updates David Miller
  -- strict thread matches above, loose matches on Subject: below --
2014-06-03  7:45 Jeff Kirsher
2012-11-28 13:06 Jeff Kirsher
2012-11-28 16:05 ` David Miller
2012-09-22 10:30 Jeff Kirsher
2012-09-22 19:39 ` David Miller
2012-07-14 23:06 Jeff Kirsher
2012-07-17  6:04 ` David Miller
2012-02-11  0:08 Jeff Kirsher
2012-02-12 22:05 ` David Miller
2012-02-09 10:27 Jeff Kirsher
2012-01-03  1:50 Jeff Kirsher
2012-01-03 17:23 ` David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).