From: Stephen Hemminger <stephen@networkplumber.org>
To: Wenbo Cao <caowenbo@mucse.com>
Cc: thomas@monjalon.net, dev@dpdk.org, ferruh.yigit@amd.com,
andrew.rybchenko@oktetlabs.ru, yaojun@mucse.com
Subject: Re: [PATCH v10 00/28] [v10]drivers/net Add Support mucse N10 Pmd Driver
Date: Tue, 11 Feb 2025 08:34:23 -0800 [thread overview]
Message-ID: <20250211083423.48a1d3ab@hermes.local> (raw)
In-Reply-To: <1739286398-61972-1-git-send-email-caowenbo@mucse.com>
On Tue, 11 Feb 2025 23:06:10 +0800
Wenbo Cao <caowenbo@mucse.com> wrote:
> For This patchset just to support the basic chip init work
> and user can just found the eth_dev, but can't control more.
> For Now just support 2*10g nic,the chip can support
> 2*10g,4*10g,4*1g,8*1g,8*10g.
> The Feature rx side can support rx-cksum-offload,rss,vlan-filter
> flow_clow,uncast_filter,mcast_filter,1588,Jumbo-frame
> The Feature tx side can support tx-cksum-offload,tso,vxlan-tso
> flow director base on ntuple pattern of tcp/udp/ip/ eth_hdr->type
> for sriov is also support.
>
> Because of the chip design defect, for multiple-port mode
> one pci-bdf will have multiple-port (max can have four ports)
> so this code must be care of one bdf init multiple-port.
>
> v10:
> * fixed mingw windows meson issue
> * rnp not support windows for now.
> * change ffs use osdep rte_fls_u32
>
> v9:
> * fixed commit log format check by devtools.
> * fixed code compile issue.
>
> v8:
> * fixed codespell issue.
> * fixed MAINTAINERS file
>
> v7:
> * add support nic basic feature such as rss vlan strip/filter,
> * mtu-change recv/send scater-recv/mutltiple-send.
> * fixed code rationality, advised by Ferruh Yigit.
> v6:
> * fixed the doc(rst) format problem advise by Thomas Monjalon
>
> v5:
> * fixed the symbol name require by the style documentation
>
> v4:
> * one patch has been forgot to upload :(
>
> v3:
> * fixed http://dpdk.org/patch/129830 FreeBSD 13 compile Issue
> * change iobar type to void suggest by Stephen Hemminger
> * add KMOD_DEP support for vfio-pci
> * change run-cmd argument parse check for invalid extra_args
>
> v2:
> * fixed MAINTAIN maillist fullname format
> * fixed driver/net/meson the order issue of new driver to driver list
> * improve virtual point function usage suggest by Stephen Hemminger
>
> Wenbo Cao (28):
> net/rnp: add skeleton
> net/rnp: add ethdev probe and remove
> net/rnp: add log
> net/rnp: support mailbox basic operate
> net/rnp: add device init and uninit
> net/rnp: add get device information operation
> net/rnp: add support MAC promisc mode
> net/rnp: add queue setup and release operations
> net/rnp: add queue stop and start operations
> net/rnp: add support device start stop operations
> net/rnp: add RSS support operations
> net/rnp: add support link update operations
> net/rnp: add support link setup operations
> net/rnp: add Rx burst simple support
> net/rnp: add Tx burst simple support
> net/rnp: add MTU set operation
> net/rnp: add Rx scatter segment version
> net/rnp: add Tx multiple segment version
> net/rnp: add support basic stats operation
> net/rnp: add support xstats operation
> net/rnp: add unicast MAC filter operation
> net/rnp: add supported packet types
> net/rnp: add support Rx checksum offload
> net/rnp: add support Tx TSO offload
> net/rnp: support VLAN offloads
> net/rnp: add support VLAN filters operations
> net/rnp: add queue info operation
> net/rnp: support Rx/Tx burst mode info
>
> .mailmap | 1 +
> MAINTAINERS | 6 +
> doc/guides/nics/features/rnp.ini | 33 +
> doc/guides/nics/index.rst | 1 +
> doc/guides/nics/rnp.rst | 101 ++
> drivers/net/meson.build | 1 +
> drivers/net/rnp/base/meson.build | 28 +
> drivers/net/rnp/base/rnp_bdq_if.c | 398 ++++++
> drivers/net/rnp/base/rnp_bdq_if.h | 154 +++
> drivers/net/rnp/base/rnp_bitrev.h | 64 +
> drivers/net/rnp/base/rnp_common.c | 103 ++
> drivers/net/rnp/base/rnp_common.h | 17 +
> drivers/net/rnp/base/rnp_crc32.c | 37 +
> drivers/net/rnp/base/rnp_crc32.h | 10 +
> drivers/net/rnp/base/rnp_dma_regs.h | 68 +
> drivers/net/rnp/base/rnp_eth_regs.h | 90 ++
> drivers/net/rnp/base/rnp_fw_cmd.c | 162 +++
> drivers/net/rnp/base/rnp_fw_cmd.h | 358 ++++++
> drivers/net/rnp/base/rnp_hw.h | 136 ++
> drivers/net/rnp/base/rnp_mac.c | 366 ++++++
> drivers/net/rnp/base/rnp_mac.h | 34 +
> drivers/net/rnp/base/rnp_mac_regs.h | 207 +++
> drivers/net/rnp/base/rnp_mbx.c | 512 ++++++++
> drivers/net/rnp/base/rnp_mbx.h | 58 +
> drivers/net/rnp/base/rnp_mbx_fw.c | 499 ++++++++
> drivers/net/rnp/base/rnp_mbx_fw.h | 24 +
> drivers/net/rnp/base/rnp_osdep.h | 175 +++
> drivers/net/rnp/meson.build | 27 +
> drivers/net/rnp/rnp.h | 258 ++++
> drivers/net/rnp/rnp_ethdev.c | 1845 +++++++++++++++++++++++++++
> drivers/net/rnp/rnp_link.c | 439 +++++++
> drivers/net/rnp/rnp_link.h | 38 +
> drivers/net/rnp/rnp_logs.h | 36 +
> drivers/net/rnp/rnp_rss.c | 367 ++++++
> drivers/net/rnp/rnp_rss.h | 43 +
> drivers/net/rnp/rnp_rxtx.c | 1820 ++++++++++++++++++++++++++
> drivers/net/rnp/rnp_rxtx.h | 162 +++
> 37 files changed, 8678 insertions(+)
> create mode 100644 doc/guides/nics/features/rnp.ini
> create mode 100644 doc/guides/nics/rnp.rst
> create mode 100644 drivers/net/rnp/base/meson.build
> create mode 100644 drivers/net/rnp/base/rnp_bdq_if.c
> create mode 100644 drivers/net/rnp/base/rnp_bdq_if.h
> create mode 100644 drivers/net/rnp/base/rnp_bitrev.h
> create mode 100644 drivers/net/rnp/base/rnp_common.c
> create mode 100644 drivers/net/rnp/base/rnp_common.h
> create mode 100644 drivers/net/rnp/base/rnp_crc32.c
> create mode 100644 drivers/net/rnp/base/rnp_crc32.h
> create mode 100644 drivers/net/rnp/base/rnp_dma_regs.h
> create mode 100644 drivers/net/rnp/base/rnp_eth_regs.h
> create mode 100644 drivers/net/rnp/base/rnp_fw_cmd.c
> create mode 100644 drivers/net/rnp/base/rnp_fw_cmd.h
> create mode 100644 drivers/net/rnp/base/rnp_hw.h
> create mode 100644 drivers/net/rnp/base/rnp_mac.c
> create mode 100644 drivers/net/rnp/base/rnp_mac.h
> create mode 100644 drivers/net/rnp/base/rnp_mac_regs.h
> create mode 100644 drivers/net/rnp/base/rnp_mbx.c
> create mode 100644 drivers/net/rnp/base/rnp_mbx.h
> create mode 100644 drivers/net/rnp/base/rnp_mbx_fw.c
> create mode 100644 drivers/net/rnp/base/rnp_mbx_fw.h
> create mode 100644 drivers/net/rnp/base/rnp_osdep.h
> create mode 100644 drivers/net/rnp/meson.build
> create mode 100644 drivers/net/rnp/rnp.h
> create mode 100644 drivers/net/rnp/rnp_ethdev.c
> create mode 100644 drivers/net/rnp/rnp_link.c
> create mode 100644 drivers/net/rnp/rnp_link.h
> create mode 100644 drivers/net/rnp/rnp_logs.h
> create mode 100644 drivers/net/rnp/rnp_rss.c
> create mode 100644 drivers/net/rnp/rnp_rss.h
> create mode 100644 drivers/net/rnp/rnp_rxtx.c
> create mode 100644 drivers/net/rnp/rnp_rxtx.h
>
Also the script devtools/test-meson-builds.sh that runs through
different build options, eventually fails at:
User defined options
buildtype : debugoptimized
check_includes : true
cpu_instruction_set : nehalem
default_library : shared
enable_deprecated_libs: *
examples : all
libdir : lib
werror : true
Found ninja-1.12.1 at /usr/bin/ninja
ninja: Entering directory `./build-x86-generic'
[1751/6916] Compiling C object drivers/libtmp_rte_net_rnp.a.p/net_rnp_rnp_ethdev.c.o
FAILED: drivers/libtmp_rte_net_rnp.a.p/net_rnp_rnp_ethdev.c.o
cc -Idrivers/libtmp_rte_net_rnp.a.p -Idrivers -I../drivers -Idrivers/net/rnp -I../drivers/net/rnp -Idrivers/net/rnp/base -I../drivers/net/rnp/base -Ilib/ethdev -I../lib/ethdev -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/meter -I../lib/meter -Idrivers/bus/pci -I../drivers/bus/pci -I../drivers/bus/pci/linux -Ilib/pci -I../lib/pci -Idrivers/bus/vdev -I../drivers/bus/vdev -I/usr/include/x86_64-linux-gnu -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O2 -g -include rte_config.h -Wvla -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-packed-not-aligned -Wno-missing-field-initializers -D_GNU_SOURCE -fPIC -march=nehalem -mrtm -DALLOW_EXPERIMENTAL_API -DALLOW_INTERNAL_API -Wno-format-truncation -Wno-address-of-packed-member -DRTE_LOG_DEFAULT_LOGTYPE=pmd.net.rnp -MD -MQ drivers/libtmp_rte_net_rnp.a.p/net_rnp_rnp_ethdev.c.o -MF drivers/libtmp_rte_net_rnp.a.p/net_rnp_rnp_ethdev.c.o.d -o drivers/libtmp_rte_net_rnp.a.p/net_rnp_rnp_ethdev.c.o -c ../drivers/net/rnp/rnp_ethdev.c
In file included from ../lib/eal/x86/include/rte_atomic.h:11,
from ../lib/eal/include/generic/rte_pause.h:19,
from ../lib/eal/x86/include/rte_pause.h:8,
from ../lib/eal/include/generic/rte_rwlock.h:31,
from ../lib/eal/x86/include/rte_rwlock.h:8,
from ../lib/eal/include/rte_eal_memconfig.h:10,
from ../lib/eal/include/rte_memory.h:21,
from ../lib/eal/include/rte_malloc.h:16,
from ../lib/ethdev/ethdev_pci.h:9,
from ../drivers/net/rnp/rnp_ethdev.c:5:
In function ‘_mm_loadu_si128’,
inlined from ‘rte_mov16’ at ../lib/eal/x86/include/rte_memcpy.h:113:9,
inlined from ‘rte_mov32’ at ../lib/eal/x86/include/rte_memcpy.h:131:2,
inlined from ‘rte_mov64’ at ../lib/eal/x86/include/rte_memcpy.h:149:2,
inlined from ‘rte_mov128’ at ../lib/eal/x86/include/rte_memcpy.h:161:2,
inlined from ‘rte_memcpy_generic’ at ../lib/eal/x86/include/rte_memcpy.h:615:4,
inlined from ‘rte_memcpy’ at ../lib/eal/x86/include/rte_memcpy.h:757:10,
inlined from ‘rnp_mbx_fw_reply_handler’ at ../drivers/net/rnp/rnp_ethdev.c:75:3,
inlined from ‘rnp_process_fw_msg’ at ../drivers/net/rnp/rnp_ethdev.c:113:4,
inlined from ‘rnp_dev_interrupt_handler’ at ../drivers/net/rnp/rnp_ethdev.c:130:2,
inlined from ‘rnp_dev_interrupt_handler’ at ../drivers/net/rnp/rnp_ethdev.c:123:13:
/usr/lib/gcc/x86_64-linux-gnu/14/include/emmintrin.h:706:10: error: array subscript 16 is outside array bounds of ‘uint32_t[64]’ {aka ‘unsigned int[64]’} [-Werror=array-bounds=]
706 | return *__P;
| ^~~~
../drivers/net/rnp/rnp_ethdev.c: In function ‘rnp_dev_interrupt_handler’:
../drivers/net/rnp/rnp_ethdev.c:103:18: note: at offset 256 into object ‘msgbuf’ of size 256
103 | uint32_t msgbuf[64];
| ^~~~~~
cc1: all warnings being treated as errors
[1772/6916] Compiling C object lib/librte_pipeline.a.p/pipeline_rte_table_action.c.o
ninja: build stopped: subcommand failed.
prev parent reply other threads:[~2025-02-11 16:34 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-11 15:06 Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 01/28] net/rnp: add skeleton Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 02/28] net/rnp: add ethdev probe and remove Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 03/28] net/rnp: add log Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 04/28] net/rnp: support mailbox basic operate Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 05/28] net/rnp: add device init and uninit Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 06/28] net/rnp: add get device information operation Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 07/28] net/rnp: add support MAC promisc mode Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 08/28] net/rnp: add queue setup and release operations Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 09/28] net/rnp: add queue stop and start operations Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 10/28] net/rnp: add support device start stop operations Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 11/28] net/rnp: add RSS support operations Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 12/28] net/rnp: add support link update operations Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 13/28] net/rnp: add support link setup operations Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 14/28] net/rnp: add Rx burst simple support Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 15/28] net/rnp: add Tx " Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 16/28] net/rnp: add MTU set operation Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 17/28] net/rnp: add Rx scatter segment version Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 18/28] net/rnp: add Tx multiple " Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 19/28] net/rnp: add support basic stats operation Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 20/28] net/rnp: add support xstats operation Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 21/28] net/rnp: add unicast MAC filter operation Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 22/28] net/rnp: add supported packet types Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 23/28] net/rnp: add support Rx checksum offload Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 24/28] net/rnp: add support Tx TSO offload Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 25/28] net/rnp: support VLAN offloads Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 26/28] net/rnp: add support VLAN filters operations Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 27/28] net/rnp: add queue info operation Wenbo Cao
2025-02-11 15:06 ` [PATCH v10 28/28] net/rnp: support Rx/Tx burst mode info Wenbo Cao
2025-02-11 16:24 ` [PATCH v10 00/28] [v10]drivers/net Add Support mucse N10 Pmd Driver Stephen Hemminger
2025-02-11 16:34 ` Stephen Hemminger [this message]
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=20250211083423.48a1d3ab@hermes.local \
--to=stephen@networkplumber.org \
--cc=andrew.rybchenko@oktetlabs.ru \
--cc=caowenbo@mucse.com \
--cc=dev@dpdk.org \
--cc=ferruh.yigit@amd.com \
--cc=thomas@monjalon.net \
--cc=yaojun@mucse.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).