DPDK patches and discussions
 help / color / mirror / Atom feed
From: Beilei Xing <beilei.xing@intel.com>
To: helin.zhang@intel.com
Cc: dev@dpdk.org, Beilei Xing <beilei.xing@intel.com>
Subject: [dpdk-dev] [PATCH 09/29] ixgbe/base: add link mac setup for x550a SFP+
Date: Fri,  6 May 2016 14:07:21 +0800	[thread overview]
Message-ID: <1462514861-29419-10-git-send-email-beilei.xing@intel.com> (raw)
In-Reply-To: <1462514861-29419-1-git-send-email-beilei.xing@intel.com>

This patch updates ixgbe_setup_mac_link_sfp_x550a for x550 SFP+.
ixgbe_set_lan_id_multi_port_pcie has been updated to set the MAC
instance(0/1) which is needed when configuring the external PHY,
since x550a has two instances of MGPK. The MAC instance is read
from the EEPROM.

Signed-off-by: Beilei Xing <beilei.xing@intel.com>
---
 drivers/net/ixgbe/base/ixgbe_common.c | 13 +++++-
 drivers/net/ixgbe/base/ixgbe_phy.h    |  3 ++
 drivers/net/ixgbe/base/ixgbe_type.h   |  8 ++++
 drivers/net/ixgbe/base/ixgbe_x550.c   | 85 ++++++++++++++++++++++++++---------
 4 files changed, 86 insertions(+), 23 deletions(-)

diff --git a/drivers/net/ixgbe/base/ixgbe_common.c b/drivers/net/ixgbe/base/ixgbe_common.c
index ec61408..82a8416 100644
--- a/drivers/net/ixgbe/base/ixgbe_common.c
+++ b/drivers/net/ixgbe/base/ixgbe_common.c
@@ -1020,13 +1020,15 @@ s32 ixgbe_get_bus_info_generic(struct ixgbe_hw *hw)
  *  ixgbe_set_lan_id_multi_port_pcie - Set LAN id for PCIe multiple port devices
  *  @hw: pointer to the HW structure
  *
- *  Determines the LAN function id by reading memory-mapped registers
- *  and swaps the port value if requested.
+ *  Determines the LAN function id by reading memory-mapped registers and swaps
+ *  the port value if requested, and set MAC instance for devices that share
+ *  CS4227.
  **/
 void ixgbe_set_lan_id_multi_port_pcie(struct ixgbe_hw *hw)
 {
 	struct ixgbe_bus_info *bus = &hw->bus;
 	u32 reg;
+	u16 ee_ctrl_4;
 
 	DEBUGFUNC("ixgbe_set_lan_id_multi_port_pcie");
 
@@ -1038,6 +1040,13 @@ void ixgbe_set_lan_id_multi_port_pcie(struct ixgbe_hw *hw)
 	reg = IXGBE_READ_REG(hw, IXGBE_FACTPS_BY_MAC(hw));
 	if (reg & IXGBE_FACTPS_LFS)
 		bus->func ^= 0x1;
+
+	/* Get MAC instance from EEPROM for configuring CS4227 */
+	if (hw->device_id == IXGBE_DEV_ID_X550EM_A_SFP) {
+		hw->eeprom.ops.read(hw, IXGBE_EEPROM_CTRL_4, &ee_ctrl_4);
+		bus->instance_id = (ee_ctrl_4 & IXGBE_EE_CTRL_4_INST_ID) >>
+			IXGBE_EE_CTRL_4_INST_ID_SHIFT;
+	}
 }
 
 /**
diff --git a/drivers/net/ixgbe/base/ixgbe_phy.h b/drivers/net/ixgbe/base/ixgbe_phy.h
index 1a5affe..281f9fa 100644
--- a/drivers/net/ixgbe/base/ixgbe_phy.h
+++ b/drivers/net/ixgbe/base/ixgbe_phy.h
@@ -89,8 +89,11 @@ POSSIBILITY OF SUCH DAMAGE.
 
 #define IXGBE_CS4227			0xBE	/* CS4227 address */
 #define IXGBE_CS4227_GLOBAL_ID_LSB	0
+#define IXGBE_CS4227_GLOBAL_ID_MSB	1
 #define IXGBE_CS4227_SCRATCH		2
 #define IXGBE_CS4227_GLOBAL_ID_VALUE	0x03E5
+#define IXGBE_CS4223_PHY_ID		0x7003/* Quad port */
+#define IXGBE_CS4227_PHY_ID		0x3003/* Dual port */
 #define IXGBE_CS4227_RESET_PENDING	0x1357
 #define IXGBE_CS4227_RESET_COMPLETE	0x5AA5
 #define IXGBE_CS4227_RETRIES		15
diff --git a/drivers/net/ixgbe/base/ixgbe_type.h b/drivers/net/ixgbe/base/ixgbe_type.h
index 7bd6f2c..0a35891 100644
--- a/drivers/net/ixgbe/base/ixgbe_type.h
+++ b/drivers/net/ixgbe/base/ixgbe_type.h
@@ -1472,6 +1472,7 @@ struct ixgbe_dmac_config {
 #define IXGBE_CORECTL_WRITE_CMD		0x00010000
 
 /* Device Type definitions for new protocol MDIO commands */
+#define IXGBE_MDIO_ZERO_DEV_TYPE		0x0
 #define IXGBE_MDIO_PMA_PMD_DEV_TYPE		0x1
 #define IXGBE_MDIO_PCS_DEV_TYPE			0x3
 #define IXGBE_MDIO_PHY_XS_DEV_TYPE		0x4
@@ -2247,6 +2248,9 @@ enum {
 #define IXGBE_PBANUM_PTR_GUARD		0xFAFA
 #define IXGBE_EEPROM_CHECKSUM		0x3F
 #define IXGBE_EEPROM_SUM		0xBABA
+#define IXGBE_EEPROM_CTRL_4		0x45
+#define IXGBE_EE_CTRL_4_INST_ID		0x10
+#define IXGBE_EE_CTRL_4_INST_ID_SHIFT	4
 #define IXGBE_PCIE_ANALOG_PTR		0x03
 #define IXGBE_ATLAS0_CONFIG_PTR		0x04
 #define IXGBE_PHY_PTR			0x04
@@ -3630,6 +3634,7 @@ struct ixgbe_bus_info {
 
 	u16 func;
 	u16 lan_id;
+	u16 instance_id;
 };
 
 /* Flow control parameters */
@@ -4130,5 +4135,8 @@ struct ixgbe_hw {
 
 #define IXGBE_NW_MNG_IF_SEL		0x00011178
 #define IXGBE_NW_MNG_IF_SEL_INT_PHY_MODE (1 << 24)
+#define IXGBE_NW_MNG_IF_SEL_MDIO_PHY_ADD_SHIFT 3
+#define IXGBE_NW_MNG_IF_SEL_MDIO_PHY_ADD	\
+		(0x1F << IXGBE_NW_MNG_IF_SEL_MDIO_PHY_ADD_SHIFT)
 
 #endif /* _IXGBE_TYPE_H_ */
diff --git a/drivers/net/ixgbe/base/ixgbe_x550.c b/drivers/net/ixgbe/base/ixgbe_x550.c
index 1ae79f5..0bb3436 100644
--- a/drivers/net/ixgbe/base/ixgbe_x550.c
+++ b/drivers/net/ixgbe/base/ixgbe_x550.c
@@ -1550,7 +1550,8 @@ void ixgbe_init_mac_link_ops_X550em(struct ixgbe_hw *hw)
 		mac->ops.setup_link = ixgbe_setup_mac_link_multispeed_fiber;
 		mac->ops.set_rate_select_speed =
 					ixgbe_set_soft_rate_select_speed;
-		if (hw->device_id == IXGBE_DEV_ID_X550EM_A_SFP_N)
+		if ((hw->device_id == IXGBE_DEV_ID_X550EM_A_SFP_N) ||
+		    (hw->device_id == IXGBE_DEV_ID_X550EM_A_SFP))
 			mac->ops.setup_mac_link =
 				ixgbe_setup_mac_link_sfp_x550a;
 		else
@@ -2206,8 +2207,9 @@ s32 ixgbe_setup_mac_link_sfp_x550a(struct ixgbe_hw *hw,
 				   bool autoneg_wait_to_complete)
 {
 	s32 ret_val;
-	u32 reg_val;
+	u16 reg_phy_ext;
 	bool setup_linear = false;
+	u32 reg_slice, reg_phy_int, slice_offset;
 
 	UNREFERENCED_1PARAMETER(autoneg_wait_to_complete);
 
@@ -2223,32 +2225,73 @@ s32 ixgbe_setup_mac_link_sfp_x550a(struct ixgbe_hw *hw,
 	if (ret_val != IXGBE_SUCCESS)
 		return ret_val;
 
-	/* Configure internal PHY for native SFI */
-	ret_val = hw->mac.ops.read_iosf_sb_reg(hw,
-		       IXGBE_KRM_AN_CNTL_8(hw->bus.lan_id),
-		       IXGBE_SB_IOSF_TARGET_KR_PHY, &reg_val);
+	if (hw->device_id == IXGBE_DEV_ID_X550EM_A_SFP_N) {
+		/* Configure internal PHY for native SFI */
+		ret_val = hw->mac.ops.read_iosf_sb_reg(hw,
+			       IXGBE_KRM_AN_CNTL_8(hw->bus.lan_id),
+			       IXGBE_SB_IOSF_TARGET_KR_PHY, &reg_phy_int);
 
-	if (ret_val != IXGBE_SUCCESS)
-		return ret_val;
+		if (ret_val != IXGBE_SUCCESS)
+			return ret_val;
+
+		if (setup_linear) {
+			reg_phy_int &= ~IXGBE_KRM_AN_CNTL_8_LIMITING;
+			reg_phy_int |= IXGBE_KRM_AN_CNTL_8_LINEAR;
+		} else {
+			reg_phy_int |= IXGBE_KRM_AN_CNTL_8_LIMITING;
+			reg_phy_int &= ~IXGBE_KRM_AN_CNTL_8_LINEAR;
+		}
+
+		ret_val = hw->mac.ops.write_iosf_sb_reg(hw,
+				IXGBE_KRM_AN_CNTL_8(hw->bus.lan_id),
+				IXGBE_SB_IOSF_TARGET_KR_PHY, reg_phy_int);
 
-	if (setup_linear) {
-		reg_val &= ~IXGBE_KRM_AN_CNTL_8_LIMITING;
-		reg_val |= IXGBE_KRM_AN_CNTL_8_LINEAR;
+		if (ret_val != IXGBE_SUCCESS)
+			return ret_val;
+
+		/* Setup XFI/SFI internal link. */
+		ret_val = ixgbe_setup_ixfi_x550em(hw, &speed);
 	} else {
-		reg_val |= IXGBE_KRM_AN_CNTL_8_LIMITING;
-		reg_val &= ~IXGBE_KRM_AN_CNTL_8_LINEAR;
-	}
+		/* Configure internal PHY for KR/KX. */
+		ixgbe_setup_kr_speed_x550em(hw, speed);
 
-	ret_val = hw->mac.ops.write_iosf_sb_reg(hw,
-			IXGBE_KRM_AN_CNTL_8(hw->bus.lan_id),
-			IXGBE_SB_IOSF_TARGET_KR_PHY, reg_val);
+		/* Get CS4227 MDIO address */
+		hw->phy.addr =
+			(hw->phy.nw_mng_if_sel &
+			 IXGBE_NW_MNG_IF_SEL_MDIO_PHY_ADD)
+			>> IXGBE_NW_MNG_IF_SEL_MDIO_PHY_ADD_SHIFT;
 
-	if (ret_val != IXGBE_SUCCESS)
-		return ret_val;
+		if (hw->phy.addr == 0x0 || hw->phy.addr == 0xFFFF) {
+			/* Find Address */
+			DEBUGOUT("Invalid NW_MNG_IF_SEL.MDIO_PHY_ADD value\n");
+			return IXGBE_ERR_PHY_ADDR_INVALID;
+		}
+
+		/* Get external PHY device id */
+		ret_val = hw->phy.ops.read_reg(hw, IXGBE_CS4227_GLOBAL_ID_MSB,
+				       IXGBE_MDIO_ZERO_DEV_TYPE, &reg_phy_ext);
 
-	/* Setup XFI/SFI internal link. */
-	ret_val = ixgbe_setup_ixfi_x550em(hw, &speed);
+		if (ret_val != IXGBE_SUCCESS)
+			return ret_val;
 
+		/* When configuring quad port CS4223, the MAC instance is part
+		 * of the slice offset.
+		 */
+		if (reg_phy_ext == IXGBE_CS4223_PHY_ID)
+			slice_offset = (hw->bus.lan_id +
+					(hw->bus.instance_id << 1)) << 12;
+		else
+			slice_offset = hw->bus.lan_id << 12;
+
+		/* Configure CS4227/CS4223 LINE side to proper mode. */
+		reg_slice = IXGBE_CS4227_LINE_SPARE24_LSB + slice_offset;
+		if (setup_linear)
+			reg_phy_ext = (IXGBE_CS4227_EDC_MODE_CX1 << 1) | 0x1;
+		else
+			reg_phy_ext = (IXGBE_CS4227_EDC_MODE_SR << 1) | 0x1;
+		ret_val = hw->phy.ops.write_reg(hw, reg_slice,
+					IXGBE_MDIO_ZERO_DEV_TYPE, reg_phy_ext);
+	}
 	return ret_val;
 }
 
-- 
2.5.0

  parent reply	other threads:[~2016-05-06  6:08 UTC|newest]

Thread overview: 142+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-06  6:07 [dpdk-dev] [PATCH 00/29] ixgbe/base: update base driver Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 01/29] ixgbe/base: add new VF requests for mailbox API Beilei Xing
2016-05-19  7:41   ` Gu, YongjieX
2016-05-06  6:07 ` [dpdk-dev] [PATCH 02/29] ixgbe/base: add sgmii link for X550 Beilei Xing
2016-06-13 16:27   ` Ferruh Yigit
2016-05-06  6:07 ` [dpdk-dev] [PATCH 03/29] ixgbe/base: fix problematic return value Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 04/29] ixgbe/base: add mac link setup for x550a SFP Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 05/29] ixgbe/base: fix checksum error of checking PHY token Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 06/29] ixgbe/base: refactor eee setup for x550 Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 07/29] ixgbe/base: change access method Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 08/29] ixgbe/base: add KR support for X550EM_A devices Beilei Xing
2016-05-06  6:07 ` Beilei Xing [this message]
2016-05-06  6:07 ` [dpdk-dev] [PATCH 10/29] ixgbe/base: clear stale pool mappings Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 11/29] ixgbe/base: rename macro of TDL Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 12/29] ixgbe/base: fix error path to release lock Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 13/29] ixgbe/base: refactor NW management interface ops Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 14/29] ixgbe/base: fix for code style Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 15/29] ixgbe/base: fix firmware commands on x550em_a Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 16/29] ixgbe/base: add new phy definitions Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 17/29] ixgbe/base: change device IDs Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 18/29] ixgbe/base: update swfw semaphore function Beilei Xing
2016-06-13 16:26   ` Ferruh Yigit
2016-06-13 16:28   ` Ferruh Yigit
2016-05-06  6:07 ` [dpdk-dev] [PATCH 19/29] ixgbe/base: fix register access error Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 20/29] ixgbe/base: limit PHY token accessing to MDIO only Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 21/29] ixgbe/base: smplify add/remove VLANs Beilei Xing
2016-06-13 16:26   ` Ferruh Yigit
2016-05-06  6:07 ` [dpdk-dev] [PATCH 22/29] ixgbe/base: add bypassing VLVF Beilei Xing
2016-06-13 14:46   ` Ferruh Yigit
2016-05-06  6:07 ` [dpdk-dev] [PATCH 23/29] ixgbe/base: unify coding style Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 24/29] ixgbe/base: use u8 to replace u16 for a variable Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 25/29] ixgbe/base: fix endianness issues Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 26/29] ixgbe/base: allow setting mac anti spoofing per vf Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 27/29] ixgbe/base: add flow control autoneg for x550a Beilei Xing
2016-05-06  6:07 ` [dpdk-dev] [PATCH 28/29] ixgbe/base: define if enable crosstalk work around Beilei Xing
2016-06-13 16:27   ` Ferruh Yigit
2016-05-06  6:07 ` [dpdk-dev] [PATCH 29/29] ixgbe/base: update README Beilei Xing
2016-06-13 16:28   ` Ferruh Yigit
2016-06-14  1:00     ` Xing, Beilei
2016-06-06  1:24 ` [dpdk-dev] [PATCH 00/29] ixgbe/base: update base driver Zhang, Helin
2016-06-14  6:59 ` [dpdk-dev] [PATCH v2 00/30] " Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 01/30] ixgbe/base: add new VF requests for mailbox API Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 02/30] ixgbe/base: add sgmii link for X550 Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 03/30] ixgbe/base: fix problematic return value Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 04/30] ixgbe/base: add mac link setup for x550a SFP Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 05/30] ixgbe/base: fix checksum error of checking PHY token Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 06/30] ixgbe/base: refactor eee setup for x550 Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 07/30] ixgbe/base: change access method Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 08/30] ixgbe/base: add KR support for X550EM_A devices Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 09/30] ixgbe/base: add link mac setup for x550a SFP+ Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 10/30] ixgbe/base: clear stale pool mappings Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 11/30] ixgbe/base: rename macro of TDL Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 12/30] ixgbe/base: fix error path to release lock Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 13/30] ixgbe/base: fix for code style Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 14/30] ixgbe/base: fix firmware commands on x550em_a Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 15/30] ixgbe/base: refactor NW management interface ops Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 16/30] ixgbe/base: add new phy definitions Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 17/30] ixgbe/base: change device IDs Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 18/30] ixgbe/base: add function to reset swfw semaphore Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 19/30] ixgbe/base: fix possible race issue Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 20/30] ixgbe/base: fix register access error Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 21/30] ixgbe/base: limit PHY token accessing to MDIO only Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 22/30] ixgbe/base: simplify add/remove VLANs Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 23/30] ixgbe/base: add bypassing VLVF Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 24/30] ixgbe/base: unify coding style Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 25/30] ixgbe/base: use u8 to replace u16 for a variable Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 26/30] ixgbe/base: fix endianness issues Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 27/30] ixgbe/base: allow setting mac anti spoofing per vf Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 28/30] ixgbe/base: add flow control autoneg for x550a Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 29/30] ixgbe/base: define if enable crosstalk work around Beilei Xing
2016-06-14  6:59   ` [dpdk-dev] [PATCH v2 30/30] ixgbe/base: update README Beilei Xing
2016-06-14 10:36   ` [dpdk-dev] [PATCH v2 00/30] ixgbe/base: update base driver Ferruh Yigit
2016-06-14 10:54     ` Ferruh Yigit
2016-06-15  2:56       ` Xing, Beilei
2016-06-15  8:07         ` Thomas Monjalon
2016-06-15  7:53   ` [dpdk-dev] [PATCH v3 00/30] Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 01/30] ixgbe/base: add new VF requests for mailbox API Beilei Xing
2016-06-21 14:39       ` Bruce Richardson
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 02/30] ixgbe/base: add sgmii link for X550 Beilei Xing
2016-06-21 14:40       ` Bruce Richardson
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 03/30] ixgbe/base: fix problematic return value Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 04/30] ixgbe/base: add MAC link setup for X550a SFP Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 05/30] ixgbe/base: fix checksum error of checking PHY token Beilei Xing
2016-06-21 14:35       ` Bruce Richardson
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 06/30] ixgbe/base: refactor eee setup for X550 Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 07/30] ixgbe/base: change access method Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 08/30] ixgbe/base: add KR support for X550em_a devices Beilei Xing
2016-06-21 14:53       ` Bruce Richardson
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 09/30] ixgbe/base: add link MAC setup for X550a SFP+ Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 10/30] ixgbe/base: clear stale pool mappings Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 11/30] ixgbe/base: rename macro of TDL Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 12/30] ixgbe/base: fix error path to release lock Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 13/30] ixgbe/base: fix for code style Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 14/30] ixgbe/base: fix firmware commands on X550em_a Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 15/30] ixgbe/base: refactor NW management interface ops Beilei Xing
2016-06-21 16:19       ` Bruce Richardson
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 16/30] ixgbe/base: add new phy definitions Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 17/30] ixgbe/base: change device IDs Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 18/30] ixgbe/base: add function to reset swfw semaphore Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 19/30] ixgbe/base: fix possible race issue Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 20/30] ixgbe/base: fix register access error Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 21/30] ixgbe/base: limit PHY token accessing to MDIO only Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 22/30] ixgbe/base: simplify add/remove VLANs Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 23/30] ixgbe/base: add bypassing VLVF Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 24/30] ixgbe/base: unify coding style Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 25/30] ixgbe/base: use u8 to replace u16 for a variable Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 26/30] ixgbe/base: fix endianness issues Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 27/30] ixgbe/base: allow setting MAC anti spoofing per VF Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 28/30] ixgbe/base: add flow control autoneg for X550a Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 29/30] ixgbe/base: define if enable crosstalk work around Beilei Xing
2016-06-15  7:53     ` [dpdk-dev] [PATCH v3 30/30] ixgbe/base: update README Beilei Xing
2016-06-23  7:22     ` [dpdk-dev] [PATCH v4 00/29] ixgbe/base: update base driver Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 01/29] ixgbe/base: add new VF requests for mailbox API Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 02/29] ixgbe/base: add sgmii link for X550 Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 03/29] ixgbe/base: fix problematic return value Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 04/29] ixgbe/base: add MAC link setup for X550a SFP Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 05/29] ixgbe/base: fix firmware command checksum error Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 06/29] ixgbe/base: refactor eee setup for X550 Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 07/29] ixgbe/base: add KR support for X550em_a devices Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 08/29] ixgbe/base: change access method Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 09/29] ixgbe/base: add link MAC setup for X550a SFP+ Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 10/29] ixgbe/base: clear stale pool mappings Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 11/29] ixgbe/base: rename macro of TDL Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 12/29] ixgbe/base: fix error path to release lock Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 13/29] ixgbe/base: fix for code style Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 14/29] ixgbe/base: optimize internal PHY mode determination Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 15/29] ixgbe/base: add new phy definitions Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 16/29] ixgbe/base: change device IDs Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 17/29] ixgbe/base: add function to reset swfw semaphore Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 18/29] ixgbe/base: fix possible race issue Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 19/29] ixgbe/base: fix register access error Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 20/29] ixgbe/base: limit PHY token accessing to MDIO only Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 21/29] ixgbe/base: simplify add/remove VLANs Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 22/29] ixgbe/base: add bypassing VLVF Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 23/29] ixgbe/base: unify coding style Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 24/29] ixgbe/base: use u8 to replace u16 for a variable Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 25/29] ixgbe/base: fix endianness issues Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 26/29] ixgbe/base: allow setting MAC anti spoofing per VF Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 27/29] ixgbe/base: add flow control autoneg for X550a Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 28/29] ixgbe/base: define if enable crosstalk work around Beilei Xing
2016-06-23  7:22       ` [dpdk-dev] [PATCH v4 29/29] ixgbe/base: update README Beilei Xing
2016-06-27 14:20       ` [dpdk-dev] [PATCH v4 00/29] ixgbe/base: update base driver Bruce Richardson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1462514861-29419-10-git-send-email-beilei.xing@intel.com \
    --to=beilei.xing@intel.com \
    --cc=dev@dpdk.org \
    --cc=helin.zhang@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).