DPDK patches and discussions
 help / color / mirror / Atom feed
* [PATCH 0/9] Wangxun fixes and supports
@ 2022-09-02  3:00 Jiawen Wu
  2022-09-02  3:00 ` [PATCH 1/9] net/txgbe: fix IPv6 rule in flow director Jiawen Wu
                   ` (10 more replies)
  0 siblings, 11 replies; 14+ messages in thread
From: Jiawen Wu @ 2022-09-02  3:00 UTC (permalink / raw)
  To: dev; +Cc: Jiawen Wu

Fix some bugs, remove unused logic, support new features.

Jiawen Wu (9):
  net/txgbe: fix IPv6 rule in flow director
  net/txgbe: fix OEM customized LED
  net/txgbe: remove semaphore between SW/FW
  net/txgbe: rename some extended statistic
  net/ngbe: rename some extended statistic
  net/ngbe: remove semaphore between SW/FW
  net/ngbe: fix max frame size
  net/ngbe: fix YT PHY mixed mode occasionally failing link
  net/ngbe: support to set link down/up

 doc/guides/rel_notes/release_22_11.rst |  4 +++
 drivers/net/ngbe/base/ngbe_eeprom.c    | 32 -----------------
 drivers/net/ngbe/base/ngbe_phy.c       |  1 +
 drivers/net/ngbe/base/ngbe_phy_rtl.c   | 13 +++++++
 drivers/net/ngbe/base/ngbe_phy_rtl.h   |  2 ++
 drivers/net/ngbe/base/ngbe_phy_yt.c    |  9 +++++
 drivers/net/ngbe/base/ngbe_regs.h      |  2 +-
 drivers/net/ngbe/base/ngbe_type.h      |  7 ++--
 drivers/net/ngbe/ngbe_ethdev.c         | 48 +++++++++++++++++++-------
 drivers/net/txgbe/base/txgbe_eeprom.c  | 32 -----------------
 drivers/net/txgbe/base/txgbe_mng.c     |  4 +--
 drivers/net/txgbe/base/txgbe_type.h    |  4 +--
 drivers/net/txgbe/txgbe_ethdev.c       | 11 +++---
 drivers/net/txgbe/txgbe_flow.c         | 33 ++++++++++++++----
 14 files changed, 105 insertions(+), 97 deletions(-)

-- 
2.27.0


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

* [PATCH 1/9] net/txgbe: fix IPv6 rule in flow director
  2022-09-02  3:00 [PATCH 0/9] Wangxun fixes and supports Jiawen Wu
@ 2022-09-02  3:00 ` Jiawen Wu
  2022-09-02  3:00 ` [PATCH 2/9] net/txgbe: fix OEM customized LED Jiawen Wu
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Jiawen Wu @ 2022-09-02  3:00 UTC (permalink / raw)
  To: dev; +Cc: Jiawen Wu, stable

Convert the correct packet type and flow type, to fix IPv6 rule in FDIR.

Fixes: b973ee26747a ("net/txgbe: parse flow director filter")
Cc: stable@dpdk.org

Signed-off-by: Jiawen Wu <jiawenwu@trustnetic.com>
---
 drivers/net/txgbe/txgbe_flow.c | 33 ++++++++++++++++++++++++++-------
 1 file changed, 26 insertions(+), 7 deletions(-)

diff --git a/drivers/net/txgbe/txgbe_flow.c b/drivers/net/txgbe/txgbe_flow.c
index d0093c0163..07d0337095 100644
--- a/drivers/net/txgbe/txgbe_flow.c
+++ b/drivers/net/txgbe/txgbe_flow.c
@@ -1583,9 +1583,7 @@ txgbe_parse_fdir_filter_normal(struct rte_eth_dev *dev __rte_unused,
 	 * value. So, we need not do anything for the not provided fields later.
 	 */
 	memset(rule, 0, sizeof(struct txgbe_fdir_rule));
-	memset(&rule->mask, 0xFF, sizeof(struct txgbe_hw_fdir_mask));
-	rule->mask.vlan_tci_mask = 0;
-	rule->mask.flex_bytes_mask = 0;
+	memset(&rule->mask, 0, sizeof(struct txgbe_hw_fdir_mask));
 
 	/**
 	 * The first not void item should be
@@ -1867,7 +1865,10 @@ txgbe_parse_fdir_filter_normal(struct rte_eth_dev *dev __rte_unused,
 		 * as we must have a flow type.
 		 */
 		rule->input.flow_type |= TXGBE_ATR_L4TYPE_TCP;
-		ptype = txgbe_ptype_table[TXGBE_PT_IPV4_TCP];
+		if (rule->input.flow_type & TXGBE_ATR_FLOW_TYPE_IPV6)
+			ptype = txgbe_ptype_table[TXGBE_PT_IPV6_TCP];
+		else
+			ptype = txgbe_ptype_table[TXGBE_PT_IPV4_TCP];
 		/*Not supported last point for range*/
 		if (item->last) {
 			rte_flow_error_set(error, EINVAL,
@@ -1931,7 +1932,10 @@ txgbe_parse_fdir_filter_normal(struct rte_eth_dev *dev __rte_unused,
 		 * as we must have a flow type.
 		 */
 		rule->input.flow_type |= TXGBE_ATR_L4TYPE_UDP;
-		ptype = txgbe_ptype_table[TXGBE_PT_IPV4_UDP];
+		if (rule->input.flow_type & TXGBE_ATR_FLOW_TYPE_IPV6)
+			ptype = txgbe_ptype_table[TXGBE_PT_IPV6_UDP];
+		else
+			ptype = txgbe_ptype_table[TXGBE_PT_IPV4_UDP];
 		/*Not supported last point for range*/
 		if (item->last) {
 			rte_flow_error_set(error, EINVAL,
@@ -1990,7 +1994,10 @@ txgbe_parse_fdir_filter_normal(struct rte_eth_dev *dev __rte_unused,
 		 * as we must have a flow type.
 		 */
 		rule->input.flow_type |= TXGBE_ATR_L4TYPE_SCTP;
-		ptype = txgbe_ptype_table[TXGBE_PT_IPV4_SCTP];
+		if (rule->input.flow_type & TXGBE_ATR_FLOW_TYPE_IPV6)
+			ptype = txgbe_ptype_table[TXGBE_PT_IPV6_SCTP];
+		else
+			ptype = txgbe_ptype_table[TXGBE_PT_IPV4_SCTP];
 		/*Not supported last point for range*/
 		if (item->last) {
 			rte_flow_error_set(error, EINVAL,
@@ -2141,6 +2148,16 @@ txgbe_parse_fdir_filter_normal(struct rte_eth_dev *dev __rte_unused,
 
 	rule->input.pkt_type = cpu_to_be16(txgbe_encode_ptype(ptype));
 
+	if (rule->input.flow_type & TXGBE_ATR_FLOW_TYPE_IPV6) {
+		if (rule->input.flow_type & TXGBE_ATR_L4TYPE_MASK)
+			rule->input.pkt_type &= 0xFFFF;
+		else
+			rule->input.pkt_type &= 0xF8FF;
+
+		rule->input.flow_type &= TXGBE_ATR_L3TYPE_MASK |
+					TXGBE_ATR_L4TYPE_MASK;
+	}
+
 	return txgbe_parse_fdir_act_attr(attr, actions, rule, error);
 }
 
@@ -2827,8 +2844,10 @@ txgbe_flow_create(struct rte_eth_dev *dev,
 				ret = memcmp(&fdir_info->mask,
 					&fdir_rule.mask,
 					sizeof(struct txgbe_hw_fdir_mask));
-				if (ret)
+				if (ret) {
+					PMD_DRV_LOG(ERR, "only support one global mask");
 					goto out;
+				}
 
 				if (fdir_info->flex_bytes_offset !=
 						fdir_rule.flex_bytes_offset)
-- 
2.27.0


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

* [PATCH 2/9] net/txgbe: fix OEM customized LED
  2022-09-02  3:00 [PATCH 0/9] Wangxun fixes and supports Jiawen Wu
  2022-09-02  3:00 ` [PATCH 1/9] net/txgbe: fix IPv6 rule in flow director Jiawen Wu
@ 2022-09-02  3:00 ` Jiawen Wu
  2022-09-02  3:00 ` [PATCH 3/9] net/txgbe: remove semaphore between SW/FW Jiawen Wu
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Jiawen Wu @ 2022-09-02  3:00 UTC (permalink / raw)
  To: dev; +Cc: Jiawen Wu, stable

Fix to read the correct mailbox register.

Fixes: f45834fd5c6a ("net/txgbe: support OEM customized LED")
Cc: stable@dpdk.org

Signed-off-by: Jiawen Wu <jiawenwu@trustnetic.com>
---
 drivers/net/txgbe/base/txgbe_mng.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/txgbe/base/txgbe_mng.c b/drivers/net/txgbe/base/txgbe_mng.c
index 07bbfe8142..df7145094f 100644
--- a/drivers/net/txgbe/base/txgbe_mng.c
+++ b/drivers/net/txgbe/base/txgbe_mng.c
@@ -284,7 +284,7 @@ s32 txgbe_close_notify(struct txgbe_hw *hw)
 	if (status)
 		return status;
 
-	tmp = rd32(hw, TXGBE_MNGSWSYNC);
+	tmp = rd32a(hw, TXGBE_MNGMBX, 1);
 	if (tmp == TXGBE_CHECKSUM_CAP_ST_PASS)
 		status = 0;
 	else
@@ -314,7 +314,7 @@ s32 txgbe_open_notify(struct txgbe_hw *hw)
 	if (status)
 		return status;
 
-	tmp = rd32(hw, TXGBE_MNGSWSYNC);
+	tmp = rd32a(hw, TXGBE_MNGMBX, 1);
 	if (tmp == TXGBE_CHECKSUM_CAP_ST_PASS)
 		status = 0;
 	else
-- 
2.27.0


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

* [PATCH 3/9] net/txgbe: remove semaphore between SW/FW
  2022-09-02  3:00 [PATCH 0/9] Wangxun fixes and supports Jiawen Wu
  2022-09-02  3:00 ` [PATCH 1/9] net/txgbe: fix IPv6 rule in flow director Jiawen Wu
  2022-09-02  3:00 ` [PATCH 2/9] net/txgbe: fix OEM customized LED Jiawen Wu
@ 2022-09-02  3:00 ` Jiawen Wu
  2022-09-02  3:00 ` [PATCH 4/9] net/txgbe: rename some extended statistic Jiawen Wu
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Jiawen Wu @ 2022-09-02  3:00 UTC (permalink / raw)
  To: dev; +Cc: Jiawen Wu, stable

Since firmware does not use the semaphore between software and firmware.
Remove useless unilateral semaphore setting.

Fixes: 35c90ecccfd4 ("net/txgbe: add EEPROM functions")
Cc: stable@dpdk.org

Signed-off-by: Jiawen Wu <jiawenwu@trustnetic.com>
---
 drivers/net/txgbe/base/txgbe_eeprom.c | 32 ---------------------------
 1 file changed, 32 deletions(-)

diff --git a/drivers/net/txgbe/base/txgbe_eeprom.c b/drivers/net/txgbe/base/txgbe_eeprom.c
index 4ed6bd6728..aeeae06dfc 100644
--- a/drivers/net/txgbe/base/txgbe_eeprom.c
+++ b/drivers/net/txgbe/base/txgbe_eeprom.c
@@ -111,37 +111,6 @@ s32 txgbe_get_eeprom_semaphore(struct txgbe_hw *hw)
 			status = 0;
 	}
 
-	/* Now get the semaphore between SW/FW through the SWESMBI bit */
-	if (status == 0) {
-		for (i = 0; i < timeout; i++) {
-			/* Set the SW EEPROM semaphore bit to request access */
-			wr32m(hw, TXGBE_MNGSWSYNC,
-				TXGBE_MNGSWSYNC_REQ, TXGBE_MNGSWSYNC_REQ);
-
-			/*
-			 * If we set the bit successfully then we got the
-			 * semaphore.
-			 */
-			swsm = rd32(hw, TXGBE_MNGSWSYNC);
-			if (swsm & TXGBE_MNGSWSYNC_REQ)
-				break;
-
-			usec_delay(50);
-		}
-
-		/*
-		 * Release semaphores and return error if SW EEPROM semaphore
-		 * was not granted because we don't have access to the EEPROM
-		 */
-		if (i >= timeout) {
-			DEBUGOUT("SWESMBI Software EEPROM semaphore not granted.");
-			txgbe_release_eeprom_semaphore(hw);
-			status = TXGBE_ERR_EEPROM;
-		}
-	} else {
-		DEBUGOUT("Software semaphore SMBI between device drivers not granted.");
-	}
-
 	return status;
 }
 
@@ -153,7 +122,6 @@ s32 txgbe_get_eeprom_semaphore(struct txgbe_hw *hw)
  **/
 void txgbe_release_eeprom_semaphore(struct txgbe_hw *hw)
 {
-	wr32m(hw, TXGBE_MNGSWSYNC, TXGBE_MNGSWSYNC_REQ, 0);
 	wr32m(hw, TXGBE_SWSEM, TXGBE_SWSEM_PF, 0);
 	txgbe_flush(hw);
 }
-- 
2.27.0


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

* [PATCH 4/9] net/txgbe: rename some extended statistic
  2022-09-02  3:00 [PATCH 0/9] Wangxun fixes and supports Jiawen Wu
                   ` (2 preceding siblings ...)
  2022-09-02  3:00 ` [PATCH 3/9] net/txgbe: remove semaphore between SW/FW Jiawen Wu
@ 2022-09-02  3:00 ` Jiawen Wu
  2022-09-02  3:00 ` [PATCH 5/9] net/ngbe: " Jiawen Wu
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Jiawen Wu @ 2022-09-02  3:00 UTC (permalink / raw)
  To: dev; +Cc: Jiawen Wu, stable

Rename rx_oversize_errors to rx_oversize_cnt since it depends on giant
packet size limit instead of MTU, by hardware design.
Rename rx_drop_packets to rx_rdb_drop to indicate the drop location.
And add rx_dma_drop to extended statistics.

Fixes: 91fe49c87d76 ("net/txgbe: support device xstats")
Cc: stable@dpdk.org

Signed-off-by: Jiawen Wu <jiawenwu@trustnetic.com>
---
 drivers/net/txgbe/base/txgbe_type.h |  4 ++--
 drivers/net/txgbe/txgbe_ethdev.c    | 11 ++++++-----
 2 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/drivers/net/txgbe/base/txgbe_type.h b/drivers/net/txgbe/base/txgbe_type.h
index 343279127f..c3486b472f 100644
--- a/drivers/net/txgbe/base/txgbe_type.h
+++ b/drivers/net/txgbe/base/txgbe_type.h
@@ -356,9 +356,9 @@ struct txgbe_hw_stats {
 	u64 tx_management_packets;
 	u64 rx_management_dropped;
 	u64 rx_dma_drop;
-	u64 rx_drop_packets;
 
 	/* Basic Error */
+	u64 rx_rdb_drop;
 	u64 rx_crc_errors;
 	u64 rx_illegal_byte_errors;
 	u64 rx_error_bytes;
@@ -366,7 +366,7 @@ struct txgbe_hw_stats {
 	u64 rx_length_errors;
 	u64 rx_undersize_errors;
 	u64 rx_fragment_errors;
-	u64 rx_oversize_errors;
+	u64 rx_oversize_cnt;
 	u64 rx_jabber_errors;
 	u64 rx_l3_l4_xsum_error;
 	u64 mac_local_errors;
diff --git a/drivers/net/txgbe/txgbe_ethdev.c b/drivers/net/txgbe/txgbe_ethdev.c
index 9dc9948219..1c1d959ab5 100644
--- a/drivers/net/txgbe/txgbe_ethdev.c
+++ b/drivers/net/txgbe/txgbe_ethdev.c
@@ -183,8 +183,10 @@ static const struct rte_txgbe_xstats_name_off rte_txgbe_stats_strings[] = {
 	HW_XSTAT(rx_management_packets),
 	HW_XSTAT(tx_management_packets),
 	HW_XSTAT(rx_management_dropped),
+	HW_XSTAT(rx_dma_drop),
 
 	/* Basic Error */
+	HW_XSTAT(rx_rdb_drop),
 	HW_XSTAT(rx_crc_errors),
 	HW_XSTAT(rx_illegal_byte_errors),
 	HW_XSTAT(rx_error_bytes),
@@ -192,7 +194,7 @@ static const struct rte_txgbe_xstats_name_off rte_txgbe_stats_strings[] = {
 	HW_XSTAT(rx_length_errors),
 	HW_XSTAT(rx_undersize_errors),
 	HW_XSTAT(rx_fragment_errors),
-	HW_XSTAT(rx_oversize_errors),
+	HW_XSTAT(rx_oversize_cnt),
 	HW_XSTAT(rx_jabber_errors),
 	HW_XSTAT(rx_l3_l4_xsum_error),
 	HW_XSTAT(mac_local_errors),
@@ -2157,7 +2159,7 @@ txgbe_read_stats_registers(struct txgbe_hw *hw,
 	hw_stats->rx_bytes += rd64(hw, TXGBE_DMARXOCTL);
 	hw_stats->tx_bytes += rd64(hw, TXGBE_DMATXOCTL);
 	hw_stats->rx_dma_drop += rd32(hw, TXGBE_DMARXDROP);
-	hw_stats->rx_drop_packets += rd32(hw, TXGBE_PBRXDROP);
+	hw_stats->rx_rdb_drop += rd32(hw, TXGBE_PBRXDROP);
 
 	/* MAC Stats */
 	hw_stats->rx_crc_errors += rd64(hw, TXGBE_MACRXERRCRCL);
@@ -2189,7 +2191,7 @@ txgbe_read_stats_registers(struct txgbe_hw *hw,
 			rd64(hw, TXGBE_MACTX1024TOMAXL);
 
 	hw_stats->rx_undersize_errors += rd64(hw, TXGBE_MACRXERRLENL);
-	hw_stats->rx_oversize_errors += rd32(hw, TXGBE_MACRXOVERSIZE);
+	hw_stats->rx_oversize_cnt += rd32(hw, TXGBE_MACRXOVERSIZE);
 	hw_stats->rx_jabber_errors += rd32(hw, TXGBE_MACRXJABBER);
 
 	/* MNG Stats */
@@ -2311,8 +2313,7 @@ txgbe_dev_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *stats)
 			  hw_stats->rx_mac_short_packet_dropped +
 			  hw_stats->rx_length_errors +
 			  hw_stats->rx_undersize_errors +
-			  hw_stats->rx_oversize_errors +
-			  hw_stats->rx_drop_packets +
+			  hw_stats->rx_rdb_drop +
 			  hw_stats->rx_illegal_byte_errors +
 			  hw_stats->rx_error_bytes +
 			  hw_stats->rx_fragment_errors +
-- 
2.27.0


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

* [PATCH 5/9] net/ngbe: rename some extended statistic
  2022-09-02  3:00 [PATCH 0/9] Wangxun fixes and supports Jiawen Wu
                   ` (3 preceding siblings ...)
  2022-09-02  3:00 ` [PATCH 4/9] net/txgbe: rename some extended statistic Jiawen Wu
@ 2022-09-02  3:00 ` Jiawen Wu
  2022-09-02  3:00 ` [PATCH 6/9] net/ngbe: remove semaphore between SW/FW Jiawen Wu
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Jiawen Wu @ 2022-09-02  3:00 UTC (permalink / raw)
  To: dev; +Cc: Jiawen Wu, stable

Rename rx_oversize_errors to rx_oversize_cnt since it depends on giant
packet size limit instead of MTU, by hardware design.
Rename rx_drop_packets and tx_drop_packets to rx_dma_drop and tx_dma_drop
to indicate the drop location.
And add tx_dma_drop to extended statistics.

Fixes: 8b433d04adc9 ("net/ngbe: support device xstats")
Cc: stable@dpdk.org

Signed-off-by: Jiawen Wu <jiawenwu@trustnetic.com>
---
 drivers/net/ngbe/base/ngbe_type.h |  5 ++---
 drivers/net/ngbe/ngbe_ethdev.c    | 10 +++++-----
 2 files changed, 7 insertions(+), 8 deletions(-)

diff --git a/drivers/net/ngbe/base/ngbe_type.h b/drivers/net/ngbe/base/ngbe_type.h
index 4a6c273f1e..73111f7950 100644
--- a/drivers/net/ngbe/base/ngbe_type.h
+++ b/drivers/net/ngbe/base/ngbe_type.h
@@ -142,9 +142,8 @@ struct ngbe_hw_stats {
 	u64 mng_bmc2host_packets;
 	u64 mng_host2bmc_packets;
 	/* Basix RxTx */
-	u64 rx_drop_packets;
-	u64 tx_drop_packets;
 	u64 rx_dma_drop;
+	u64 tx_dma_drop;
 	u64 tx_secdrp_packets;
 	u64 rx_packets;
 	u64 tx_packets;
@@ -170,7 +169,7 @@ struct ngbe_hw_stats {
 	u64 rx_length_errors;
 	u64 rx_undersize_errors;
 	u64 rx_fragment_errors;
-	u64 rx_oversize_errors;
+	u64 rx_oversize_cnt;
 	u64 rx_jabber_errors;
 	u64 rx_l3_l4_xsum_error;
 	u64 mac_local_errors;
diff --git a/drivers/net/ngbe/ngbe_ethdev.c b/drivers/net/ngbe/ngbe_ethdev.c
index 86c28099c4..df32bf64ff 100644
--- a/drivers/net/ngbe/ngbe_ethdev.c
+++ b/drivers/net/ngbe/ngbe_ethdev.c
@@ -165,6 +165,7 @@ static const struct rte_ngbe_xstats_name_off rte_ngbe_stats_strings[] = {
 	HW_XSTAT(tx_management_packets),
 	HW_XSTAT(rx_management_dropped),
 	HW_XSTAT(rx_dma_drop),
+	HW_XSTAT(tx_dma_drop),
 	HW_XSTAT(tx_secdrp_packets),
 
 	/* Basic Error */
@@ -175,7 +176,7 @@ static const struct rte_ngbe_xstats_name_off rte_ngbe_stats_strings[] = {
 	HW_XSTAT(rx_length_errors),
 	HW_XSTAT(rx_undersize_errors),
 	HW_XSTAT(rx_fragment_errors),
-	HW_XSTAT(rx_oversize_errors),
+	HW_XSTAT(rx_oversize_cnt),
 	HW_XSTAT(rx_jabber_errors),
 	HW_XSTAT(rx_l3_l4_xsum_error),
 	HW_XSTAT(mac_local_errors),
@@ -1374,9 +1375,8 @@ ngbe_read_stats_registers(struct ngbe_hw *hw,
 	hw_stats->rx_xoff_packets += rd32(hw, NGBE_PBRXLNKXOFF);
 
 	/* DMA Stats */
-	hw_stats->rx_drop_packets += rd32(hw, NGBE_DMARXDROP);
-	hw_stats->tx_drop_packets += rd32(hw, NGBE_DMATXDROP);
 	hw_stats->rx_dma_drop += rd32(hw, NGBE_DMARXDROP);
+	hw_stats->tx_dma_drop += rd32(hw, NGBE_DMATXDROP);
 	hw_stats->tx_secdrp_packets += rd32(hw, NGBE_DMATXSECDROP);
 	hw_stats->rx_packets += rd32(hw, NGBE_DMARXPKT);
 	hw_stats->tx_packets += rd32(hw, NGBE_DMATXPKT);
@@ -1413,7 +1413,7 @@ ngbe_read_stats_registers(struct ngbe_hw *hw,
 			rd64(hw, NGBE_MACTX1024TOMAXL);
 
 	hw_stats->rx_undersize_errors += rd64(hw, NGBE_MACRXERRLENL);
-	hw_stats->rx_oversize_errors += rd32(hw, NGBE_MACRXOVERSIZE);
+	hw_stats->rx_oversize_cnt += rd32(hw, NGBE_MACRXOVERSIZE);
 	hw_stats->rx_jabber_errors += rd32(hw, NGBE_MACRXJABBER);
 
 	/* MNG Stats */
@@ -1512,7 +1512,7 @@ ngbe_dev_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *stats)
 			  hw_stats->rx_mac_short_packet_dropped +
 			  hw_stats->rx_length_errors +
 			  hw_stats->rx_undersize_errors +
-			  hw_stats->rx_oversize_errors +
+			  hw_stats->rdb_drp_cnt +
 			  hw_stats->rx_illegal_byte_errors +
 			  hw_stats->rx_error_bytes +
 			  hw_stats->rx_fragment_errors;
-- 
2.27.0


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

* [PATCH 6/9] net/ngbe: remove semaphore between SW/FW
  2022-09-02  3:00 [PATCH 0/9] Wangxun fixes and supports Jiawen Wu
                   ` (4 preceding siblings ...)
  2022-09-02  3:00 ` [PATCH 5/9] net/ngbe: " Jiawen Wu
@ 2022-09-02  3:00 ` Jiawen Wu
  2022-09-02  3:00 ` [PATCH 7/9] net/ngbe: fix max frame size Jiawen Wu
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Jiawen Wu @ 2022-09-02  3:00 UTC (permalink / raw)
  To: dev; +Cc: Jiawen Wu, stable

Since firmware does not use the semaphore between software and firmware.
Remove useless unilateral semaphore setting.

Fixes: f501a195bded ("net/ngbe: initialize and validate EEPROM")
Cc: stable@dpdk.org

Signed-off-by: Jiawen Wu <jiawenwu@trustnetic.com>
---
 drivers/net/ngbe/base/ngbe_eeprom.c | 32 -----------------------------
 1 file changed, 32 deletions(-)

diff --git a/drivers/net/ngbe/base/ngbe_eeprom.c b/drivers/net/ngbe/base/ngbe_eeprom.c
index 6375ee9b29..104501fa7a 100644
--- a/drivers/net/ngbe/base/ngbe_eeprom.c
+++ b/drivers/net/ngbe/base/ngbe_eeprom.c
@@ -105,37 +105,6 @@ s32 ngbe_get_eeprom_semaphore(struct ngbe_hw *hw)
 			status = 0;
 	}
 
-	/* Now get the semaphore between SW/FW through the SWESMBI bit */
-	if (status == 0) {
-		for (i = 0; i < timeout; i++) {
-			/* Set the SW EEPROM semaphore bit to request access */
-			wr32m(hw, NGBE_MNGSWSYNC,
-				NGBE_MNGSWSYNC_REQ, NGBE_MNGSWSYNC_REQ);
-
-			/*
-			 * If we set the bit successfully then we got the
-			 * semaphore.
-			 */
-			swsm = rd32(hw, NGBE_MNGSWSYNC);
-			if (swsm & NGBE_MNGSWSYNC_REQ)
-				break;
-
-			usec_delay(50);
-		}
-
-		/*
-		 * Release semaphores and return error if SW EEPROM semaphore
-		 * was not granted because we don't have access to the EEPROM
-		 */
-		if (i >= timeout) {
-			DEBUGOUT("SWESMBI Software EEPROM semaphore not granted.");
-			ngbe_release_eeprom_semaphore(hw);
-			status = NGBE_ERR_EEPROM;
-		}
-	} else {
-		DEBUGOUT("Software semaphore SMBI between device drivers not granted.");
-	}
-
 	return status;
 }
 
@@ -147,7 +116,6 @@ s32 ngbe_get_eeprom_semaphore(struct ngbe_hw *hw)
  **/
 void ngbe_release_eeprom_semaphore(struct ngbe_hw *hw)
 {
-	wr32m(hw, NGBE_MNGSWSYNC, NGBE_MNGSWSYNC_REQ, 0);
 	wr32m(hw, NGBE_SWSEM, NGBE_SWSEM_PF, 0);
 	ngbe_flush(hw);
 }
-- 
2.27.0


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

* [PATCH 7/9] net/ngbe: fix max frame size
  2022-09-02  3:00 [PATCH 0/9] Wangxun fixes and supports Jiawen Wu
                   ` (5 preceding siblings ...)
  2022-09-02  3:00 ` [PATCH 6/9] net/ngbe: remove semaphore between SW/FW Jiawen Wu
@ 2022-09-02  3:00 ` Jiawen Wu
  2022-09-02  3:00 ` [PATCH 8/9] net/ngbe: fix YT PHY mixed mode occasionally failing link Jiawen Wu
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Jiawen Wu @ 2022-09-02  3:00 UTC (permalink / raw)
  To: dev; +Cc: Jiawen Wu, stable

Remain the same max frame size after the device restarts.

Fixes: 07baabb6a51a ("net/ngbe: support MTU set")
Cc: stable@dpdk.org

Signed-off-by: Jiawen Wu <jiawenwu@trustnetic.com>
---
 drivers/net/ngbe/base/ngbe_regs.h |  2 +-
 drivers/net/ngbe/base/ngbe_type.h |  2 +-
 drivers/net/ngbe/ngbe_ethdev.c    | 10 +++-------
 3 files changed, 5 insertions(+), 9 deletions(-)

diff --git a/drivers/net/ngbe/base/ngbe_regs.h b/drivers/net/ngbe/base/ngbe_regs.h
index 640e385990..c0e79a2ba7 100644
--- a/drivers/net/ngbe/base/ngbe_regs.h
+++ b/drivers/net/ngbe/base/ngbe_regs.h
@@ -525,7 +525,7 @@ enum ngbe_5tuple_protocol {
 #define   NGBE_PSRCTL_LBENA	       MS(18, 0x1)
 #define NGBE_FRMSZ		       0x015020
 #define   NGBE_FRMSZ_MAX_MASK	       MS(0, 0xFFFF)
-#define   NGBE_FRMSZ_MAX(v)	       LS(v, 0, 0xFFFF)
+#define   NGBE_FRMSZ_MAX(v)	       LS((v) + 4, 0, 0xFFFF)
 #define NGBE_VLANCTL		       0x015088
 #define   NGBE_VLANCTL_TPID_MASK       MS(0, 0xFFFF)
 #define   NGBE_VLANCTL_TPID(v)	       LS(v, 0, 0xFFFF)
diff --git a/drivers/net/ngbe/base/ngbe_type.h b/drivers/net/ngbe/base/ngbe_type.h
index 73111f7950..aa5c41146c 100644
--- a/drivers/net/ngbe/base/ngbe_type.h
+++ b/drivers/net/ngbe/base/ngbe_type.h
@@ -9,7 +9,7 @@
 #define NGBE_LINK_UP_TIME	90 /* 9.0 Seconds */
 
 #define NGBE_FRAME_SIZE_MAX       (9728) /* Maximum frame size, +FCS */
-#define NGBE_FRAME_SIZE_DFT       (1522) /* Default frame size, +FCS */
+#define NGBE_FRAME_SIZE_DFT       (1518) /* Default frame size, +FCS */
 #define NGBE_NUM_POOL             (32)
 #define NGBE_PBRXSIZE_MAX         0x00080000 /* 512KB Packet Buffer */
 #define NGBE_PBTXSIZE_MAX         0x00005000 /* 20KB Packet Buffer */
diff --git a/drivers/net/ngbe/ngbe_ethdev.c b/drivers/net/ngbe/ngbe_ethdev.c
index df32bf64ff..1090ba9a11 100644
--- a/drivers/net/ngbe/ngbe_ethdev.c
+++ b/drivers/net/ngbe/ngbe_ethdev.c
@@ -2473,7 +2473,7 @@ static int
 ngbe_dev_mtu_set(struct rte_eth_dev *dev, uint16_t mtu)
 {
 	struct ngbe_hw *hw = ngbe_dev_hw(dev);
-	uint32_t frame_size = mtu + RTE_ETHER_HDR_LEN + RTE_ETHER_CRC_LEN + 4;
+	uint32_t frame_size = mtu + RTE_ETHER_HDR_LEN + RTE_ETHER_CRC_LEN;
 	struct rte_eth_dev_data *dev_data = dev->data;
 
 	/* If device is started, refuse mtu that requires the support of
@@ -2486,12 +2486,8 @@ ngbe_dev_mtu_set(struct rte_eth_dev *dev, uint16_t mtu)
 		return -EINVAL;
 	}
 
-	if (hw->mode)
-		wr32m(hw, NGBE_FRMSZ, NGBE_FRMSZ_MAX_MASK,
-			NGBE_FRAME_SIZE_MAX);
-	else
-		wr32m(hw, NGBE_FRMSZ, NGBE_FRMSZ_MAX_MASK,
-			NGBE_FRMSZ_MAX(frame_size));
+	wr32m(hw, NGBE_FRMSZ, NGBE_FRMSZ_MAX_MASK,
+		NGBE_FRMSZ_MAX(frame_size));
 
 	return 0;
 }
-- 
2.27.0


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

* [PATCH 8/9] net/ngbe: fix YT PHY mixed mode occasionally failing link
  2022-09-02  3:00 [PATCH 0/9] Wangxun fixes and supports Jiawen Wu
                   ` (6 preceding siblings ...)
  2022-09-02  3:00 ` [PATCH 7/9] net/ngbe: fix max frame size Jiawen Wu
@ 2022-09-02  3:00 ` Jiawen Wu
  2022-09-02  3:00 ` [PATCH 9/9] net/ngbe: support to set link down/up Jiawen Wu
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Jiawen Wu @ 2022-09-02  3:00 UTC (permalink / raw)
  To: dev; +Cc: Jiawen Wu, stable

Add to read link status register of UTP mode, to ensure link status of
mixed mode, for YT PHY.

Fixes: 1c44384fce76 ("net/ngbe: support custom PHY interfaces")
Cc: stable@dpdk.org

Signed-off-by: Jiawen Wu <jiawenwu@trustnetic.com>
---
 drivers/net/ngbe/base/ngbe_phy_yt.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/drivers/net/ngbe/base/ngbe_phy_yt.c b/drivers/net/ngbe/base/ngbe_phy_yt.c
index 562a0dede5..c88946f7c3 100644
--- a/drivers/net/ngbe/base/ngbe_phy_yt.c
+++ b/drivers/net/ngbe/base/ngbe_phy_yt.c
@@ -463,7 +463,16 @@ s32 ngbe_check_phy_link_yt(struct ngbe_hw *hw,
 
 	if (phy_link) {
 		*link_up = true;
+	} else {
+		status = ngbe_read_phy_reg_mdi(hw, YT_SPST, 0, &phy_data);
+		phy_link = phy_data & YT_SPST_LINK;
+		phy_speed = phy_data & YT_SPST_SPEED_MASK;
+
+		if (phy_link)
+			*link_up = true;
+	}
 
+	if (*link_up) {
 		if (phy_speed == YT_SPST_SPEED_1000M)
 			*speed = NGBE_LINK_SPEED_1GB_FULL;
 		else if (phy_speed == YT_SPST_SPEED_100M)
-- 
2.27.0


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

* [PATCH 9/9] net/ngbe: support to set link down/up
  2022-09-02  3:00 [PATCH 0/9] Wangxun fixes and supports Jiawen Wu
                   ` (7 preceding siblings ...)
  2022-09-02  3:00 ` [PATCH 8/9] net/ngbe: fix YT PHY mixed mode occasionally failing link Jiawen Wu
@ 2022-09-02  3:00 ` Jiawen Wu
  2022-09-21 11:46   ` Ferruh Yigit
  2022-09-13  1:55 ` [PATCH 0/9] Wangxun fixes and supports Jiawen Wu
  2022-09-21 11:48 ` Ferruh Yigit
  10 siblings, 1 reply; 14+ messages in thread
From: Jiawen Wu @ 2022-09-02  3:00 UTC (permalink / raw)
  To: dev; +Cc: Jiawen Wu

Add support to set device link down/up.

Signed-off-by: Jiawen Wu <jiawenwu@trustnetic.com>
---
 doc/guides/rel_notes/release_22_11.rst |  4 ++++
 drivers/net/ngbe/base/ngbe_phy.c       |  1 +
 drivers/net/ngbe/base/ngbe_phy_rtl.c   | 13 ++++++++++++
 drivers/net/ngbe/base/ngbe_phy_rtl.h   |  2 ++
 drivers/net/ngbe/ngbe_ethdev.c         | 28 ++++++++++++++++++++++++++
 5 files changed, 48 insertions(+)

diff --git a/doc/guides/rel_notes/release_22_11.rst b/doc/guides/rel_notes/release_22_11.rst
index 8c021cf050..843501c7c2 100644
--- a/doc/guides/rel_notes/release_22_11.rst
+++ b/doc/guides/rel_notes/release_22_11.rst
@@ -84,6 +84,10 @@ API Changes
    Also, make sure to start the actual text at the margin.
    =======================================================
 
+* **Updated Wangxun ngbe driver.**
+
+  * Added support to set device link down/up.
+
 
 ABI Changes
 -----------
diff --git a/drivers/net/ngbe/base/ngbe_phy.c b/drivers/net/ngbe/base/ngbe_phy.c
index 06562b594f..acff7bfebf 100644
--- a/drivers/net/ngbe/base/ngbe_phy.c
+++ b/drivers/net/ngbe/base/ngbe_phy.c
@@ -400,6 +400,7 @@ s32 ngbe_init_phy(struct ngbe_hw *hw)
 		hw->phy.init_hw = ngbe_init_phy_rtl;
 		hw->phy.check_link = ngbe_check_phy_link_rtl;
 		hw->phy.setup_link = ngbe_setup_phy_link_rtl;
+		hw->phy.set_phy_power = ngbe_set_phy_power_rtl;
 		hw->phy.get_adv_pause = ngbe_get_phy_advertised_pause_rtl;
 		hw->phy.get_lp_adv_pause = ngbe_get_phy_lp_advertised_pause_rtl;
 		hw->phy.set_pause_adv = ngbe_set_phy_pause_adv_rtl;
diff --git a/drivers/net/ngbe/base/ngbe_phy_rtl.c b/drivers/net/ngbe/base/ngbe_phy_rtl.c
index 33c5e79e87..9b323624ec 100644
--- a/drivers/net/ngbe/base/ngbe_phy_rtl.c
+++ b/drivers/net/ngbe/base/ngbe_phy_rtl.c
@@ -393,3 +393,16 @@ s32 ngbe_check_phy_link_rtl(struct ngbe_hw *hw, u32 *speed, bool *link_up)
 	return status;
 }
 
+s32 ngbe_set_phy_power_rtl(struct ngbe_hw *hw, bool on)
+{
+	u16 value = 0;
+
+	hw->phy.read_reg(hw, RTL_BMCR, 0, &value);
+	if (on)
+		value &= ~RTL_BMCR_PWDN;
+	else
+		value |= RTL_BMCR_PWDN;
+	hw->phy.write_reg(hw, RTL_BMCR, 0, value);
+
+	return 0;
+}
diff --git a/drivers/net/ngbe/base/ngbe_phy_rtl.h b/drivers/net/ngbe/base/ngbe_phy_rtl.h
index d717a1915c..b2fbc4f74d 100644
--- a/drivers/net/ngbe/base/ngbe_phy_rtl.h
+++ b/drivers/net/ngbe/base/ngbe_phy_rtl.h
@@ -15,6 +15,7 @@
 #define   RTL_BMCR_RESET		MS16(15, 0x1)
 #define	  RTL_BMCR_SPEED_SELECT0	MS16(13, 0x1)
 #define   RTL_BMCR_ANE			MS16(12, 0x1)
+#define   RTL_BMCR_PWDN			MS16(11, 0x1)
 #define   RTL_BMCR_RESTART_AN		MS16(9, 0x1)
 #define   RTL_BMCR_DUPLEX		MS16(8, 0x1)
 #define   RTL_BMCR_SPEED_SELECT1	MS16(6, 0x1)
@@ -88,5 +89,6 @@ s32 ngbe_get_phy_lp_advertised_pause_rtl(struct ngbe_hw *hw, u8 *pause_bit);
 s32 ngbe_set_phy_pause_adv_rtl(struct ngbe_hw *hw, u16 pause_bit);
 s32 ngbe_check_phy_link_rtl(struct ngbe_hw *hw,
 			u32 *speed, bool *link_up);
+s32 ngbe_set_phy_power_rtl(struct ngbe_hw *hw, bool on);
 
 #endif /* _NGBE_PHY_RTL_H_ */
diff --git a/drivers/net/ngbe/ngbe_ethdev.c b/drivers/net/ngbe/ngbe_ethdev.c
index 1090ba9a11..afdb3ad41f 100644
--- a/drivers/net/ngbe/ngbe_ethdev.c
+++ b/drivers/net/ngbe/ngbe_ethdev.c
@@ -1219,6 +1219,32 @@ ngbe_dev_stop(struct rte_eth_dev *dev)
 	return 0;
 }
 
+/*
+ * Set device link up: power on.
+ */
+static int
+ngbe_dev_set_link_up(struct rte_eth_dev *dev)
+{
+	struct ngbe_hw *hw = ngbe_dev_hw(dev);
+
+	hw->phy.set_phy_power(hw, true);
+
+	return 0;
+}
+
+/*
+ * Set device link down: power off.
+ */
+static int
+ngbe_dev_set_link_down(struct rte_eth_dev *dev)
+{
+	struct ngbe_hw *hw = ngbe_dev_hw(dev);
+
+	hw->phy.set_phy_power(hw, false);
+
+	return 0;
+}
+
 /*
  * Reset and stop device.
  */
@@ -3030,6 +3056,8 @@ static const struct eth_dev_ops ngbe_eth_dev_ops = {
 	.dev_infos_get              = ngbe_dev_info_get,
 	.dev_start                  = ngbe_dev_start,
 	.dev_stop                   = ngbe_dev_stop,
+	.dev_set_link_up            = ngbe_dev_set_link_up,
+	.dev_set_link_down          = ngbe_dev_set_link_down,
 	.dev_close                  = ngbe_dev_close,
 	.dev_reset                  = ngbe_dev_reset,
 	.promiscuous_enable         = ngbe_dev_promiscuous_enable,
-- 
2.27.0



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

* RE: [PATCH 0/9] Wangxun fixes and supports
  2022-09-02  3:00 [PATCH 0/9] Wangxun fixes and supports Jiawen Wu
                   ` (8 preceding siblings ...)
  2022-09-02  3:00 ` [PATCH 9/9] net/ngbe: support to set link down/up Jiawen Wu
@ 2022-09-13  1:55 ` Jiawen Wu
  2022-09-21 11:48 ` Ferruh Yigit
  10 siblings, 0 replies; 14+ messages in thread
From: Jiawen Wu @ 2022-09-13  1:55 UTC (permalink / raw)
  To: dev, 'Ferruh Yigit'

Hi,

> -----Original Message-----
> From: Jiawen Wu <jiawenwu@trustnetic.com>
> Sent: Friday, September 2, 2022 11:00 AM
> To: dev@dpdk.org
> Cc: Jiawen Wu <jiawenwu@trustnetic.com>
> Subject: [PATCH 0/9] Wangxun fixes and supports
> 
> Fix some bugs, remove unused logic, support new features.
> 
> Jiawen Wu (9):
>   net/txgbe: fix IPv6 rule in flow director
>   net/txgbe: fix OEM customized LED
>   net/txgbe: remove semaphore between SW/FW
>   net/txgbe: rename some extended statistic
>   net/ngbe: rename some extended statistic
>   net/ngbe: remove semaphore between SW/FW
>   net/ngbe: fix max frame size
>   net/ngbe: fix YT PHY mixed mode occasionally failing link
>   net/ngbe: support to set link down/up
> 
>  doc/guides/rel_notes/release_22_11.rst |  4 +++
>  drivers/net/ngbe/base/ngbe_eeprom.c    | 32 -----------------
>  drivers/net/ngbe/base/ngbe_phy.c       |  1 +
>  drivers/net/ngbe/base/ngbe_phy_rtl.c   | 13 +++++++
>  drivers/net/ngbe/base/ngbe_phy_rtl.h   |  2 ++
>  drivers/net/ngbe/base/ngbe_phy_yt.c    |  9 +++++
>  drivers/net/ngbe/base/ngbe_regs.h      |  2 +-
>  drivers/net/ngbe/base/ngbe_type.h      |  7 ++--
>  drivers/net/ngbe/ngbe_ethdev.c         | 48 +++++++++++++++++++-------
>  drivers/net/txgbe/base/txgbe_eeprom.c  | 32 -----------------
>  drivers/net/txgbe/base/txgbe_mng.c     |  4 +--
>  drivers/net/txgbe/base/txgbe_type.h    |  4 +--
>  drivers/net/txgbe/txgbe_ethdev.c       | 11 +++---
>  drivers/net/txgbe/txgbe_flow.c         | 33 ++++++++++++++----
>  14 files changed, 105 insertions(+), 97 deletions(-)
> 
> --
> 2.27.0
> 


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

* Re: [PATCH 9/9] net/ngbe: support to set link down/up
  2022-09-02  3:00 ` [PATCH 9/9] net/ngbe: support to set link down/up Jiawen Wu
@ 2022-09-21 11:46   ` Ferruh Yigit
  0 siblings, 0 replies; 14+ messages in thread
From: Ferruh Yigit @ 2022-09-21 11:46 UTC (permalink / raw)
  To: Jiawen Wu; +Cc: dev

On 9/2/2022 4:00 AM, Jiawen Wu wrote:
> Add support to set device link down/up.
> 
> Signed-off-by: Jiawen Wu<jiawenwu@trustnetic.com>
> ---
>   doc/guides/rel_notes/release_22_11.rst |  4 ++++
>   drivers/net/ngbe/base/ngbe_phy.c       |  1 +
>   drivers/net/ngbe/base/ngbe_phy_rtl.c   | 13 ++++++++++++
>   drivers/net/ngbe/base/ngbe_phy_rtl.h   |  2 ++
>   drivers/net/ngbe/ngbe_ethdev.c         | 28 ++++++++++++++++++++++++++
>   5 files changed, 48 insertions(+)
> 
> diff --git a/doc/guides/rel_notes/release_22_11.rst b/doc/guides/rel_notes/release_22_11.rst
> index 8c021cf050..843501c7c2 100644
> --- a/doc/guides/rel_notes/release_22_11.rst
> +++ b/doc/guides/rel_notes/release_22_11.rst
> @@ -84,6 +84,10 @@ API Changes
>      Also, make sure to start the actual text at the margin.
>      =======================================================
>   
> +* **Updated Wangxun ngbe driver.**
> +
> +  * Added support to set device link down/up.
> +

This update is in "API Changes" section of the document, which is wrong. 
I will move it to the "New Features" section while merging.

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

* Re: [PATCH 0/9] Wangxun fixes and supports
  2022-09-02  3:00 [PATCH 0/9] Wangxun fixes and supports Jiawen Wu
                   ` (9 preceding siblings ...)
  2022-09-13  1:55 ` [PATCH 0/9] Wangxun fixes and supports Jiawen Wu
@ 2022-09-21 11:48 ` Ferruh Yigit
  10 siblings, 0 replies; 14+ messages in thread
From: Ferruh Yigit @ 2022-09-21 11:48 UTC (permalink / raw)
  To: Jiawen Wu; +Cc: dev

On 9/2/2022 4:00 AM, Jiawen Wu wrote:
> Fix some bugs, remove unused logic, support new features.
> 
> Jiawen Wu (9):
>    net/txgbe: fix IPv6 rule in flow director
>    net/txgbe: fix OEM customized LED
>    net/txgbe: remove semaphore between SW/FW
>    net/txgbe: rename some extended statistic
>    net/ngbe: rename some extended statistic
>    net/ngbe: remove semaphore between SW/FW
>    net/ngbe: fix max frame size
>    net/ngbe: fix YT PHY mixed mode occasionally failing link
>    net/ngbe: support to set link down/up
> 

Series applied to dpdk-next-net/main, thanks.


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

* [PATCH 0/9] Wangxun fixes and supports
@ 2022-02-08 10:11 Jiawen Wu
  0 siblings, 0 replies; 14+ messages in thread
From: Jiawen Wu @ 2022-02-08 10:11 UTC (permalink / raw)
  To: dev; +Cc: Jiawen Wu

Fixed some bugs for txgbe and ngbe, and support more custom functions.

Jiawen Wu (9):
  net/ngbe: fix failed to receive packets
  net/ngbe: fix link interrupt sometimes lost
  net/ngbe: fix Tx pending
  net/ngbe: fix RxTx packet statistics
  net/ngbe: optimize the PHY initialization process
  net/ngbe: add support to custom PHY interfaces
  net: add LED OEM support for wangxun devices
  net/txgbe: fix to set link up and down
  net/txgbe: fix KR auto-negotiation

 doc/guides/rel_notes/release_22_03.rst |   9 ++
 drivers/net/ngbe/base/ngbe_devids.h    |  12 +-
 drivers/net/ngbe/base/ngbe_dummy.h     |   9 ++
 drivers/net/ngbe/base/ngbe_hw.c        | 161 ++++++++++++++++++----
 drivers/net/ngbe/base/ngbe_hw.h        |   3 +
 drivers/net/ngbe/base/ngbe_mng.c       | 106 ++++++++++++++
 drivers/net/ngbe/base/ngbe_mng.h       |  24 ++++
 drivers/net/ngbe/base/ngbe_phy.c       |  27 ++--
 drivers/net/ngbe/base/ngbe_phy.h       |   2 +-
 drivers/net/ngbe/base/ngbe_phy_mvl.c   |  81 +++++++++--
 drivers/net/ngbe/base/ngbe_phy_mvl.h   |   5 +
 drivers/net/ngbe/base/ngbe_phy_rtl.c   |  74 ++++++----
 drivers/net/ngbe/base/ngbe_phy_yt.c    | 182 +++++++++++++++++++++----
 drivers/net/ngbe/base/ngbe_phy_yt.h    |  19 ++-
 drivers/net/ngbe/base/ngbe_regs.h      |  51 +++----
 drivers/net/ngbe/base/ngbe_type.h      |  19 +++
 drivers/net/ngbe/ngbe_ethdev.c         | 142 ++++++++-----------
 drivers/net/ngbe/ngbe_ethdev.h         |   1 +
 drivers/net/txgbe/base/txgbe_hw.c      |  21 +--
 drivers/net/txgbe/base/txgbe_mng.c     |  69 ++++++++++
 drivers/net/txgbe/base/txgbe_mng.h     |   7 +
 drivers/net/txgbe/base/txgbe_phy.c     |   4 +
 drivers/net/txgbe/base/txgbe_regs.h    |  12 +-
 drivers/net/txgbe/txgbe_ethdev.c       |   6 +-
 24 files changed, 815 insertions(+), 231 deletions(-)

-- 
2.21.0.windows.1




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

end of thread, other threads:[~2022-09-21 11:48 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-02  3:00 [PATCH 0/9] Wangxun fixes and supports Jiawen Wu
2022-09-02  3:00 ` [PATCH 1/9] net/txgbe: fix IPv6 rule in flow director Jiawen Wu
2022-09-02  3:00 ` [PATCH 2/9] net/txgbe: fix OEM customized LED Jiawen Wu
2022-09-02  3:00 ` [PATCH 3/9] net/txgbe: remove semaphore between SW/FW Jiawen Wu
2022-09-02  3:00 ` [PATCH 4/9] net/txgbe: rename some extended statistic Jiawen Wu
2022-09-02  3:00 ` [PATCH 5/9] net/ngbe: " Jiawen Wu
2022-09-02  3:00 ` [PATCH 6/9] net/ngbe: remove semaphore between SW/FW Jiawen Wu
2022-09-02  3:00 ` [PATCH 7/9] net/ngbe: fix max frame size Jiawen Wu
2022-09-02  3:00 ` [PATCH 8/9] net/ngbe: fix YT PHY mixed mode occasionally failing link Jiawen Wu
2022-09-02  3:00 ` [PATCH 9/9] net/ngbe: support to set link down/up Jiawen Wu
2022-09-21 11:46   ` Ferruh Yigit
2022-09-13  1:55 ` [PATCH 0/9] Wangxun fixes and supports Jiawen Wu
2022-09-21 11:48 ` Ferruh Yigit
  -- strict thread matches above, loose matches on Subject: below --
2022-02-08 10:11 Jiawen Wu

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).