From: Stephen Hemminger <stephen@networkplumber.org>
To: Feifei Wang <wff_light@vip.163.com>
Cc: dev@dpdk.org
Subject: Re: [V9 00/17] add-hinic3-PMD-driver
Date: Tue, 9 Sep 2025 15:42:49 -0700 [thread overview]
Message-ID: <20250909154249.13633bb7@hermes.local> (raw)
In-Reply-To: <20250909073157.14968-1-wff_light@vip.163.com>
On Tue, 9 Sep 2025 15:31:28 +0800
Feifei Wang <wff_light@vip.163.com> wrote:
> The hinic3 PMD (**librte_net_hinic3**) provides poll mode driver support
> for 25Gbps/100Gbps/200Gbps Huawei SPx series Network Adapters.
>
> v9:
> -resolve type conflict issue
>
> v8:
> -resolve CI compile error
> -modify mbox section
>
> v7:
> -remove unused-functions
>
> v6:
> -modify based on community comments
> -remove mml files
>
> v5:
> -fix build err
>
> v4:
> -solve patch application conflict issue
>
> v3:
> -fix checkpatchs errors issue
>
> v2:
> -modify CI compile errors
>
> v1:
> -modify community comments and compile issues
> -remove the compilation flags in the meson build
> -remove (void) cur_link_machine_state
> -remove '*** BLURE HERE ***' in cover letter
>
> .mailmap | 4 +-
> MAINTAINERS | 6 +
> doc/guides/nics/features/hinic3.ini | 60 +
> doc/guides/nics/hinic3.rst | 47 +
> doc/guides/nics/index.rst | 1 +
> doc/guides/rel_notes/release_25_11.rst | 4 +
> drivers/net/hinic3/base/hinic3_cmd.h | 156 +
> drivers/net/hinic3/base/hinic3_cmdq.c | 972 +++++
> drivers/net/hinic3/base/hinic3_cmdq.h | 230 ++
> drivers/net/hinic3/base/hinic3_compat.h | 144 +
> drivers/net/hinic3/base/hinic3_csr.h | 108 +
> drivers/net/hinic3/base/hinic3_eqs.c | 710 ++++
> drivers/net/hinic3/base/hinic3_eqs.h | 98 +
> drivers/net/hinic3/base/hinic3_hw_cfg.c | 194 +
> drivers/net/hinic3/base/hinic3_hw_cfg.h | 117 +
> drivers/net/hinic3/base/hinic3_hw_comm.c | 449 +++
> drivers/net/hinic3/base/hinic3_hw_comm.h | 365 ++
> drivers/net/hinic3/base/hinic3_hwdev.c | 558 +++
> drivers/net/hinic3/base/hinic3_hwdev.h | 183 +
> drivers/net/hinic3/base/hinic3_hwif.c | 741 ++++
> drivers/net/hinic3/base/hinic3_hwif.h | 144 +
> drivers/net/hinic3/base/hinic3_mbox.c | 1225 +++++++
> drivers/net/hinic3/base/hinic3_mbox.h | 181 +
> drivers/net/hinic3/base/hinic3_mgmt.c | 355 ++
> drivers/net/hinic3/base/hinic3_mgmt.h | 112 +
> drivers/net/hinic3/base/hinic3_nic_cfg.c | 1795 ++++++++++
> drivers/net/hinic3/base/hinic3_nic_cfg.h | 1530 ++++++++
> drivers/net/hinic3/base/hinic3_nic_event.c | 407 +++
> drivers/net/hinic3/base/hinic3_nic_event.h | 38 +
> drivers/net/hinic3/base/hinic3_wq.c | 140 +
> drivers/net/hinic3/base/hinic3_wq.h | 109 +
> drivers/net/hinic3/base/meson.build | 50 +
> drivers/net/hinic3/hinic3_ethdev.c | 3782 ++++++++++++++++++++
> drivers/net/hinic3/hinic3_ethdev.h | 164 +
> drivers/net/hinic3/hinic3_fdir.c | 1379 +++++++
> drivers/net/hinic3/hinic3_fdir.h | 398 ++
> drivers/net/hinic3/hinic3_flow.c | 1501 ++++++++
> drivers/net/hinic3/hinic3_flow.h | 196 +
> drivers/net/hinic3/hinic3_nic_io.c | 806 +++++
> drivers/net/hinic3/hinic3_nic_io.h | 171 +
> drivers/net/hinic3/hinic3_rx.c | 1067 ++++++
> drivers/net/hinic3/hinic3_rx.h | 353 ++
> drivers/net/hinic3/hinic3_tx.c | 1024 ++++++
> drivers/net/hinic3/hinic3_tx.h | 313 ++
> drivers/net/hinic3/meson.build | 31 +
> drivers/net/meson.build | 1 +
> 46 files changed, 22418 insertions(+), 1 deletion(-)
> create mode 100644 doc/guides/nics/features/hinic3.ini
> create mode 100644 doc/guides/nics/hinic3.rst
> create mode 100644 drivers/net/hinic3/base/hinic3_cmd.h
> create mode 100644 drivers/net/hinic3/base/hinic3_cmdq.c
> create mode 100644 drivers/net/hinic3/base/hinic3_cmdq.h
> create mode 100644 drivers/net/hinic3/base/hinic3_compat.h
> create mode 100644 drivers/net/hinic3/base/hinic3_csr.h
> create mode 100644 drivers/net/hinic3/base/hinic3_eqs.c
> create mode 100644 drivers/net/hinic3/base/hinic3_eqs.h
> create mode 100644 drivers/net/hinic3/base/hinic3_hw_cfg.c
> create mode 100644 drivers/net/hinic3/base/hinic3_hw_cfg.h
> create mode 100644 drivers/net/hinic3/base/hinic3_hw_comm.c
> create mode 100644 drivers/net/hinic3/base/hinic3_hw_comm.h
> create mode 100644 drivers/net/hinic3/base/hinic3_hwdev.c
> create mode 100644 drivers/net/hinic3/base/hinic3_hwdev.h
> create mode 100644 drivers/net/hinic3/base/hinic3_hwif.c
> create mode 100644 drivers/net/hinic3/base/hinic3_hwif.h
> create mode 100644 drivers/net/hinic3/base/hinic3_mbox.c
> create mode 100644 drivers/net/hinic3/base/hinic3_mbox.h
> create mode 100644 drivers/net/hinic3/base/hinic3_mgmt.c
> create mode 100644 drivers/net/hinic3/base/hinic3_mgmt.h
> create mode 100644 drivers/net/hinic3/base/hinic3_nic_cfg.c
> create mode 100644 drivers/net/hinic3/base/hinic3_nic_cfg.h
> create mode 100644 drivers/net/hinic3/base/hinic3_nic_event.c
> create mode 100644 drivers/net/hinic3/base/hinic3_nic_event.h
> create mode 100644 drivers/net/hinic3/base/hinic3_wq.c
> create mode 100644 drivers/net/hinic3/base/hinic3_wq.h
> create mode 100644 drivers/net/hinic3/base/meson.build
> create mode 100644 drivers/net/hinic3/hinic3_ethdev.c
> create mode 100644 drivers/net/hinic3/hinic3_ethdev.h
> create mode 100644 drivers/net/hinic3/hinic3_fdir.c
> create mode 100644 drivers/net/hinic3/hinic3_fdir.h
> create mode 100644 drivers/net/hinic3/hinic3_flow.c
> create mode 100644 drivers/net/hinic3/hinic3_flow.h
> create mode 100644 drivers/net/hinic3/hinic3_nic_io.c
> create mode 100644 drivers/net/hinic3/hinic3_nic_io.h
> create mode 100644 drivers/net/hinic3/hinic3_rx.c
> create mode 100644 drivers/net/hinic3/hinic3_rx.h
> create mode 100644 drivers/net/hinic3/hinic3_tx.c
> create mode 100644 drivers/net/hinic3/hinic3_tx.h
> create mode 100644 drivers/net/hinic3/meson.build
>
Most of this driver is fine, a few more things.
1. Since DPDK applications are often statically linked, drivers should make sure
that all global symbols have the same prefix. For this driver I see:
$ nm ./build/drivers/librte_net_hinic3.a | grep ' [TDB] ' | grep -v hinic3
00000000000000e0 T cfg_mbx_vf_proc_msg
0000000000000040 T pf_handle_mgmt_comm_event
0000000000000030 T vf_handle_pf_comm_mbox
0000000000000310 T get_port_info
2. Don't use rte_memcpy() for simple fixed size copies. For this driver replace
all use of rte_memcpy with memcpy which has more checking
3. Why is a cast needed here?
rx_free_thresh = (uint16_t)((rx_conf->rx_free_thresh)
? rx_conf->rx_free_thresh
: HINIC3_DEFAULT_RX_FREE_THRESH);
Probably just need to add u here:
:#define HINIC3_DEFAULT_RX_FREE_THRESH 32u
Casts are the enemy of compiler checking.
4. Prefer that messages not be broken across lines, it makes it harder
to search source for where error message is. Don't worry if format line is
a little long.
Instead:
if (err || out_param != 0) {
PMD_DRV_LOG(ERR,
"Set SQ ctxts failed, err: %d, out_param: %" PRIu64,
err, out_param);
err = -EFAULT;
break;
}
Same extra line breaks elsewhere.
5. Please fix these warnings, instead of stifling them.
# The driver runs only on arch64 machine, remove 32bit warnings
if not dpdk_conf.get('RTE_ARCH_64')
extra_flags += [
'-Wno-int-to-pointer-cast',
'-Wno-pointer-to-int-cast',
]
endif
6. Having to add meson instructions for static library() seems like something
that could be fixed elsewhere. Why is this in base/meson.build.
7. The code in hinic3_dev_rx_queue_start() is checking that rq_id < dev->data->nb_rx_queues.
But this condition is already checked in ethdev layer via eth_dev_validate_rx_queue.
Same useless check in hinc3_dev_rx_queue_stop() and hnic3_dev_tx_queue_stop().
And in hinc3_dev_rx_queue_intr_enable/disable
8. Don't stub out rx_queue_count, rx_descriptor_status, and tx_descriptor_status
If driver doesn't implement these, leave it NULL. Ethdev fills in a dummy operation for you.
9. Don't log things exposed by API at INFO level.
For example, probe or set_lro. Put at DEBUG level.
10. Driver features says it has "CRC offload". The documentation is confusing
but driver must support KEEP_CRC for this.
11. Driver says it supports ptypes, but it does not (see ptypes_get).
12. Why does hinic3_xstats_cal_num return a signed value? Looks like it should be
unsigned. Then can take off cast in xstats_get().
13. When handling regular stats_get() best to count all queues even if queue
is larger than RTE_ETHDEV_QUEUE_STATS_CNTRS. Just don't fill in per-queue value for those
queues. Discards don't count as input packets. Also extra paren here.
13, Why does reading stats clear rx_mbuf_alloc_failed? That should be cleared in reset.
Something like this maybe:
diff --git a/drivers/net/hinic3/hinic3_ethdev.c b/drivers/net/hinic3/hinic3_ethdev.c
index b83e632d54..75d7ac3ca2 100644
--- a/drivers/net/hinic3/hinic3_ethdev.c
+++ b/drivers/net/hinic3/hinic3_ethdev.c
@@ -2644,9 +2644,7 @@ hinic3_dev_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *stats)
{
struct hinic3_nic_dev *nic_dev = HINIC3_ETH_DEV_TO_PRIVATE_NIC_DEV(dev);
struct hinic3_vport_stats vport_stats;
- struct hinic3_rxq *rxq = NULL;
- struct hinic3_txq *txq = NULL;
- int i, err, q_num;
+ int err;
uint64_t rx_discards_pmd = 0;
err = hinic3_get_vport_stats(nic_dev->hwdev, &vport_stats);
@@ -2656,25 +2654,23 @@ hinic3_dev_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *stats)
return err;
}
- dev->data->rx_mbuf_alloc_failed = 0;
-
/* Rx queue stats. */
- q_num = (nic_dev->num_rqs < RTE_ETHDEV_QUEUE_STAT_CNTRS)
- ? nic_dev->num_rqs
- : RTE_ETHDEV_QUEUE_STAT_CNTRS;
- for (i = 0; i < q_num; i++) {
- rxq = nic_dev->rxqs[i];
+ for (unsigned i = 0; i < nic_dev->num_rqs; i++) {
+ struct hinic3_rxq *rxq = nic_dev->rxqs[i];
+
#ifdef HINIC3_XSTAT_MBUF_USE
rxq->rxq_stats.rx_left_mbuf_bytes =
rxq->rxq_stats.rx_alloc_mbuf_bytes -
rxq->rxq_stats.rx_free_mbuf_bytes;
#endif
rxq->rxq_stats.errors = rxq->rxq_stats.csum_errors +
- rxq->rxq_stats.other_errors;
+ rxq->rxq_stats.other_errors;
- stats->q_ipackets[i] = rxq->rxq_stats.packets;
- stats->q_ibytes[i] = rxq->rxq_stats.bytes;
- stats->q_errors[i] = rxq->rxq_stats.errors;
+ if (i < RTE_ETHDEV_QUEUE_STAT_CNTRS) {
+ stats->q_ipackets[i] = rxq->rxq_stats.packets;
+ stats->q_ibytes[i] = rxq->rxq_stats.bytes;
+ stats->q_errors[i] = rxq->rxq_stats.errors;
+ }
stats->ierrors += rxq->rxq_stats.errors;
rx_discards_pmd += rxq->rxq_stats.dropped;
@@ -2682,15 +2678,14 @@ hinic3_dev_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *stats)
}
/* Tx queue stats. */
- q_num = (nic_dev->num_sqs < RTE_ETHDEV_QUEUE_STAT_CNTRS)
- ? nic_dev->num_sqs
- : RTE_ETHDEV_QUEUE_STAT_CNTRS;
- for (i = 0; i < q_num; i++) {
- txq = nic_dev->txqs[i];
- stats->q_opackets[i] = txq->txq_stats.packets;
- stats->q_obytes[i] = txq->txq_stats.bytes;
- stats->oerrors += (txq->txq_stats.tx_busy +
- txq->txq_stats.offload_errors);
+ for (unsigned int i = 0; i < nic_dev->num_sqs; i++) {
+ struct hinic3_txq *txq = nic_dev->txqs[i];
+
+ stats->oerrors += txq->txq_stats.tx_busy + txq->txq_stats.offload_errors;
+ if (i < RTE_ETHDEV_QUEUE_STAT_CNTRS) {
+ stats->q_opackets[i] = txq->txq_stats.packets;
+ stats->q_obytes[i] = txq->txq_stats.bytes;
+ }
}
/* Vport stats. */
@@ -2698,22 +2693,21 @@ hinic3_dev_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *stats)
stats->imissed = vport_stats.rx_discard_vport + rx_discards_pmd;
- stats->ipackets =
- (vport_stats.rx_unicast_pkts_vport +
- vport_stats.rx_multicast_pkts_vport +
- vport_stats.rx_broadcast_pkts_vport - rx_discards_pmd);
+ stats->ipackets = vport_stats.rx_unicast_pkts_vport +
+ vport_stats.rx_multicast_pkts_vport +
+ vport_stats.rx_broadcast_pkts_vport;
- stats->opackets = (vport_stats.tx_unicast_pkts_vport +
- vport_stats.tx_multicast_pkts_vport +
- vport_stats.tx_broadcast_pkts_vport);
+ stats->opackets = vport_stats.tx_unicast_pkts_vport +
+ vport_stats.tx_multicast_pkts_vport +
+ vport_stats.tx_broadcast_pkts_vport;
- stats->ibytes = (vport_stats.rx_unicast_bytes_vport +
- vport_stats.rx_multicast_bytes_vport +
- vport_stats.rx_broadcast_bytes_vport);
+ stats->ibytes = vport_stats.rx_unicast_bytes_vport +
+ vport_stats.rx_multicast_bytes_vport +
+ vport_stats.rx_broadcast_bytes_vport;
- stats->obytes = (vport_stats.tx_unicast_bytes_vport +
- vport_stats.tx_multicast_bytes_vport +
- vport_stats.tx_broadcast_bytes_vport);
+ stats->obytes = vport_stats.tx_unicast_bytes_vport +
+ vport_stats.tx_multicast_bytes_vport +
+ vport_stats.tx_broadcast_bytes_vport;
return 0;
}
@@ -2735,6 +2729,8 @@ hinic3_dev_stats_reset(struct rte_eth_dev *dev)
int qid;
int err;
+ dev->data->rx_mbuf_alloc_failed = 0;
+
err = hinic3_clear_vport_stats(nic_dev->hwdev);
if (err)
return err;
next prev parent reply other threads:[~2025-09-09 22:43 UTC|newest]
Thread overview: 301+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-18 9:05 [RFC 00/18] add hinic3 PMD driver Feifei Wang
2025-04-18 9:05 ` [RFC 01/18] net/hinic3: add intro doc for hinic3 Feifei Wang
2025-04-18 9:05 ` [RFC 02/18] net/hinic3: add basic header files Feifei Wang
2025-04-18 9:05 ` [RFC 03/18] net/hinic3: add hardware interfaces of BAR operation Feifei Wang
2025-04-18 9:05 ` [RFC 04/18] net/hinic3: add support for cmdq mechanism Feifei Wang
2025-04-18 9:05 ` [RFC 05/18] net/hinic3: add NIC event module Feifei Wang
2025-04-18 9:05 ` [RFC 06/18] net/hinic3: add eq mechanism function code Feifei Wang
2025-04-18 9:05 ` [RFC 07/18] net/hinic3: add mgmt module " Feifei Wang
2025-04-18 9:05 ` [RFC 08/18] net/hinic3: add module about hardware operation Feifei Wang
2025-04-18 9:05 ` [RFC 09/18] net/hinic3: add a NIC business configuration module Feifei Wang
2025-04-18 9:05 ` [RFC 10/18] net/hinic3: add context and work queue support Feifei Wang
2025-04-18 9:05 ` [RFC 11/18] net/hinic3: add a mailbox communication module Feifei Wang
2025-04-18 9:05 ` [RFC 12/18] net/hinic3: add device initailization Feifei Wang
2025-04-18 9:05 ` [RFC 13/18] net/hinic3: add dev ops Feifei Wang
2025-06-26 21:29 ` Stephen Hemminger
2025-06-26 21:30 ` Stephen Hemminger
2025-06-26 21:32 ` Stephen Hemminger
2025-04-18 9:06 ` [RFC 14/18] net/hinic3: add Rx/Tx functions Feifei Wang
2025-06-26 21:40 ` Stephen Hemminger
2025-06-26 21:41 ` Stephen Hemminger
2025-04-18 9:06 ` [RFC 15/18] net/hinic3: add MML and EEPROM access feature Feifei Wang
2025-04-18 9:06 ` [RFC 16/18] net/hinic3: add RSS promiscuous ops Feifei Wang
2025-04-18 9:06 ` [RFC 17/18] net/hinic3: add FDIR flow control module Feifei Wang
2025-04-18 18:25 ` Stephen Hemminger
2025-04-18 18:27 ` Stephen Hemminger
2025-04-18 18:28 ` Stephen Hemminger
2025-04-18 18:30 ` Stephen Hemminger
2025-04-18 9:06 ` [RFC 18/18] drivers/net: add hinic3 PMD build and doc files Feifei Wang
2025-04-18 17:22 ` Stephen Hemminger
2025-04-19 2:52 ` 回复: " wangfeifei (J)
2025-05-29 8:14 ` [PATCH v1 00/18] add hinic3 pmd driver Feifei
2025-05-29 8:15 ` [PATCH v1 01/18] This patch adds some basic files to describe the hinic3 driver Feifei
2025-05-29 8:15 ` [PATCH v1 02/18] net/hinic3: add basic header files Feifei
2025-05-29 8:15 ` [PATCH v1 03/18] net/hinic3: add hardware interfaces of BAR operation Feifei
2025-05-29 8:15 ` [PATCH v1 04/18] net/hinic3: add support for cmdq mechanism Feifei
2025-05-29 8:15 ` [PATCH v1 05/18] net/hinic3: add NIC event module Feifei
2025-05-29 8:15 ` [PATCH v1 06/18] net/hinic3: add eq mechanism function code Feifei
2025-05-29 8:15 ` [PATCH v1 07/18] net/hinic3: add mgmt module " Feifei
2025-05-29 8:15 ` [PATCH v1 08/18] net/hinic3: add module about hardware operation Feifei
2025-05-29 8:15 ` [PATCH v1 09/18] net/hinic3: add a NIC business configuration module Feifei
2025-05-29 8:15 ` [PATCH v1 10/18] net/hinic3: add context and work queue support Feifei
2025-05-29 8:15 ` [PATCH v1 11/18] net/hinic3: add a mailbox communication module Feifei
2025-05-29 8:15 ` [PATCH v1 12/18] net/hinic3: add device initialization Feifei
2025-05-29 8:15 ` [PATCH v1 13/18] net/hinic3: add dev ops Feifei
2025-05-29 8:15 ` [PATCH v1 14/18] net/hinic3: add Rx/Tx functions Feifei
2025-05-29 8:15 ` [PATCH v1 15/18] net/hinic3: add MML and EEPROM access feature Feifei
2025-05-29 8:15 ` [PATCH v1 16/18] net/hinic3: add RSS promiscuous ops Feifei
2025-05-29 8:15 ` [PATCH v1 17/18] net/hinic3: add FDIR flow control module Feifei
2025-05-29 8:15 ` [PATCH v1 18/18] drivers/net: add hinic3 PMD build and doc files Feifei
2025-04-18 18:18 ` [RFC 00/18] add hinic3 PMD driver Stephen Hemminger
2025-04-19 2:44 ` 回复: " wangfeifei (J)
2025-04-18 18:20 ` Stephen Hemminger
2025-04-18 18:32 ` Stephen Hemminger
2025-04-19 3:30 ` 回复: " wangfeifei (J)
2025-06-04 2:52 ` Stephen Hemminger
2025-06-09 16:40 ` Stephen Hemminger
2025-06-25 2:27 ` [V2 00/18] add hinic3 pmd driver Feifei Wang
2025-06-25 2:27 ` [V2 01/18] add some basic files about hinic3 driver Feifei Wang
2025-06-26 15:46 ` Stephen Hemminger
2025-06-26 15:58 ` Stephen Hemminger
2025-06-25 2:27 ` [V2 02/18] net/hinic3: add basic header files Feifei Wang
2025-06-25 2:27 ` [V2 03/18] net/hinic3: add hardware interfaces of BAR operation Feifei Wang
2025-06-25 2:28 ` [V2 04/18] net/hinic3: add support for cmdq mechanism Feifei Wang
2025-06-25 2:28 ` [V2 05/18] net/hinic3: add NIC event module Feifei Wang
2025-06-25 2:28 ` [V2 06/18] net/hinic3: add eq mechanism function code Feifei Wang
2025-06-25 2:28 ` [V2 07/18] net/hinic3: add mgmt module " Feifei Wang
2025-06-25 2:28 ` [V2 08/18] net/hinic3: add module about hardware operation Feifei Wang
2025-06-25 2:28 ` [V2 09/18] net/hinic3: add a NIC business configuration module Feifei Wang
2025-06-25 2:28 ` [V2 10/18] net/hinic3: add context and work queue support Feifei Wang
2025-06-25 2:28 ` [V2 11/18] net/hinic3: add a mailbox communication module Feifei Wang
2025-06-25 2:28 ` [V2 12/18] net/hinic3: add device initialization Feifei Wang
2025-06-25 2:28 ` [V2 13/18] net/hinic3: add dev ops Feifei Wang
2025-06-25 2:28 ` [V2 14/18] net/hinic3: add Rx/Tx functions Feifei Wang
2025-06-26 20:04 ` Stephen Hemminger
2025-06-25 2:28 ` [V2 15/18] net/hinic3: add MML and EEPROM access feature Feifei Wang
2025-06-25 2:28 ` [V2 16/18] net/hinic3: add RSS promiscuous ops Feifei Wang
2025-06-25 2:28 ` [V2 17/18] net/hinic3: add FDIR flow control module Feifei Wang
2025-06-26 15:59 ` Stephen Hemminger
2025-06-26 19:58 ` Stephen Hemminger
2025-06-25 2:28 ` [V2 18/18] drivers/net: add hinic3 PMD build and doc files Feifei Wang
2025-06-26 15:47 ` [V2 00/18] add hinic3 pmd driver Stephen Hemminger
2025-06-26 21:41 ` Stephen Hemminger
2025-07-08 15:47 ` Stephen Hemminger
2025-06-28 7:25 ` [V3 " Feifei Wang
2025-06-28 7:25 ` [V3 01/18] add some basic files about hinic3 driver Feifei Wang
2025-06-29 17:57 ` Stephen Hemminger
2025-06-28 7:25 ` [V3 02/18] net/hinic3: add basic header files Feifei Wang
2025-06-28 7:25 ` [V3 03/18] net/hinic3: add hardware interfaces of BAR operation Feifei Wang
2025-06-28 7:25 ` [V3 04/18] net/hinic3: add support for cmdq mechanism Feifei Wang
2025-06-28 7:25 ` [V3 05/18] net/hinic3: add NIC event module Feifei Wang
2025-06-28 7:25 ` [V3 06/18] net/hinic3: add eq mechanism function code Feifei Wang
2025-06-28 7:25 ` [V3 07/18] net/hinic3: add mgmt module " Feifei Wang
2025-06-28 7:25 ` [V3 08/18] net/hinic3: add module about hardware operation Feifei Wang
2025-06-28 7:25 ` [V3 09/18] net/hinic3: add a NIC business configuration module Feifei Wang
2025-06-28 7:25 ` [V3 10/18] net/hinic3: add context and work queue support Feifei Wang
2025-06-28 7:25 ` [V3 11/18] net/hinic3: add a mailbox communication module Feifei Wang
2025-06-28 7:25 ` [V3 12/18] net/hinic3: add device initialization Feifei Wang
2025-06-28 7:25 ` [V3 13/18] net/hinic3: add dev ops Feifei Wang
2025-06-28 7:25 ` [V3 14/18] net/hinic3: add Rx/Tx functions Feifei Wang
2025-06-29 18:00 ` Stephen Hemminger
2025-06-28 7:25 ` [V3 15/18] net/hinic3: add MML and EEPROM access feature Feifei Wang
2025-06-28 7:25 ` [V3 16/18] net/hinic3: add RSS promiscuous ops Feifei Wang
2025-06-28 7:25 ` [V3 17/18] net/hinic3: add FDIR flow control module Feifei Wang
2025-06-28 7:25 ` [V3 18/18] drivers/net: add hinic3 PMD build and doc files Feifei Wang
2025-06-28 15:04 ` Stephen Hemminger
2025-07-01 1:41 ` [V4 00/18] add hinic3 pmd driver Feifei Wang
2025-07-01 1:41 ` [V4 01/18] doc: add some basic files to describe the hinic3 driver Feifei Wang
2025-07-01 1:41 ` [V4 02/18] net/hinic3: add basic header files Feifei Wang
2025-07-01 1:41 ` [V4 03/18] net/hinic3: add hardware interfaces of BAR operation Feifei Wang
2025-07-01 1:41 ` [V4 04/18] net/hinic3: add support for cmdq mechanism Feifei Wang
2025-07-01 1:41 ` [V4 05/18] net/hinic3: add NIC event module Feifei Wang
2025-07-01 1:41 ` [V4 06/18] net/hinic3: add eq mechanism function code Feifei Wang
2025-07-01 1:41 ` [V4 07/18] net/hinic3: add mgmt module " Feifei Wang
2025-07-01 1:41 ` [V4 08/18] net/hinic3: add module about hardware operation Feifei Wang
2025-07-01 1:42 ` [V4 09/18] net/hinic3: add a NIC business configuration module Feifei Wang
2025-07-01 1:42 ` [V4 10/18] net/hinic3: add context and work queue support Feifei Wang
2025-07-01 1:42 ` [V4 11/18] net/hinic3: add a mailbox communication module Feifei Wang
2025-07-01 1:42 ` [V4 12/18] net/hinic3: add device initialization Feifei Wang
2025-07-01 1:42 ` [V4 13/18] net/hinic3: add dev ops Feifei Wang
2025-07-01 1:42 ` [V4 14/18] net/hinic3: add Rx/Tx functions Feifei Wang
2025-07-01 1:42 ` [V4 15/18] net/hinic3: add MML and EEPROM access feature Feifei Wang
2025-07-01 1:42 ` [V4 16/18] net/hinic3: add RSS promiscuous ops Feifei Wang
2025-07-01 1:42 ` [V4 17/18] net/hinic3: add FDIR flow control module Feifei Wang
2025-07-01 1:42 ` [V4 18/18] drivers/net: add hinic3 PMD build and doc files Feifei Wang
2025-07-01 13:53 ` [V4 00/18] add hinic3 pmd driver Stephen Hemminger
2025-07-02 2:09 ` [V5 " Feifei Wang
2025-07-02 2:09 ` [V5 01/18] doc: add some basic files to describe the hinic3 driver Feifei Wang
2025-08-21 1:25 ` fengchengwen
2025-07-02 2:09 ` [V5 02/18] net/hinic3: add basic header files Feifei Wang
2025-08-03 17:19 ` Stephen Hemminger
2025-08-21 1:51 ` fengchengwen
2025-07-02 2:09 ` [V5 03/18] net/hinic3: add hardware interfaces of BAR operation Feifei Wang
2025-08-21 2:13 ` fengchengwen
2025-07-02 2:09 ` [V5 04/18] net/hinic3: add support for cmdq mechanism Feifei Wang
2025-08-21 3:03 ` fengchengwen
2025-07-02 2:09 ` [V5 05/18] net/hinic3: add NIC event module Feifei Wang
2025-08-21 3:25 ` fengchengwen
2025-07-02 2:09 ` [V5 06/18] net/hinic3: add eq mechanism function code Feifei Wang
2025-08-21 4:06 ` fengchengwen
2025-07-02 2:09 ` [V5 07/18] net/hinic3: add mgmt module " Feifei Wang
2025-07-02 2:09 ` [V5 08/18] net/hinic3: add module about hardware operation Feifei Wang
2025-08-21 6:20 ` fengchengwen
2025-07-02 2:09 ` [V5 09/18] net/hinic3: add a NIC business configuration module Feifei Wang
2025-08-21 6:34 ` fengchengwen
2025-07-02 2:09 ` [V5 10/18] net/hinic3: add context and work queue support Feifei Wang
2025-08-21 6:41 ` fengchengwen
2025-07-02 2:09 ` [V5 11/18] net/hinic3: add a mailbox communication module Feifei Wang
2025-08-21 6:48 ` fengchengwen
2025-07-02 2:09 ` [V5 12/18] net/hinic3: add device initialization Feifei Wang
2025-08-21 6:58 ` fengchengwen
2025-07-02 2:09 ` [V5 13/18] net/hinic3: add dev ops Feifei Wang
2025-08-03 17:24 ` Stephen Hemminger
2025-08-21 7:43 ` fengchengwen
2025-07-02 2:09 ` [V5 14/18] net/hinic3: add Rx/Tx functions Feifei Wang
2025-08-21 8:05 ` fengchengwen
2025-07-02 2:09 ` [V5 15/18] net/hinic3: add MML and EEPROM access feature Feifei Wang
2025-08-21 8:13 ` fengchengwen
2025-07-02 2:09 ` [V5 16/18] net/hinic3: add RSS promiscuous ops Feifei Wang
2025-08-21 8:22 ` fengchengwen
2025-07-02 2:09 ` [V5 17/18] net/hinic3: add FDIR flow control module Feifei Wang
2025-08-21 8:38 ` fengchengwen
2025-07-02 2:09 ` [V5 18/18] drivers/net: add hinic3 PMD build and doc files Feifei Wang
2025-08-21 8:44 ` fengchengwen
2025-07-02 14:55 ` [V5 00/18] add hinic3 pmd driver Stephen Hemminger
2025-07-07 3:27 ` 回复: " wangfeifei (J)
2025-07-07 3:32 ` Stephen Hemminger
2025-07-07 7:39 ` 回复: " wangfeifei (J)
2025-08-30 12:39 ` Feifei Wang
2025-08-30 12:39 ` [V5 01/18] doc: add some basic files to describe the hinic3 driver Feifei Wang
2025-08-30 12:39 ` [V5 02/18] net/hinic3: add basic header files Feifei Wang
2025-08-30 12:39 ` [V5 03/18] net/hinic3: add hardware interfaces of BAR operation Feifei Wang
2025-08-30 12:39 ` [V5 04/18] net/hinic3: add support for cmdq mechanism Feifei Wang
2025-08-30 12:39 ` [V5 05/18] net/hinic3: add NIC event module Feifei Wang
2025-08-30 12:39 ` [V5 06/18] net/hinic3: add eq mechanism function code Feifei Wang
2025-08-30 12:39 ` [V5 07/18] net/hinic3: add mgmt module " Feifei Wang
2025-08-30 12:39 ` [V5 08/18] net/hinic3: add module about hardware operation Feifei Wang
2025-08-30 12:39 ` [V5 09/18] net/hinic3: add a NIC business configuration module Feifei Wang
2025-08-30 12:39 ` [V5 10/18] net/hinic3: add context and work queue support Feifei Wang
2025-08-30 12:39 ` [V5 11/18] net/hinic3: add a mailbox communication module Feifei Wang
2025-08-30 12:39 ` [V5 12/18] net/hinic3: add device initialization Feifei Wang
2025-08-30 12:39 ` [V5 13/18] net/hinic3: add dev ops Feifei Wang
2025-08-30 12:39 ` [V5 14/18] net/hinic3: add Rx/Tx functions Feifei Wang
2025-08-30 12:39 ` [V5 15/18] net/hinic3: add MML and EEPROM access feature Feifei Wang
2025-08-30 12:39 ` [V5 16/18] net/hinic3: add RSS promiscuous ops Feifei Wang
2025-08-30 12:39 ` [V5 17/18] net/hinic3: add FDIR flow control module Feifei Wang
2025-08-30 12:39 ` [V5 18/18] drivers/net: add hinic3 PMD build and doc files Feifei Wang
2025-08-30 12:43 ` [V6 00/17] add-hinic3-PMD-driver Feifei Wang
2025-08-30 12:43 ` [V6 01/17] doc: add hinic3 driver Feifei Wang
2025-08-30 12:43 ` [V6 02/17] net/hinic3: add basic header files Feifei Wang
2025-08-30 12:43 ` [V6 03/17] net/hinic3: add hardware interfaces of BAR operation Feifei Wang
2025-08-30 12:43 ` [V6 04/17] net/hinic3: add support for cmdq mechanism Feifei Wang
2025-08-30 12:43 ` [V6 05/17] net/hinic3: add NIC event module Feifei Wang
2025-08-30 12:43 ` [V6 06/17] net/hinic3: add eq mechanism Feifei Wang
2025-08-30 12:43 ` [V6 07/17] net/hinic3: add mgmt module function code Feifei Wang
2025-08-30 12:43 ` [V6 08/17] net/hinic3: add module about hardware operation Feifei Wang
2025-08-30 12:43 ` [V6 09/17] net/hinic3: add a NIC business configuration module Feifei Wang
2025-08-30 12:43 ` [V6 10/17] net/hinic3: add context and work queue support Feifei Wang
2025-08-30 12:43 ` [V6 11/17] net/hinic3: add a mailbox communication module Feifei Wang
2025-08-30 12:43 ` [V6 12/17] net/hinic3: add device initialization Feifei Wang
2025-08-30 12:43 ` [V6 13/17] net/hinic3: add dev ops Feifei Wang
2025-08-30 12:43 ` [V6 14/17] net/hinic3: add Rx/Tx functions Feifei Wang
2025-08-30 12:43 ` [V6 15/17] net/hinic3: add RSS promiscuous ops Feifei Wang
2025-08-30 12:43 ` [V6 16/17] net/hinic3: add flow control and FDIR module Feifei Wang
2025-08-30 12:43 ` [V6 17/17] drivers/net: add hinic3 PMD build and doc files Feifei Wang
2025-08-30 15:38 ` [V6 00/17] add-hinic3-PMD-driver Stephen Hemminger
2025-08-30 15:42 ` Stephen Hemminger
2025-09-01 11:10 ` [V7 " Feifei Wang
2025-09-01 11:10 ` [V7 01/17] doc: add hinic3 driver Feifei Wang
2025-09-01 11:10 ` [V7 02/17] net/hinic3: add basic header files Feifei Wang
2025-09-01 11:10 ` [V7 03/17] net/hinic3: add hardware interfaces of BAR operation Feifei Wang
2025-09-01 11:10 ` [V7 04/17] net/hinic3: add support for cmdq mechanism Feifei Wang
2025-09-01 11:10 ` [V7 05/17] net/hinic3: add NIC event module Feifei Wang
2025-09-01 11:10 ` [V7 06/17] net/hinic3: add eq mechanism Feifei Wang
2025-09-01 11:10 ` [V7 07/17] net/hinic3: add mgmt module function code Feifei Wang
2025-09-01 11:10 ` [V7 08/17] net/hinic3: add module about hardware operation Feifei Wang
2025-09-01 11:10 ` [V7 09/17] net/hinic3: add a NIC business configuration module Feifei Wang
2025-09-01 11:10 ` [V7 10/17] net/hinic3: add context and work queue support Feifei Wang
2025-09-01 11:10 ` [V7 11/17] net/hinic3: add a mailbox communication module Feifei Wang
2025-09-01 11:10 ` [V7 12/17] net/hinic3: add device initialization Feifei Wang
2025-09-01 11:10 ` [V7 13/17] net/hinic3: add dev ops Feifei Wang
2025-09-01 11:10 ` [V7 14/17] net/hinic3: add Rx/Tx functions Feifei Wang
2025-09-01 11:10 ` [V7 15/17] net/hinic3: add RSS promiscuous ops Feifei Wang
2025-09-01 11:10 ` [V7 16/17] net/hinic3: add flow control and FDIR module Feifei Wang
2025-09-01 11:10 ` [V7 17/17] drivers/net: add hinic3 PMD build and doc files Feifei Wang
2025-09-02 4:01 ` [V7 00/17] add-hinic3-PMD-driver Feifei Wang
2025-09-02 4:01 ` [V7 01/17] doc: add hinic3 driver Feifei Wang
2025-09-02 4:01 ` [V7 02/17] net/hinic3: add basic header files Feifei Wang
2025-09-02 4:01 ` [V7 03/17] net/hinic3: add hardware interfaces of BAR operation Feifei Wang
2025-09-02 4:01 ` [V7 04/17] net/hinic3: add support for cmdq mechanism Feifei Wang
2025-09-02 4:01 ` [V7 05/17] net/hinic3: add NIC event module Feifei Wang
2025-09-02 4:01 ` [V7 06/17] net/hinic3: add eq mechanism Feifei Wang
2025-09-02 4:01 ` [V7 07/17] net/hinic3: add mgmt module function code Feifei Wang
2025-09-02 4:01 ` [V7 08/17] net/hinic3: add module about hardware operation Feifei Wang
2025-09-02 4:01 ` [V7 09/17] net/hinic3: add a NIC business configuration module Feifei Wang
2025-09-02 4:01 ` [V7 10/17] net/hinic3: add context and work queue support Feifei Wang
2025-09-02 4:01 ` [V7 11/17] net/hinic3: add a mailbox communication module Feifei Wang
2025-09-02 4:01 ` [V7 12/17] net/hinic3: add device initialization Feifei Wang
2025-09-02 4:01 ` [V7 13/17] net/hinic3: add dev ops Feifei Wang
2025-09-02 4:01 ` [V7 14/17] net/hinic3: add Rx/Tx functions Feifei Wang
2025-09-02 4:01 ` [V7 15/17] net/hinic3: add RSS promiscuous ops Feifei Wang
2025-09-02 4:01 ` [V7 16/17] net/hinic3: add flow control and FDIR module Feifei Wang
2025-09-02 4:01 ` [V7 17/17] drivers/net: add hinic3 PMD build and doc files Feifei Wang
2025-09-06 4:12 ` [V7 00/17] add-hinic3-PMD-driver Stephen Hemminger
2025-09-08 1:42 ` 回复: " wangfeifei (J)
2025-09-08 13:52 ` [V8 " Feifei Wang
2025-09-08 13:52 ` [V8 01/17] doc: add hinic3 driver Feifei Wang
2025-09-08 13:52 ` [V8 02/17] net/hinic3: add basic header files Feifei Wang
2025-09-08 13:52 ` [V8 03/17] net/hinic3: add hardware interfaces of BAR operation Feifei Wang
2025-09-08 13:52 ` [V8 04/17] net/hinic3: add support for cmdq mechanism Feifei Wang
2025-09-08 13:52 ` [V8 05/17] net/hinic3: add NIC event module Feifei Wang
2025-09-08 13:52 ` [V8 06/17] net/hinic3: add eq mechanism Feifei Wang
2025-09-08 13:52 ` [V8 07/17] net/hinic3: add mgmt module function code Feifei Wang
2025-09-08 13:52 ` [V8 08/17] net/hinic3: add module about hardware operation Feifei Wang
2025-09-08 13:52 ` [V8 09/17] net/hinic3: add a NIC business configuration module Feifei Wang
2025-09-08 13:52 ` [V8 10/17] net/hinic3: add context and work queue support Feifei Wang
2025-09-08 13:52 ` [V8 11/17] net/hinic3: add a mailbox communication module Feifei Wang
2025-09-08 13:52 ` [V8 12/17] net/hinic3: add device initialization Feifei Wang
2025-09-08 13:52 ` [V8 13/17] net/hinic3: add dev ops Feifei Wang
2025-09-08 13:52 ` [V8 14/17] net/hinic3: add Rx/Tx functions Feifei Wang
2025-09-08 13:52 ` [V8 15/17] net/hinic3: add RSS promiscuous ops Feifei Wang
2025-09-08 13:52 ` [V8 16/17] net/hinic3: add flow control and FDIR module Feifei Wang
2025-09-08 13:52 ` [V8 17/17] drivers/net: add hinic3 PMD build and doc files Feifei Wang
2025-09-08 23:12 ` [V8 00/17] add-hinic3-PMD-driver Stephen Hemminger
2025-09-09 7:31 ` [V9 " Feifei Wang
2025-09-09 7:31 ` [V9 01/17] doc: add hinic3 driver Feifei Wang
2025-09-09 7:31 ` [V9 02/17] net/hinic3: add basic header files Feifei Wang
2025-09-09 7:31 ` [V9 03/17] net/hinic3: add hardware interfaces of BAR operation Feifei Wang
2025-09-09 7:31 ` [V9 04/17] net/hinic3: add support for cmdq mechanism Feifei Wang
2025-09-09 7:31 ` [V9 05/17] net/hinic3: add NIC event module Feifei Wang
2025-09-09 7:31 ` [V9 06/17] net/hinic3: add eq mechanism Feifei Wang
2025-09-09 7:31 ` [V9 07/17] net/hinic3: add mgmt module function code Feifei Wang
2025-09-09 7:31 ` [V9 08/17] net/hinic3: add module about hardware operation Feifei Wang
2025-09-09 7:31 ` [V9 09/17] net/hinic3: add a NIC business configuration module Feifei Wang
2025-09-09 7:31 ` [V9 10/17] net/hinic3: add context and work queue support Feifei Wang
2025-09-09 7:31 ` [V9 11/17] net/hinic3: add a mailbox communication module Feifei Wang
2025-09-09 7:31 ` [V9 12/17] net/hinic3: add device initialization Feifei Wang
2025-09-09 7:31 ` [V9 13/17] net/hinic3: add dev ops Feifei Wang
2025-09-09 7:31 ` [V9 14/17] net/hinic3: add Rx/Tx functions Feifei Wang
2025-09-09 7:31 ` [V9 15/17] net/hinic3: add RSS promiscuous ops Feifei Wang
2025-09-09 7:31 ` [V9 16/17] net/hinic3: add flow control and FDIR module Feifei Wang
2025-09-09 7:31 ` [V9 17/17] drivers/net: add hinic3 PMD build and doc files Feifei Wang
2025-09-09 22:42 ` Stephen Hemminger [this message]
2025-09-10 12:46 ` 回复: [V9 00/17] add-hinic3-PMD-driver wangfeifei (J)
2025-09-10 13:44 ` [V10 " Feifei Wang
2025-09-10 13:44 ` [V10 01/17] doc: add hinic3 driver Feifei Wang
2025-09-10 13:44 ` [V10 02/17] net/hinic3: add basic header files Feifei Wang
2025-09-10 13:44 ` [V10 03/17] net/hinic3: add hardware interfaces of BAR operation Feifei Wang
2025-09-10 13:44 ` [V10 04/17] net/hinic3: add support for cmdq mechanism Feifei Wang
2025-09-10 13:44 ` [V10 05/17] net/hinic3: add NIC event module Feifei Wang
2025-09-10 13:44 ` [V10 06/17] net/hinic3: add eq mechanism Feifei Wang
2025-09-10 13:44 ` [V10 07/17] net/hinic3: add mgmt module function code Feifei Wang
2025-09-10 13:44 ` [V10 08/17] net/hinic3: add module about hardware operation Feifei Wang
2025-09-10 13:44 ` [V10 09/17] net/hinic3: add a NIC business configuration module Feifei Wang
2025-09-10 13:44 ` [V10 10/17] net/hinic3: add context and work queue support Feifei Wang
2025-09-10 13:44 ` [V10 11/17] net/hinic3: add a mailbox communication module Feifei Wang
2025-09-10 13:44 ` [V10 12/17] net/hinic3: add device initialization Feifei Wang
2025-09-10 13:44 ` [V10 13/17] net/hinic3: add dev ops Feifei Wang
2025-09-10 13:44 ` [V10 14/17] net/hinic3: add Rx/Tx functions Feifei Wang
2025-09-10 13:44 ` [V10 15/17] net/hinic3: add RSS promiscuous ops Feifei Wang
2025-09-10 13:44 ` [V10 16/17] net/hinic3: add flow control and FDIR module Feifei Wang
2025-09-10 13:44 ` [V10 17/17] drivers/net: add hinic3 PMD build and doc files Feifei Wang
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=20250909154249.13633bb7@hermes.local \
--to=stephen@networkplumber.org \
--cc=dev@dpdk.org \
--cc=wff_light@vip.163.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).