On Fri, 6 Sep 2024 20:13:46 +0800
"WanRenyong" <[email protected]> wrote:
> This xsc PMD (**librte_net_xsc**) provides poll mode driver for Yunsilicon
> metaScale
> serials NICs.
>
> Features:
> ---------
> - MTU update
> - TSO
> - RSS hash
> - RSS key update
> - RSS reta update
> - L3 checksum offload
> - L4 checksum offload
> - Inner L3 checksum
> - Inner L4 checksum
> - Basic stats
>
> Support NICs:
> -------------
> - metaScale-200S Single QSFP56 Port 200GE SmartNIC
> - metaScale-200 Quad QSFP28 Ports 100GE SmartNIC
> - metaScale-50 Dual QSFP28 Port 25GE SmartNIC
> - metaScale-100Q Quad QSFP28 Port 25GE SmartNIC
>
>
> -----
>
> WanRenyong (19):
> net/xsc: add doc and minimum build framework
> net/xsc: add log macro
> net/xsc: add PCI device probe and remove
> net/xsc: add xsc device init and uninit
> net/xsc: add ioctl command interface
> net/xsc: initialize hardware information
> net/xsc: add representor ports probe
> net/xsc: create eth devices for representor ports
> net/xsc: initial representor eth device
> net/xsc: add ethdev configure and rxtx queue setup ops
> net/xsc: add mailbox and structure
> net/xsc: add ethdev RSS hash ops
> net/xsc: add ethdev start and stop ops
> net/xsc: add ethdev Rx burst
> net/xsc: add ethdev Tx burst
> net/xsc: configure xsc device hardware table
> net/xsc: add dev link and MTU ops
> net/xsc: add dev infos get
> net/xsc: add dev basic stats ops
>
> .mailmap | 4 +
> MAINTAINERS | 9 +
> doc/guides/nics/features/xsc.ini | 18 +
> doc/guides/nics/index.rst | 1 +
> doc/guides/nics/xsc.rst | 31 +
> drivers/net/meson.build | 1 +
> drivers/net/xsc/meson.build | 36 +
> drivers/net/xsc/xsc_ctrl.c | 64 ++
> drivers/net/xsc/xsc_ctrl.h | 314 +++++++
> drivers/net/xsc/xsc_defs.h | 61 ++
> drivers/net/xsc/xsc_dev.c | 326 +++++++
> drivers/net/xsc/xsc_dev.h | 99 +++
> drivers/net/xsc/xsc_ethdev.c | 1434 ++++++++++++++++++++++++++++++
> drivers/net/xsc/xsc_ethdev.h | 81 ++
> drivers/net/xsc/xsc_flow.c | 167 ++++
> drivers/net/xsc/xsc_flow.h | 67 ++
> drivers/net/xsc/xsc_log.h | 44 +
> drivers/net/xsc/xsc_rxtx.c | 445 +++++++++
> drivers/net/xsc/xsc_rxtx.h | 214 +++++
> drivers/net/xsc/xsc_utils.c | 346 +++++++
> drivers/net/xsc/xsc_utils.h | 27 +
> 21 files changed, 3789 insertions(+)
> create mode 100644 doc/guides/nics/features/xsc.ini
> create mode 100644 doc/guides/nics/xsc.rst
> create mode 100644 drivers/net/xsc/meson.build
> create mode 100644 drivers/net/xsc/xsc_ctrl.c
> create mode 100644 drivers/net/xsc/xsc_ctrl.h
> create mode 100644 drivers/net/xsc/xsc_defs.h
> create mode 100644 drivers/net/xsc/xsc_dev.c
> create mode 100644 drivers/net/xsc/xsc_dev.h
> create mode 100644 drivers/net/xsc/xsc_ethdev.c
> create mode 100644 drivers/net/xsc/xsc_ethdev.h
> create mode 100644 drivers/net/xsc/xsc_flow.c
> create mode 100644 drivers/net/xsc/xsc_flow.h
> create mode 100644 drivers/net/xsc/xsc_log.h
> create mode 100644 drivers/net/xsc/xsc_rxtx.c
> create mode 100644 drivers/net/xsc/xsc_rxtx.h
> create mode 100644 drivers/net/xsc/xsc_utils.c
> create mode 100644 drivers/net/xsc/xsc_utils.h
>
Please fix the build error:
drivers/libtmp_rte_net_xsc.a.p/net_xsc_xsc_vfio.c.o -c
../drivers/net/xsc/xsc_vfio.c
../drivers/net/xsc/xsc_vfio.c:482:26: error: cast from 'volatile struct xsc_cqe
(*)[]' to 'void *' drops volatile qualifier [-Werror,-Wcast-qual]
482 | cq_info->cqes = (void *)cqes;
| ^
Probably best not to mark that arg as volatile.
Do not try and solve the problem by disabling the warning.
And address the review feedback and resubmit when ready.