On Fri, 18 Apr 2025 15:02:38 +0800 Feifei Wang <wff_li...@vip.163.com> wrote:
> *** BLURB HERE *** > The hinic3 PMD (**librte_net_hinic3**) provides poll mode driver support > for 25Gbps/100Gbps/200Gbps Huawei SPx series Network Adapters. > > Feifei Wang (3): > net/hinic3: add intro doc for hinic3 > net/hinic3: add dev ops > net/hinic3: add Rx/Tx functions > > Xin Wang (7): > net/hinic3: add basic header files > net/hinic3: add support for cmdq mechanism > net/hinic3: add NIC event module > net/hinic3: add context and work queue support > net/hinic3: add device initailization > net/hinic3: add MML and EEPROM access feature > net/hinic3: add RSS promiscuous ops > > Yi Chen (8): > net/hinic3: add hardware interfaces of BAR operation > net/hinic3: add eq mechanism function code > net/hinic3: add mgmt module function code > net/hinic3: add module about hardware operation > net/hinic3: add a NIC business configuration module > net/hinic3: add a mailbox communication module > net/hinic3: add FDIR flow control module > drivers/net: add hinic3 PMD build and doc files > > .mailmap | 4 +- > MAINTAINERS | 6 + > doc/guides/nics/features/hinic3.ini | 9 + > doc/guides/nics/hinic3.rst | 52 + > doc/guides/nics/index.rst | 1 + > doc/guides/rel_notes/release_25_07.rst | 32 +- > drivers/net/hinic3/base/hinic3_cmd.h | 231 ++ > drivers/net/hinic3/base/hinic3_cmdq.c | 975 +++++ > drivers/net/hinic3/base/hinic3_cmdq.h | 230 ++ > drivers/net/hinic3/base/hinic3_compat.h | 266 ++ > drivers/net/hinic3/base/hinic3_csr.h | 108 + > drivers/net/hinic3/base/hinic3_eqs.c | 719 ++++ > drivers/net/hinic3/base/hinic3_eqs.h | 98 + > drivers/net/hinic3/base/hinic3_hw_cfg.c | 240 ++ > drivers/net/hinic3/base/hinic3_hw_cfg.h | 121 + > drivers/net/hinic3/base/hinic3_hw_comm.c | 452 +++ > drivers/net/hinic3/base/hinic3_hw_comm.h | 366 ++ > drivers/net/hinic3/base/hinic3_hwdev.c | 573 +++ > drivers/net/hinic3/base/hinic3_hwdev.h | 177 + > drivers/net/hinic3/base/hinic3_hwif.c | 779 ++++ > drivers/net/hinic3/base/hinic3_hwif.h | 142 + > drivers/net/hinic3/base/hinic3_mbox.c | 1392 +++++++ > drivers/net/hinic3/base/hinic3_mbox.h | 199 + > drivers/net/hinic3/base/hinic3_mgmt.c | 392 ++ > drivers/net/hinic3/base/hinic3_mgmt.h | 121 + > drivers/net/hinic3/base/hinic3_nic_cfg.c | 1828 +++++++++ > drivers/net/hinic3/base/hinic3_nic_cfg.h | 1527 ++++++++ > drivers/net/hinic3/base/hinic3_nic_event.c | 433 +++ > drivers/net/hinic3/base/hinic3_nic_event.h | 39 + > drivers/net/hinic3/base/hinic3_wq.c | 148 + > drivers/net/hinic3/base/hinic3_wq.h | 109 + > drivers/net/hinic3/base/meson.build | 50 + > drivers/net/hinic3/hinic3_ethdev.c | 3866 ++++++++++++++++++++ > drivers/net/hinic3/hinic3_ethdev.h | 167 + > drivers/net/hinic3/hinic3_fdir.c | 1394 +++++++ > drivers/net/hinic3/hinic3_fdir.h | 398 ++ > drivers/net/hinic3/hinic3_flow.c | 1700 +++++++++ > drivers/net/hinic3/hinic3_flow.h | 80 + > drivers/net/hinic3/hinic3_nic_io.c | 827 +++++ > drivers/net/hinic3/hinic3_nic_io.h | 169 + > drivers/net/hinic3/hinic3_rx.c | 1096 ++++++ > drivers/net/hinic3/hinic3_rx.h | 356 ++ > drivers/net/hinic3/hinic3_tx.c | 1028 ++++++ > drivers/net/hinic3/hinic3_tx.h | 315 ++ > drivers/net/hinic3/meson.build | 44 + > drivers/net/hinic3/mml/hinic3_dbg.c | 171 + > drivers/net/hinic3/mml/hinic3_dbg.h | 160 + > drivers/net/hinic3/mml/hinic3_mml_cmd.c | 375 ++ > drivers/net/hinic3/mml/hinic3_mml_cmd.h | 131 + > drivers/net/hinic3/mml/hinic3_mml_ioctl.c | 215 ++ > drivers/net/hinic3/mml/hinic3_mml_lib.c | 136 + > drivers/net/hinic3/mml/hinic3_mml_lib.h | 275 ++ > drivers/net/hinic3/mml/hinic3_mml_main.c | 167 + > drivers/net/hinic3/mml/hinic3_mml_queue.c | 749 ++++ > drivers/net/hinic3/mml/hinic3_mml_queue.h | 256 ++ > drivers/net/hinic3/mml/meson.build | 62 + > drivers/net/meson.build | 1 + > 57 files changed, 25926 insertions(+), 31 deletions(-) > 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 > create mode 100644 drivers/net/hinic3/mml/hinic3_dbg.c > create mode 100644 drivers/net/hinic3/mml/hinic3_dbg.h > create mode 100644 drivers/net/hinic3/mml/hinic3_mml_cmd.c > create mode 100644 drivers/net/hinic3/mml/hinic3_mml_cmd.h > create mode 100644 drivers/net/hinic3/mml/hinic3_mml_ioctl.c > create mode 100644 drivers/net/hinic3/mml/hinic3_mml_lib.c > create mode 100644 drivers/net/hinic3/mml/hinic3_mml_lib.h > create mode 100644 drivers/net/hinic3/mml/hinic3_mml_main.c > create mode 100644 drivers/net/hinic3/mml/hinic3_mml_queue.c > create mode 100644 drivers/net/hinic3/mml/hinic3_mml_queue.h > create mode 100644 drivers/net/hinic3/mml/meson.build > If you can in future, please try to fix spelling in base/ files. It would reduce the checkpatch warnings. There are spelling errors in non-base files as well. ### [PATCH] net/hinic3: add dev ops WARNING:TYPO_SPELLING: 'regsitered' may be misspelled - perhaps 'registered'? #327: FILE: drivers/net/hinic3/hinic3_ethdev.c:331: + * The address of parameter (struct rte_eth_dev *) regsitered before. ^^^^^^^^^^ WARNING:TYPO_SPELLING: 'resourece' may be misspelled - perhaps 'resource'? #1893: FILE: drivers/net/hinic3/hinic3_ethdev.c:1897: + * and free io resourece. ^^^^^^^^^ CHECK:CAMELCASE: Avoid CamelCase: <PRIu64> #3522: FILE: drivers/net/hinic3/hinic3_nic_io.c:550: + "err: %d, out_param: %" PRIu64, CHECK:CAMELCASE: Avoid CamelCase: <PRIx64> #3787: FILE: drivers/net/hinic3/hinic3_nic_io.c:815: + PMD_DRV_LOG(INFO, "Update nic feature to 0x%" PRIx64, WARNING:TYPO_SPELLING: 'coverting' may be misspelled - perhaps 'converting'? #3905: FILE: drivers/net/hinic3/hinic3_nic_io.h:100: + /* Hardware will do endianness coverting. */ ^^^^^^^^^ WARNING:TYPO_SPELLING: 'indrect' may be misspelled - perhaps 'indirect'? #4428: FILE: drivers/net/hinic3/hinic3_rx.c:448: + "Set indrect table failed, eth_dev:%s, queue_idx:%d", ^^^^^^^ WARNING:TYPO_SPELLING: 'Does't' may be misspelled - perhaps 'Doesn't'? #4471: FILE: drivers/net/hinic3/hinic3_rx.c:491: + PMD_DRV_LOG(ERR, "Does't support rss hash type: %" PRIu64, ^^^^^^ WARNING:TYPO_SPELLING: 'possition' may be misspelled - perhaps 'position'? #4519: FILE: drivers/net/hinic3/hinic3_rx.c:539: + * Search given queue array to find possition of given id. ^^^^^^^^^ WARNING:TYPO_SPELLING: 'pakcet' may be misspelled - perhaps 'packet'? #4704: FILE: drivers/net/hinic3/hinic3_rx.c:724: + * If RSS is disable, no mbuf in rq, pakcet will be dropped. ^^^^^^ WARNING:TYPO_SPELLING: 'indrect' may be misspelled - perhaps 'indirect'? #4771: FILE: drivers/net/hinic3/hinic3_rx.c:791: + "Refill rq to indrect table failed, " ^^^^^^^ total: 0 errors, 8 warnings, 2 checks, 5700 lines checked ### [PATCH] net/hinic3: add Rx/Tx functions WARNING:TYPO_SPELLING: 'indrect' may be misspelled - perhaps 'indirect'? #213: FILE: drivers/net/hinic3/hinic3_rx.c:955: + "Refill rq to indrect table failed, " ^^^^^^^ WARNING:TYPO_SPELLING: 'warpped' may be misspelled - perhaps 'wrapped'? #1068: FILE: drivers/net/hinic3/hinic3_tx.c:921: + /* Task or bd section maybe warpped for one wqe. */ ^^^^^^^ total: 0 errors, 2 warnings, 0 checks, 1104 lines checked ### [PATCH] net/hinic3: add MML and EEPROM access feature WARNING:TYPO_SPELLING: 'reslut' may be misspelled - perhaps 'result'? #697: FILE: drivers/net/hinic3/mml/hinic3_mml_cmd.c:292: +copy_reslut_to_buffer(void *buf_out, char *reslut, int len) ^^^^^^ WARNING:TYPO_SPELLING: 'reslut' may be misspelled - perhaps 'result'? #701: FILE: drivers/net/hinic3/mml/hinic3_mml_cmd.c:296: + ret = snprintf(buf_out, len - 1, "%s", reslut); ^^^^^^ I notice the rte_flow check fails: $ ./devtools/check-doc-vs-code.sh rte_flow doc out of sync for hinic3 item ah item any item arp_eth_ipv4 item e_tag item esp item eth item fuzzy item geneve item gre item gre_key item gtp item gtp_psc item gtpc item gtpu item higig2 item icmp item icmp6 item icmp6_nd_na item icmp6_nd_ns item icmp6_nd_opt item icmp6_nd_opt_sla_eth item icmp6_nd_opt_tla_eth item igmp item invert item ipv4 item ipv6 item ipv6_ext item mark item meta item mpls item nsh item nvgre item pf item phy_port item port_id item pppoe_proto_id item pppoed item pppoes item raw item sctp item tag item tcp item udp item vf item vlan item vxlan item vxlan_gpe action queue