DPDK-dev Archive on lore.kernel.org
 help / color / Atom feed
From: Xiaolong Ye <xiaolong.ye@intel.com>
To: Beilei Xing <beilei.xing@intel.com>, Qi Zhang <qi.z.zhang@intel.com>
Cc: dev@dpdk.org, Xiaolong Ye <xiaolong.ye@intel.com>,
	Piotr Pietruszewski <piotr.pietruszewski@intel.com>
Subject: [dpdk-dev] [PATCH v4 15/36] net/i40e/base: add reading LPI counters
Date: Mon, 13 Jan 2020 10:39:27 +0800
Message-ID: <20200113023949.26718-16-xiaolong.ye@intel.com> (raw)
In-Reply-To: <20200113023949.26718-1-xiaolong.ye@intel.com>

This change introduces new function i40e_get_lpi_counters() reading
Low Power Idle (LPI) mode counters from Energy Efficient Ethernet (EEE)
statistics. Since reading EEE statistics requires running DNL script,
function i40e_aq_run_phy_activity() able to run it, was implemented.

i40e_lpi_stat_update() was introduced as helper function for retrieving
LPI counters' values relative to given offsets.

This change also fixes order of fields in struct
i40e_aqc_run_phy_activity and introduces union in the struct
providing more descriptive names of fields depending on usage
(command or response).

Signed-off-by: Piotr Pietruszewski <piotr.pietruszewski@intel.com>
Signed-off-by: Xiaolong Ye <xiaolong.ye@intel.com>
---
 drivers/net/i40e/base/i40e_adminq_cmd.h |  29 ++++--
 drivers/net/i40e/base/i40e_common.c     | 130 ++++++++++++++++++++++++
 drivers/net/i40e/base/i40e_prototype.h  |  10 ++
 3 files changed, 163 insertions(+), 6 deletions(-)

diff --git a/drivers/net/i40e/base/i40e_adminq_cmd.h b/drivers/net/i40e/base/i40e_adminq_cmd.h
index 2bd8f81f9..d718c7326 100644
--- a/drivers/net/i40e/base/i40e_adminq_cmd.h
+++ b/drivers/net/i40e/base/i40e_adminq_cmd.h
@@ -2272,15 +2272,32 @@ enum i40e_aq_phy_reg_type {
 	I40E_AQC_PHY_REG_EXERNAL_MODULE	= 0x3
 };
 
+#pragma pack(1)
 /* Run PHY Activity (0x0626) */
 struct i40e_aqc_run_phy_activity {
-	__le16  activity_id;
-	u8      flags;
-	u8      reserved1;
-	__le32  control;
-	__le32  data;
-	u8      reserved2[4];
+	u8	cmd_flags;
+	__le16	activity_id;
+#define I40E_AQ_RUN_PHY_ACT_ID_USR_DFND			0x10
+	u8	reserved;
+	union {
+		struct {
+			__le32  dnl_opcode;
+#define I40E_AQ_RUN_PHY_ACT_DNL_OPCODE_GET_EEE_STAT_DUR	0x801a
+#define I40E_AQ_RUN_PHY_ACT_DNL_OPCODE_GET_EEE_STAT	0x801b
+#define I40E_AQ_RUN_PHY_ACT_DNL_OPCODE_GET_EEE_DUR	0x1801b
+			__le32  data;
+			u8	reserved2[4];
+		} cmd;
+		struct {
+			__le32	cmd_status;
+#define I40E_AQ_RUN_PHY_ACT_CMD_STAT_SUCC		0x4
+#define I40E_AQ_RUN_PHY_ACT_CMD_STAT_MASK		0xFFFF
+			__le32	data0;
+			__le32	data1;
+		} resp;
+	} params;
 };
+#pragma pack()
 
 I40E_CHECK_CMD_LENGTH(i40e_aqc_run_phy_activity);
 
diff --git a/drivers/net/i40e/base/i40e_common.c b/drivers/net/i40e/base/i40e_common.c
index e0028ac4d..9d76b6824 100644
--- a/drivers/net/i40e/base/i40e_common.c
+++ b/drivers/net/i40e/base/i40e_common.c
@@ -7027,6 +7027,91 @@ enum i40e_status_code i40e_get_phy_lpi_status(struct i40e_hw *hw,
 	return ret;
 }
 
+/**
+ * i40e_get_lpi_counters - read LPI counters from EEE statistics
+ * @hw: pointer to the hw struct
+ * @tx_counter: pointer to memory for TX LPI counter
+ * @rx_counter: pointer to memory for RX LPI counter
+ * @is_clear:   returns true if counters are clear after read
+ *
+ * Read Low Power Idle (LPI) mode counters from Energy Efficient
+ * Ethernet (EEE) statistics.
+ **/
+enum i40e_status_code i40e_get_lpi_counters(struct i40e_hw *hw,
+					    u32 *tx_counter, u32 *rx_counter,
+					    bool *is_clear)
+{
+	/* only X710-T*L requires special handling of counters
+	 * for other devices we just read the MAC registers
+	 */
+	if (hw->device_id == I40E_DEV_ID_10G_BASE_T_BC &&
+	    hw->phy.link_info.link_speed != I40E_LINK_SPEED_1GB) {
+		enum i40e_status_code retval;
+		u32 cmd_status = 0;
+
+		*is_clear = false;
+		retval = i40e_aq_run_phy_activity(hw,
+				I40E_AQ_RUN_PHY_ACT_ID_USR_DFND,
+				I40E_AQ_RUN_PHY_ACT_DNL_OPCODE_GET_EEE_STAT,
+				&cmd_status, tx_counter, rx_counter, NULL);
+
+		if (cmd_status != I40E_AQ_RUN_PHY_ACT_CMD_STAT_SUCC)
+			retval = I40E_ERR_ADMIN_QUEUE_ERROR;
+
+		return retval;
+	}
+
+	*is_clear = true;
+	*tx_counter = rd32(hw, I40E_PRTPM_TLPIC);
+	*rx_counter = rd32(hw, I40E_PRTPM_RLPIC);
+
+	return I40E_SUCCESS;
+}
+
+/**
+ * i40e_lpi_stat_update - update LPI counters with values relative to offset
+ * @hw: pointer to the hw struct
+ * @offset_loaded: flag indicating need of writing current value to offset
+ * @tx_offset: pointer to offset of TX LPI counter
+ * @tx_stat: pointer to value of TX LPI counter
+ * @rx_offset: pointer to offset of RX LPI counter
+ * @rx_stat: pointer to value of RX LPI counter
+ *
+ * Update Low Power Idle (LPI) mode counters while having regard to passed
+ * offsets.
+ **/
+enum i40e_status_code i40e_lpi_stat_update(struct i40e_hw *hw,
+					   bool offset_loaded, u64 *tx_offset,
+					   u64 *tx_stat, u64 *rx_offset,
+					   u64 *rx_stat)
+{
+	enum i40e_status_code retval;
+	u32 tx_counter, rx_counter;
+	bool is_clear;
+
+	retval = i40e_get_lpi_counters(hw, &tx_counter, &rx_counter, &is_clear);
+	if (retval)
+		goto err;
+
+	if (is_clear) {
+		*tx_stat += tx_counter;
+		*rx_stat += rx_counter;
+	} else {
+		if (!offset_loaded) {
+			*tx_offset = tx_counter;
+			*rx_offset = rx_counter;
+		}
+
+		*tx_stat = (tx_counter >= *tx_offset) ?
+			(u32)(tx_counter - *tx_offset) :
+			(u32)((tx_counter + BIT_ULL(32)) - *tx_offset);
+		*rx_stat = (rx_counter >= *rx_offset) ?
+			(u32)(rx_counter - *rx_offset) :
+			(u32)((rx_counter + BIT_ULL(32)) - *rx_offset);
+	}
+err:
+	return retval;
+}
 
 /**
  * i40e_aq_rx_ctl_read_register - use FW to read from an Rx control register
@@ -7233,6 +7318,51 @@ enum i40e_status_code i40e_aq_get_phy_register(struct i40e_hw *hw,
 }
 
 #endif /* PF_DRIVER */
+/**
+ * i40e_aq_run_phy_activity
+ * @hw: pointer to the hw struct
+ * @activity_id: ID of DNL activity to run
+ * @dnl_opcode: opcode passed to DNL script
+ * @cmd_status: pointer to memory to write return value of DNL script
+ * @data0: pointer to memory for first 4 bytes of data returned by DNL script
+ * @data1: pointer to memory for last 4 bytes of data returned by DNL script
+ * @cmd_details: pointer to command details structure or NULL
+ *
+ * Run DNL admin command.
+ **/
+enum i40e_status_code
+i40e_aq_run_phy_activity(struct i40e_hw *hw, u16 activity_id, u32 dnl_opcode,
+			 u32 *cmd_status, u32 *data0, u32 *data1,
+			 struct i40e_asq_cmd_details *cmd_details)
+{
+	struct i40e_aqc_run_phy_activity *cmd;
+	enum i40e_status_code retval;
+	struct i40e_aq_desc desc;
+
+	cmd = (struct i40e_aqc_run_phy_activity *)&desc.params.raw;
+
+	if (!cmd_status || !data0 || !data1) {
+		retval = I40E_ERR_PARAM;
+		goto err;
+	}
+
+	i40e_fill_default_direct_cmd_desc(&desc,
+					  i40e_aqc_opc_run_phy_activity);
+
+	cmd->activity_id = CPU_TO_LE16(activity_id);
+	cmd->params.cmd.dnl_opcode = CPU_TO_LE32(dnl_opcode);
+
+	retval = i40e_asq_send_command(hw, &desc, NULL, 0, cmd_details);
+	if (retval)
+		goto err;
+
+	*cmd_status = LE32_TO_CPU(cmd->params.resp.cmd_status);
+	*data0 = LE32_TO_CPU(cmd->params.resp.data0);
+	*data1 = LE32_TO_CPU(cmd->params.resp.data1);
+err:
+	return retval;
+}
+
 #ifdef VF_DRIVER
 
 /**
diff --git a/drivers/net/i40e/base/i40e_prototype.h b/drivers/net/i40e/base/i40e_prototype.h
index c6c45eb5a..748a7a275 100644
--- a/drivers/net/i40e/base/i40e_prototype.h
+++ b/drivers/net/i40e/base/i40e_prototype.h
@@ -76,6 +76,12 @@ enum i40e_status_code i40e_blink_phy_link_led(struct i40e_hw *hw,
 
 enum i40e_status_code i40e_get_phy_lpi_status(struct i40e_hw *hw,
 					      struct i40e_hw_port_stats *stats);
+enum i40e_status_code i40e_get_lpi_counters(struct i40e_hw *hw, u32 *tx_counter,
+					    u32 *rx_counter, bool *is_clear);
+enum i40e_status_code i40e_lpi_stat_update(struct i40e_hw *hw,
+					   bool offset_loaded, u64 *tx_offset,
+					   u64 *tx_stat, u64 *rx_offset,
+					   u64 *rx_stat);
 /* admin send queue commands */
 
 enum i40e_status_code i40e_aq_get_firmware_version(struct i40e_hw *hw,
@@ -550,6 +556,10 @@ enum i40e_status_code i40e_aq_get_phy_register(struct i40e_hw *hw,
 				u8 phy_select, u8 dev_addr, bool page_change,
 				u32 reg_addr, u32 *reg_val,
 				struct i40e_asq_cmd_details *cmd_details);
+enum i40e_status_code
+i40e_aq_run_phy_activity(struct i40e_hw *hw, u16 activity_id, u32 opcode,
+			 u32 *cmd_status, u32 *data0, u32 *data1,
+			 struct i40e_asq_cmd_details *cmd_details);
 
 enum i40e_status_code i40e_aq_set_arp_proxy_config(struct i40e_hw *hw,
 			struct i40e_aqc_arp_proxy_data *proxy_config,
-- 
2.17.1


  parent reply index

Thread overview: 198+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-02  7:48 [dpdk-dev] [PATCH 00/69] update for i40e base code Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 01/69] net/i40e/base: add support for feature flags Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 02/69] net/i40e/base: add ESXi support to transition to flat NVM Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 03/69] net/i40e/base: increase max VSI count for VFs Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 04/69] net/i40e/base: change buffer address Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 05/69] net/i40e/base: change for X722 10G-T ports LED Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 06/69] net/i40e/base: decouple cfg_lldp_mib_change from init_dcb Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 07/69] net/i40e/base: changed FW API version to 1.8 Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 08/69] net/i40e/base: change misleading error message Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 09/69] net/i40e/base: shadowRAM checksum calculation change Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 10/69] net/i40e/base: update Fort Park FW API to 1.8 Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 11/69] net/i40e/base: further implementation of LLDP Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 12/69] net/i40e/base: add new device ids for Carlsville Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 13/69] net/i40e/base: add check for MAC type Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 14/69] net/i40e/base: adding flags for PHY types Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 15/69] net/i40e/base: revert ShadowRAM checksum calculation change Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 16/69] net/i40e/base: improve AQ log granularity Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 17/69] net/i40e/base: change condition checks Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 18/69] net/i40e/base: add getter for FW LLDP agent status Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 19/69] net/i40e/base: add support for Energy Efficient Ethernet Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 20/69] net/i40e/base: read LPI status from external PHY Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 21/69] net/i40e/base: change reading LPI state Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 22/69] net/i40e/base: change for missing "link modes" Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 23/69] net/i40e/base: add reading LPI counters Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 24/69] net/i40e/base: update virtchnl.h Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 25/69] net/i40e/base: add opcodes reserved comments Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 26/69] net/i40e/base: revert Fix missing "fall through" comments Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 27/69] net/i40e/base: backport style changes from upstream Linux Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 28/69] net/i40e/base: update status codes Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 29/69] net/i40e/base: use TX_LPI_EN bit to fully turn off EEE Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 30/69] net/i40e/base: change of the incorrect Tx descriptors number Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 31/69] net/i40e/base: extend PHY access AQ command Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 32/69] net/i40e/base: add drop mode parameter to set MAC config Xiaolong Ye
2019-12-02  7:48 ` [dpdk-dev] [PATCH 33/69] net/i40e/base: check_recovery_mode had wrong if statement Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 34/69] net/i40e/base: update FVL FW API version to 1.9 Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 35/69] net/i40e/base: update FPK " Xiaolong Ye
2019-12-02 19:03   ` Stillwell Jr, Paul M
2019-12-02  7:49 ` [dpdk-dev] [PATCH 36/69] net/i40e/base: add persistent lldp support Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 37/69] net/i40e/base: make i40e_set_mac_type() public Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 38/69] net/i40e/base: change retrying Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 39/69] net/i40e/base: revert fix for X722 10G-T ports LED Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 40/69] net/i40e/base: change link flapping on 25g cards Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 41/69] net/i40e/base: changeed code wrapping for CARLSVILLE_HW Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 42/69] net/i40e/base: change long redundant define names Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 43/69] net/i40e/base: mark additional missing bits as reserved Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 44/69] net/i40e/base: change for persistent lldp support Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 45/69] net/i40e/base: change wrong 'Advertised FEC modes' Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 46/69] net/i40e/base: implement lpi statistics read from registers Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 47/69] net/i40e/base: add Flow Director defines Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 48/69] net/i40e/base: removed unreachable code Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 49/69] net/i40e/base: set PHY Access flag on X722 Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 50/69] net/i40e/base: implement reading lpi statistics Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 51/69] net/i40e/base: add MRR field defines Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 52/69] net/i40e/base: exposing missing LED functionality Xiaolong Ye
2019-12-02 19:13   ` Stillwell Jr, Paul M
2019-12-02  7:49 ` [dpdk-dev] [PATCH 53/69] net/i40e/base: introduce firmware EMP reset register offsets Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 54/69] net/i40e/base: change for reading lpi statistics Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 55/69] net/i40e/base: update FVL FW API version to 1.10 Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 56/69] net/i40e/base: add CRC stripping capability Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 57/69] net/i40e/base: update virtchnl header with advanced features Xiaolong Ye
2019-12-02 19:14   ` Stillwell Jr, Paul M
2019-12-02  7:49 ` [dpdk-dev] [PATCH 58/69] net/i40e/base: add limits for nested structures Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 59/69] net/i40e/base: put the check for zero nested elements higher Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 60/69] net/i40e/base: clarify requirements Xiaolong Ye
2019-12-02 16:33   ` Williams, Mitch A
2019-12-02  7:49 ` [dpdk-dev] [PATCH 61/69] net/i40e/base: change 'Unknown bps' Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 62/69] net/i40e/base: add USO offload flag for AVF Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 63/69] net/i40e/base: update the interrupt mapping and negotiation Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 64/69] net/i40e/base: add inline ipsec data struct and commands Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 65/69] net/i40e/base: change all zero-sized arrays Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 66/69] net/i40e/base: support for additional flow type Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 67/69] net/i40e/base: change GET/SET_RSS_LUT valid_len check Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 68/69] net/i40e/base: add missing 0 length checks Xiaolong Ye
2019-12-02  7:49 ` [dpdk-dev] [PATCH 69/69] net/i40e/base: update version Xiaolong Ye
2019-12-12 15:20 ` [dpdk-dev] [PATCH v2 00/36] update for i40e base code Xiaolong Ye
2019-12-12 15:20   ` [dpdk-dev] [PATCH v2 01/36] net/i40e/base: add support for feature flags Xiaolong Ye
2019-12-12 15:20   ` [dpdk-dev] [PATCH v2 02/36] net/i40e/base: increase max VSI count for VFs Xiaolong Ye
2019-12-12 15:20   ` [dpdk-dev] [PATCH v2 03/36] net/i40e/base: change buffer address Xiaolong Ye
2019-12-12 15:20   ` [dpdk-dev] [PATCH v2 04/36] net/i40e/base: decouple cfg_lldp_mib_change from init_dcb Xiaolong Ye
2019-12-12 15:20   ` [dpdk-dev] [PATCH v2 05/36] net/i40e/base: change misleading error message Xiaolong Ye
2019-12-12 15:20   ` [dpdk-dev] [PATCH v2 06/36] net/i40e/base: further implementation of LLDP Xiaolong Ye
2019-12-12 15:20   ` [dpdk-dev] [PATCH v2 07/36] net/i40e/base: add new device ids Xiaolong Ye
2019-12-12 15:20   ` [dpdk-dev] [PATCH v2 08/36] net/i40e/base: add check for MAC type Xiaolong Ye
2019-12-12 15:20   ` [dpdk-dev] [PATCH v2 09/36] net/i40e/base: adding flags for PHY types Xiaolong Ye
2019-12-12 15:20   ` [dpdk-dev] [PATCH v2 10/36] net/i40e/base: improve AQ log granularity Xiaolong Ye
2019-12-12 15:20   ` [dpdk-dev] [PATCH v2 11/36] net/i40e/base: add getter for FW LLDP agent status Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 12/36] net/i40e/base: add support for Energy Efficient Ethernet Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 13/36] net/i40e/base: read LPI status from external PHY Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 14/36] net/i40e/base: change for missing "link modes" Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 15/36] net/i40e/base: add reading LPI counters Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 16/36] net/i40e/base: backport style changes from upstream Linux Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 17/36] net/i40e/base: update status codes Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 18/36] net/i40e/base: change of the incorrect Tx descriptors number Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 19/36] net/i40e/base: extend PHY access AQ command Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 20/36] net/i40e/base: add drop mode parameter to set MAC config Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 21/36] net/i40e/base: add FWS1B register masks Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 22/36] net/i40e/base: update FW API version Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 23/36] net/i40e/base: add persistent lldp support Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 24/36] net/i40e/base: make i40e_set_mac_type() public Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 25/36] net/i40e/base: change retrying logic Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 26/36] net/i40e/base: mark additional missing bits as reserved Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 27/36] net/i40e/base: change wrong 'Advertised FEC modes' Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 28/36] net/i40e/base: add Flow Director defines Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 29/36] net/i40e/base: removed unreachable code Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 30/36] net/i40e/base: set PHY Access flag on X722 Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 31/36] net/i40e/base: implement reading lpi statistics Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 32/36] net/i40e/base: exposing missing LED functionality Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 33/36] net/i40e/base: introduce firmware EMP reset register offsets Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 34/36] net/i40e/base: add CRC stripping capability Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 35/36] net/i40e/base: enable LED blinking flow Xiaolong Ye
2019-12-12 15:21   ` [dpdk-dev] [PATCH v2 36/36] net/i40e/base: add new link speed constants Xiaolong Ye
2019-12-16  2:43 ` [dpdk-dev] [PATCH v3 00/36] update for i40e base code Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 01/36] net/i40e/base: add support for feature flags Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 02/36] net/i40e/base: increase max VSI count for VFs Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 03/36] net/i40e/base: change buffer address Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 04/36] net/i40e/base: decouple cfg_lldp_mib_change from init_dcb Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 05/36] net/i40e/base: change misleading error message Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 06/36] net/i40e/base: further implementation of LLDP Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 07/36] net/i40e/base: add new device ids Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 08/36] net/i40e/base: add check for MAC type Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 09/36] net/i40e/base: adding flags for PHY types Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 10/36] net/i40e/base: improve AQ log granularity Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 11/36] net/i40e/base: add getter for FW LLDP agent status Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 12/36] net/i40e/base: add support for Energy Efficient Ethernet Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 13/36] net/i40e/base: read LPI status from external PHY Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 14/36] net/i40e/base: change for missing "link modes" Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 15/36] net/i40e/base: add reading LPI counters Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 16/36] net/i40e/base: backport style changes from upstream Linux Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 17/36] net/i40e/base: update status codes Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 18/36] net/i40e/base: change of the incorrect Tx descriptors number Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 19/36] net/i40e/base: extend PHY access AQ command Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 20/36] net/i40e/base: add drop mode parameter to set MAC config Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 21/36] net/i40e/base: add FWS1B register masks Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 22/36] net/i40e/base: update FW API version Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 23/36] net/i40e/base: add persistent lldp support Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 24/36] net/i40e/base: make i40e_set_mac_type() public Xiaolong Ye
2019-12-17 10:39     ` Kwapulinski, Piotr
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 25/36] net/i40e/base: change retrying logic Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 26/36] net/i40e/base: mark additional missing bits as reserved Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 27/36] net/i40e/base: change wrong 'Advertised FEC modes' Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 28/36] net/i40e/base: add Flow Director defines Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 29/36] net/i40e/base: removed unreachable code Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 30/36] net/i40e/base: set PHY Access flag on X722 Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 31/36] net/i40e/base: implement reading lpi statistics Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 32/36] net/i40e/base: exposing missing LED functionality Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 33/36] net/i40e/base: introduce firmware EMP reset register offsets Xiaolong Ye
2019-12-17 10:40     ` Kwapulinski, Piotr
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 34/36] net/i40e/base: add CRC stripping capability Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 35/36] net/i40e/base: enable LED blinking flow Xiaolong Ye
2019-12-16  2:43   ` [dpdk-dev] [PATCH v3 36/36] net/i40e/base: add new link speed constants Xiaolong Ye
2019-12-27  5:37     ` Xing, Beilei
2020-01-02  9:58       ` Loktionov, Aleksandr
2020-01-13  2:39 ` [dpdk-dev] [PATCH v4 00/36] update for i40e base code Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 01/36] net/i40e/base: add support for feature flags Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 02/36] net/i40e/base: increase max VSI count for VFs Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 03/36] net/i40e/base: change buffer address Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 04/36] net/i40e/base: decouple cfg_lldp_mib_change from init_dcb Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 05/36] net/i40e/base: change misleading error message Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 06/36] net/i40e/base: further implementation of LLDP Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 07/36] net/i40e/base: add new device ids Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 08/36] net/i40e/base: add check for MAC type Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 09/36] net/i40e/base: adding flags for PHY types Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 10/36] net/i40e/base: improve AQ log granularity Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 11/36] net/i40e/base: add getter for FW LLDP agent status Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 12/36] net/i40e/base: add support for Energy Efficient Ethernet Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 13/36] net/i40e/base: read LPI status from external PHY Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 14/36] net/i40e/base: change for missing "link modes" Xiaolong Ye
2020-01-13  2:39   ` Xiaolong Ye [this message]
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 16/36] net/i40e/base: backport style changes from upstream Linux Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 17/36] net/i40e/base: update status codes Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 18/36] net/i40e/base: change of the incorrect Tx descriptors number Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 19/36] net/i40e/base: extend PHY access AQ command Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 20/36] net/i40e/base: add drop mode parameter to set MAC config Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 21/36] net/i40e/base: add FWS1B register masks Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 22/36] net/i40e/base: update FW API version Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 23/36] net/i40e/base: add persistent lldp support Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 24/36] net/i40e/base: make i40e_set_mac_type() public Xiaolong Ye
2020-01-13  8:19     ` Kwapulinski, Piotr
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 25/36] net/i40e/base: fix retrying logic Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 26/36] net/i40e/base: mark additional missing bits as reserved Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 27/36] net/i40e/base: fix wrong 'Advertised FEC modes' Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 28/36] net/i40e/base: add Flow Director defines Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 29/36] net/i40e/base: removed unreachable code Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 30/36] net/i40e/base: set PHY Access flag on X722 Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 31/36] net/i40e/base: implement reading lpi statistics Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 32/36] net/i40e/base: exposing missing LED functionality Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 33/36] net/i40e/base: introduce firmware EMP reset register offsets Xiaolong Ye
2020-01-13  8:19     ` Kwapulinski, Piotr
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 34/36] net/i40e/base: add CRC stripping capability Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 35/36] net/i40e/base: enable LED blinking flow Xiaolong Ye
2020-01-13  2:39   ` [dpdk-dev] [PATCH v4 36/36] net/i40e/base: add new link speed constants Xiaolong Ye
2020-01-13  2:54   ` [dpdk-dev] [PATCH v4 00/36] update for i40e base code Zhang, Qi Z
2020-01-13  3:26   ` Xing, Beilei
2020-01-13  5:59     ` Ye, Xiaolong
2020-01-15 18:42       ` Kevin Traynor
2020-02-03 14:09       ` Kevin Traynor
2020-02-04  3:23         ` Ye Xiaolong
2020-02-07  9:36           ` Kevin Traynor

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=20200113023949.26718-16-xiaolong.ye@intel.com \
    --to=xiaolong.ye@intel.com \
    --cc=beilei.xing@intel.com \
    --cc=dev@dpdk.org \
    --cc=piotr.pietruszewski@intel.com \
    --cc=qi.z.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

DPDK-dev Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/dpdk-dev/0 dpdk-dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dpdk-dev dpdk-dev/ https://lore.kernel.org/dpdk-dev \
		dev@dpdk.org
	public-inbox-index dpdk-dev

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.dpdk.dev


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git