All of lore.kernel.org
 help / color / mirror / Atom feed
From: Guinan Sun <guinanx.sun@intel.com>
To: dev@dpdk.org
Cc: Jeff Guo <jia.guo@intel.com>, Zhao1 Wei <wei.zhao1@intel.com>,
	Guinan Sun <guinanx.sun@intel.com>,
	Sasha Neftin <sasha.neftin@intel.com>
Subject: [dpdk-dev] [PATCH 08/70] net/e1000/base: add i225 devices PHY type
Date: Mon, 22 Jun 2020 06:45:32 +0000	[thread overview]
Message-ID: <20200622064634.70941-9-guinanx.sun@intel.com> (raw)
In-Reply-To: <20200622064634.70941-1-guinanx.sun@intel.com>

add i225 devices PHY type. Initialization phy's
ops.read and ops.write pointers.
Add relevant MMD registers and masks for i225 devices.
Implemented GPY methods for read and write PHY registers.

Signed-off-by: Sasha Neftin <sasha.neftin@intel.com>
Signed-off-by: Guinan Sun <guinanx.sun@intel.com>
---
 drivers/net/e1000/base/e1000_defines.h |  5 ++
 drivers/net/e1000/base/e1000_hw.h      |  1 +
 drivers/net/e1000/base/e1000_phy.c     | 82 +++++++++++++++++++++++++-
 drivers/net/e1000/base/e1000_phy.h     |  6 ++
 4 files changed, 93 insertions(+), 1 deletion(-)

diff --git a/drivers/net/e1000/base/e1000_defines.h b/drivers/net/e1000/base/e1000_defines.h
index ee2ecceee..3ef1e4d32 100644
--- a/drivers/net/e1000/base/e1000_defines.h
+++ b/drivers/net/e1000/base/e1000_defines.h
@@ -986,6 +986,11 @@
 #define PHY_1000T_STATUS	0x0A /* 1000Base-T Status Reg */
 #define PHY_EXT_STATUS		0x0F /* Extended Status Reg */
 
+/* PHY GPY 211 registers */
+#define STANDARD_AN_REG_MASK	0x0007 /* MMD */
+#define ANEG_MULTIGBT_AN_CTRL	0x0020 /* MULTI GBT AN Control Register */
+#define MMD_DEVADDR_SHIFT	16     /* Shift MMD to higher bits */
+#define CR_2500T_FD_CAPS	0x0080 /* Advertise 2500T FD capability */
 #define PHY_CONTROL_LB		0x4000 /* PHY Loopback bit */
 
 /* NVM Control */
diff --git a/drivers/net/e1000/base/e1000_hw.h b/drivers/net/e1000/base/e1000_hw.h
index b6822991f..76b4dd5c1 100644
--- a/drivers/net/e1000/base/e1000_hw.h
+++ b/drivers/net/e1000/base/e1000_hw.h
@@ -273,6 +273,7 @@ enum e1000_phy_type {
 	e1000_phy_82580,
 	e1000_phy_vf,
 	e1000_phy_i210,
+	e1000_phy_i225,
 };
 
 enum e1000_bus_type {
diff --git a/drivers/net/e1000/base/e1000_phy.c b/drivers/net/e1000/base/e1000_phy.c
index 956c06747..23805ba7d 100644
--- a/drivers/net/e1000/base/e1000_phy.c
+++ b/drivers/net/e1000/base/e1000_phy.c
@@ -1841,6 +1841,9 @@ s32 e1000_phy_force_speed_duplex_m88(struct e1000_hw *hw)
 			case M88E1543_E_PHY_ID:
 			case M88E1512_E_PHY_ID:
 			case I210_I_PHY_ID:
+			/* fall-through */
+			case I225_I_PHY_ID:
+			/* fall-through */
 				reset_dsp = false;
 				break;
 			default:
@@ -1882,6 +1885,8 @@ s32 e1000_phy_force_speed_duplex_m88(struct e1000_hw *hw)
 		return E1000_SUCCESS;
 	if (hw->phy.id == I210_I_PHY_ID)
 		return E1000_SUCCESS;
+	if (hw->phy.id == I225_I_PHY_ID)
+		return E1000_SUCCESS;
 	if ((hw->phy.id == M88E1543_E_PHY_ID) ||
 	    (hw->phy.id == M88E1512_E_PHY_ID))
 		return E1000_SUCCESS;
@@ -2409,7 +2414,7 @@ s32 e1000_get_cable_length_m88(struct e1000_hw *hw)
 s32 e1000_get_cable_length_m88_gen2(struct e1000_hw *hw)
 {
 	struct e1000_phy_info *phy = &hw->phy;
-	s32 ret_val;
+	s32 ret_val  = 0;
 	u16 phy_data, phy_data2, is_cm;
 	u16 index, default_page;
 
@@ -2437,6 +2442,11 @@ s32 e1000_get_cable_length_m88_gen2(struct e1000_hw *hw)
 		phy->max_cable_length = phy_data / (is_cm ? 100 : 1);
 		phy->cable_length = phy_data / (is_cm ? 100 : 1);
 		break;
+	case I225_I_PHY_ID:
+		if (ret_val)
+			return ret_val;
+		/* TODO - complete with Foxville data */
+		break;
 	case M88E1543_E_PHY_ID:
 	case M88E1512_E_PHY_ID:
 	case M88E1340M_E_PHY_ID:
@@ -3016,6 +3026,9 @@ enum e1000_phy_type e1000_get_phy_type_from_id(u32 phy_id)
 	case I210_I_PHY_ID:
 		phy_type = e1000_phy_i210;
 		break;
+	case I225_I_PHY_ID:
+		phy_type = e1000_phy_i225;
+		break;
 	default:
 		phy_type = e1000_phy_unknown;
 		break;
@@ -4073,6 +4086,73 @@ s32 e1000_read_phy_reg_gs40g(struct e1000_hw *hw, u32 offset, u16 *data)
 	return ret_val;
 }
 
+/**
+ *  e1000_write_phy_reg_gpy - Write GPY PHY register
+ *  @hw: pointer to the HW structure
+ *  @offset: register offset to write to
+ *  @data: data to write at register offset
+ *
+ *  Acquires semaphore, if necessary, then writes the data to PHY register
+ *  at the offset.  Release any acquired semaphores before exiting.
+ **/
+s32 e1000_write_phy_reg_gpy(struct e1000_hw *hw, u32 offset, u16 data)
+{
+	s32 ret_val;
+	u8 dev_addr = (offset & GPY_MMD_MASK) >> GPY_MMD_SHIFT;
+
+	DEBUGFUNC("e1000_write_phy_reg_gpy");
+
+	offset = offset & GPY_REG_MASK;
+
+	if (!dev_addr) {
+		ret_val = hw->phy.ops.acquire(hw);
+		if (ret_val)
+			return ret_val;
+		ret_val = e1000_write_phy_reg_mdic(hw, offset, data);
+		if (ret_val)
+			return ret_val;
+		hw->phy.ops.release(hw);
+	} else {
+		ret_val = e1000_write_xmdio_reg(hw, (u16)offset, dev_addr,
+						data);
+	}
+	return ret_val;
+}
+
+/**
+ *  e1000_read_phy_reg_gpy - Read GPY PHY register
+ *  @hw: pointer to the HW structure
+ *  @offset: lower half is register offset to read to
+ *     upper half is MMD to use.
+ *  @data: data to read at register offset
+ *
+ *  Acquires semaphore, if necessary, then reads the data in the PHY register
+ *  at the offset.  Release any acquired semaphores before exiting.
+ **/
+s32 e1000_read_phy_reg_gpy(struct e1000_hw *hw, u32 offset, u16 *data)
+{
+	s32 ret_val;
+	u8 dev_addr = (offset & GPY_MMD_MASK) >> GPY_MMD_SHIFT;
+
+	DEBUGFUNC("e1000_read_phy_reg_gpy");
+
+	offset = offset & GPY_REG_MASK;
+
+	if (!dev_addr) {
+		ret_val = hw->phy.ops.acquire(hw);
+		if (ret_val)
+			return ret_val;
+		ret_val = e1000_read_phy_reg_mdic(hw, offset, data);
+		if (ret_val)
+			return ret_val;
+		hw->phy.ops.release(hw);
+	} else {
+		ret_val = e1000_read_xmdio_reg(hw, (u16)offset, dev_addr,
+					       data);
+	}
+	return ret_val;
+}
+
 /**
  *  e1000_read_phy_reg_mphy - Read mPHY control register
  *  @hw: pointer to the HW structure
diff --git a/drivers/net/e1000/base/e1000_phy.h b/drivers/net/e1000/base/e1000_phy.h
index 2c71e64c8..05a1d27ff 100644
--- a/drivers/net/e1000/base/e1000_phy.h
+++ b/drivers/net/e1000/base/e1000_phy.h
@@ -86,6 +86,8 @@ s32  e1000_phy_force_speed_duplex_82577(struct e1000_hw *hw);
 s32  e1000_get_cable_length_82577(struct e1000_hw *hw);
 s32  e1000_write_phy_reg_gs40g(struct e1000_hw *hw, u32 offset, u16 data);
 s32  e1000_read_phy_reg_gs40g(struct e1000_hw *hw, u32 offset, u16 *data);
+s32  e1000_write_phy_reg_gpy(struct e1000_hw *hw, u32 offset, u16 data);
+s32  e1000_read_phy_reg_gpy(struct e1000_hw *hw, u32 offset, u16 *data);
 s32 e1000_read_phy_reg_mphy(struct e1000_hw *hw, u32 address, u32 *data);
 s32 e1000_write_phy_reg_mphy(struct e1000_hw *hw, u32 address, u32 data,
 			     bool line_override);
@@ -115,6 +117,10 @@ bool e1000_is_mphy_ready(struct e1000_hw *hw);
 #define GS40G_MAC_SPEED_1G		0X0006
 #define GS40G_COPPER_SPEC		0x0010
 
+/* GPY211 - I225 defines */
+#define GPY_MMD_MASK			0xFFFF0000
+#define GPY_MMD_SHIFT			16
+#define GPY_REG_MASK			0x0000FFFF
 /* BM/HV Specific Registers */
 #define BM_PORT_CTRL_PAGE		769
 #define BM_WUC_PAGE			800
-- 
2.17.1


  parent reply	other threads:[~2020-06-22  7:06 UTC|newest]

Thread overview: 149+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-22  6:45 [dpdk-dev] [PATCH 00/70] update e1000 base code Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 01/70] net/e1000/base: i210 slow system clock update Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 02/70] net/e1000/base: add initial support for Foxville Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 03/70] net/e1000/base: add ICL device id's Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 04/70] net/e1000/base: remove shadowing variable declarations Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 05/70] net/e1000/base: introduce flag Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 06/70] net/e1000/base: modify MAC initialization Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 07/70] net/e1000/base: modify flash presence for i225 devices Guinan Sun
2020-06-22  6:45 ` Guinan Sun [this message]
2020-06-22  6:45 ` [dpdk-dev] [PATCH 09/70] net/e1000/base: expose xmdio methods Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 10/70] net/e1000/base: modify negotiation advertisement Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 11/70] net/e1000/base: fall through explicitly Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 12/70] net/e1000/base: add function parameter descriptions Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 13/70] net/e1000/base: modify klocwork errors Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 14/70] net/e1000/base: add 2.5G speed advertisement Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 15/70] net/e1000/base: setup copper link function for i225 Guinan Sun
2020-06-23  2:22   ` Zhao1, Wei
2020-06-22  6:45 ` [dpdk-dev] [PATCH 16/70] net/e1000/base: implement Low-Power-Link-Up (LPLU) " Guinan Sun
2020-06-23  2:23   ` Zhao1, Wei
2020-06-22  6:45 ` [dpdk-dev] [PATCH 17/70] net/e1000/base: add new wakeup/proxy registers " Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 18/70] net/e1000/base: modify klockwork about unused return values Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 19/70] net/e1000/base: improve coding style Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 20/70] net/e1000/base: modify HW level time sync mechanisms Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 21/70] net/e1000/base: modify description Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 22/70] net/e1000/base: add EEE support for i225 Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 23/70] net/e1000/base: remove duplicated codes from 82575 Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 24/70] net/e1000/base: add info structure Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 25/70] net/e1000/base: wrap the e1000 defines.h Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 26/70] net/e1000/base: wrap the e1000 regs.h file Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 27/70] net/e1000/base: cleanup duplicate declaration Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 28/70] net/e1000/base: modify wrapper for registers and definitions Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 29/70] net/e1000/base: more function name cleanup Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 30/70] net/e1000/base: expose EEE defines Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 31/70] net/e1000/base: expose the manage functionality Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 32/70] net/e1000/base: modify the wrong return value Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 33/70] net/e1000/base: wrap the unneeded code Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 34/70] net/e1000/base: clean family specific functions from base Guinan Sun
2020-06-22  6:45 ` [dpdk-dev] [PATCH 35/70] net/e1000/base: expose more time synchronization registers Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 36/70] net/e1000/base: add define to PCIm function state Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 37/70] net/e1000/base: add missing register defines Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 38/70] net/e1000/base: move the device reset definition Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 39/70] net/e1000/base: increased timeout for ME ULP exit Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 40/70] net/e1000/base: add missing device ID Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 41/70] net/e1000/base: add Foxville device IDs Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 42/70] net/e1000/base: expose more future extended NVM Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 43/70] net/e1000/base: add definition of EEE 2.5G setup register Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 44/70] net/e1000/base: add FXVL's Blank NVM device ID Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 45/70] net/e1000/base: remove useless statement Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 46/70] net/e1000/base: add missed define for VFTA Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 47/70] net/e1000/base: modify flow control setup Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 48/70] net/e1000/base: support I225 update NVM flow Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 49/70] net/e1000/base: led blinking fix for i210 Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 50/70] net/e1000/base: clean up dead code Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 51/70] net/e1000/base: expose new FEXTNVM registers and masks Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 52/70] net/e1000/base: cleanup duplicate defines Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 53/70] net/e1000/base: add WUC registers and defines Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 54/70] net/e1000/base: correct PHY power up flow for i225 Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 55/70] net/e1000/base: add support for Nahum10 Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 56/70] net/e1000/base: add fall-through comments for switch cases Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 57/70] net/e1000/base: add EEE functions and defines for IGC Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 58/70] net/e1000/base: add PHY power management control Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 59/70] net/e1000/base: introduce DPGFR register Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 60/70] net/e1000/base: add new device IDs for Foxville B2 Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 61/70] net/e1000/base: add address and queue select Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 62/70] net/e1000/base: introduce IEEE PHY ID mask Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 63/70] net/e1000/base: modify VLAN names Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 64/70] net/e1000/base: add EEE set function to share code API Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 65/70] net/e1000/base: add defines for source address filters Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 66/70] net/e1000/base: add LPI counters Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 67/70] net/e1000/base: remove conditional compilation wrapper Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 68/70] net/e1000/base: modify copyright Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 69/70] net/e1000/base: update version Guinan Sun
2020-06-22  6:46 ` [dpdk-dev] [PATCH 70/70] net/e1000/base: resolve core dump Guinan Sun
2020-06-24  7:52 ` [dpdk-dev] [PATCH v2 00/42] update e1000 base code Guinan Sun
2020-06-24  7:52   ` [dpdk-dev] [PATCH v2 01/42] net/e1000/base: resolve flash presence for i210 devices Guinan Sun
2020-06-29  3:29     ` Yang, Qiming
2020-06-24  7:52   ` [dpdk-dev] [PATCH v2 02/42] net/e1000/base: i210 slow system clock update Guinan Sun
2020-06-24  7:52   ` [dpdk-dev] [PATCH v2 03/42] net/e1000/base: add ICL device id's Guinan Sun
2020-06-24  7:52   ` [dpdk-dev] [PATCH v2 04/42] net/e1000/base: remove shadowing variable declarations Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 05/42] net/e1000/base: introduce flags Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 06/42] net/e1000/base: modify MAC initialization for i211 Guinan Sun
2020-06-29  3:30     ` Yang, Qiming
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 07/42] net/e1000/base: modify parens to match other MAC checks Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 08/42] net/e1000/base: expose xmdio methods Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 09/42] net/e1000/base: fall through explicitly Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 10/42] net/e1000/base: add function parameter descriptions Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 11/42] net/e1000/base: modify fall through code comments Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 12/42] net/e1000/base: modify klocwork errors Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 13/42] net/e1000/base: modify klockwork about unused return values Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 14/42] net/e1000/base: improve coding style Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 15/42] net/e1000/base: modify HW level time sync mechanisms Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 16/42] net/e1000/base: modify description Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 17/42] net/e1000/base: remove duplicated codes from 82575 Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 18/42] net/e1000/base: add definitions for ETQF register bit Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 19/42] net/e1000/base: cleanup duplicate declaration Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 20/42] net/e1000/base: expose MAC functions Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 21/42] net/e1000/base: move definitions from 82575 to defines file Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 22/42] net/e1000/base: add define to PCIm function state Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 23/42] net/e1000/base: add missing register defines Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 24/42] net/e1000/base: move the device reset definition Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 25/42] net/e1000/base: increased timeout for ME ULP exit Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 26/42] net/e1000/base: add missing device ID Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 27/42] net/e1000/base: expose more future extended NVM Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 28/42] net/e1000/base: add definition of EEE 2.5G setup register Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 29/42] net/e1000/base: remove definitions Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 30/42] net/e1000/base: remove useless statement Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 31/42] net/e1000/base: add missed define for VFTA Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 32/42] net/e1000/base: modify flow control setup Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 33/42] net/e1000/base: led blinking fix for i210 Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 34/42] net/e1000/base: expose new FEXTNVM registers and masks Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 35/42] net/e1000/base: cleanup duplicate defines Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 36/42] net/e1000/base: add support for Nahum10 Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 37/42] net/e1000/base: add fall-through comments for switch cases Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 38/42] net/e1000/base: modify typo in Alder Lake brand name Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 39/42] net/e1000/base: introduce DPGFR register Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 40/42] net/e1000/base: remove conditional compilation wrapper Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 41/42] net/e1000/base: modify copyright Guinan Sun
2020-06-24  7:53   ` [dpdk-dev] [PATCH v2 42/42] net/e1000/base: update version Guinan Sun
2020-06-28  1:28   ` [dpdk-dev] [PATCH v2 00/42] update e1000 base code Zhao1, Wei
2020-07-06  8:11 ` [dpdk-dev] [PATCH v3 00/27] " Guinan Sun
2020-07-06  8:11   ` [dpdk-dev] [PATCH v3 01/27] net/e1000/base: i210 slow system clock update Guinan Sun
2020-07-06  8:11   ` [dpdk-dev] [PATCH v3 02/27] net/e1000/base: add ICL device ID Guinan Sun
2020-07-06  8:11   ` [dpdk-dev] [PATCH v3 03/27] net/e1000/base: introduce flags Guinan Sun
2020-07-06  8:11   ` [dpdk-dev] [PATCH v3 04/27] net/e1000/base: add support for i211 Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 05/27] net/e1000/base: expose xmdio methods Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 06/27] net/e1000/base: fall through explicitly Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 07/27] net/e1000/base: add function parameter descriptions Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 08/27] net/e1000/base: improve code style and fix klocwork errors Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 09/27] net/e1000/base: modify HW level time sync mechanisms Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 10/27] net/e1000/base: remove duplicated codes Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 11/27] net/e1000/base: expose MAC functions Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 12/27] net/e1000/base: add define to PCIm function state Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 13/27] net/e1000/base: add missing register defines Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 14/27] net/e1000/base: increased timeout for ME ULP exit Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 15/27] net/e1000/base: add missing device ID Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 16/27] net/e1000/base: expose more future extended NVM Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 17/27] net/e1000/base: remove useless statement Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 18/27] net/e1000/base: add missed define for VFTA Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 19/27] net/e1000/base: modify flow control setup Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 20/27] net/e1000/base: led blinking fix for i210 Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 21/27] net/e1000/base: expose new FEXTNVM registers and masks Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 22/27] net/e1000/base: add support for Nahum10 Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 23/27] net/e1000/base: add ADL device ID Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 24/27] net/e1000/base: introduce DPGFR register Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 25/27] net/e1000/base: cleanup pre-processor tags Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 26/27] net/e1000/base: modify copyright Guinan Sun
2020-07-06  8:12   ` [dpdk-dev] [PATCH v3 27/27] net/e1000/base: update version Guinan Sun
2020-07-07  2:52   ` [dpdk-dev] [PATCH v3 00/27] update e1000 base code Zhao1, Wei
2020-07-07  3:26     ` Zhang, Qi Z

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=20200622064634.70941-9-guinanx.sun@intel.com \
    --to=guinanx.sun@intel.com \
    --cc=dev@dpdk.org \
    --cc=jia.guo@intel.com \
    --cc=sasha.neftin@intel.com \
    --cc=wei.zhao1@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.