mbox series

[00/15] net/ngbe: add VF driver support

Message ID 20250109040227.1016-1-zaiyuwang@trustnetic.com (mailing list archive)
Headers
Series net/ngbe: add VF driver support |

Message

Zaiyu Wang Jan. 9, 2025, 4:02 a.m. UTC
This patch adds support to VF device for ngbe PMD

Zaiyu Wang (15):
  net/ngbe: add ethdev probe and remove for VF device
  net/ngbe: add support for PF-VF mailbox interface
  net/ngbe: add hardware configuration code for VF device
  net/ngbe: add promiscuous and allmulticast ops for VF device
  net/ngbe: add set MTU ops for VF device
  net/ngbe: add add/remove/set mac addr ops for VF device
  net/ngbe: add datapath init code for VF device
  net/ngbe: add vlan related ops for VF device
  net/ngbe: add interrupt support for VF device
  net/ngbe: add link update ops for VF device
  net/ngbe: add stats and xstats ops for VF device
  net/ngbe: add start/stop/reset/close ops for VF device
  net/ngbe: add multicast MAC filter ops for VF device
  net/ngbe: add dump registers ops for VF device
  net/ngbe: add some ops which PF has implemented

 doc/guides/nics/features/ngbe_vf.ini |   38 +
 drivers/net/ngbe/base/meson.build    |    1 +
 drivers/net/ngbe/base/ngbe.h         |    1 +
 drivers/net/ngbe/base/ngbe_hw.c      |    4 +
 drivers/net/ngbe/base/ngbe_mbx.c     |  338 +++++++
 drivers/net/ngbe/base/ngbe_mbx.h     |   31 +
 drivers/net/ngbe/base/ngbe_type.h    |   15 +
 drivers/net/ngbe/base/ngbe_vf.c      |  669 +++++++++++++
 drivers/net/ngbe/base/ngbe_vf.h      |   68 ++
 drivers/net/ngbe/meson.build         |    1 +
 drivers/net/ngbe/ngbe_ethdev.h       |    6 +
 drivers/net/ngbe/ngbe_ethdev_vf.c    | 1351 ++++++++++++++++++++++++++
 drivers/net/ngbe/ngbe_rxtx.c         |  210 ++++
 13 files changed, 2733 insertions(+)
 create mode 100644 doc/guides/nics/features/ngbe_vf.ini
 create mode 100644 drivers/net/ngbe/base/ngbe_vf.c
 create mode 100644 drivers/net/ngbe/base/ngbe_vf.h
 create mode 100644 drivers/net/ngbe/ngbe_ethdev_vf.c
  

Comments

Stephen Hemminger Jan. 10, 2025, 4:17 a.m. UTC | #1
On Thu,  9 Jan 2025 12:02:10 +0800
Zaiyu Wang <zaiyuwang@trustnetic.com> wrote:

> This patch adds support to VF device for ngbe PMD
> 
> Zaiyu Wang (15):
>   net/ngbe: add ethdev probe and remove for VF device
>   net/ngbe: add support for PF-VF mailbox interface
>   net/ngbe: add hardware configuration code for VF device
>   net/ngbe: add promiscuous and allmulticast ops for VF device
>   net/ngbe: add set MTU ops for VF device
>   net/ngbe: add add/remove/set mac addr ops for VF device
>   net/ngbe: add datapath init code for VF device
>   net/ngbe: add vlan related ops for VF device
>   net/ngbe: add interrupt support for VF device
>   net/ngbe: add link update ops for VF device
>   net/ngbe: add stats and xstats ops for VF device
>   net/ngbe: add start/stop/reset/close ops for VF device
>   net/ngbe: add multicast MAC filter ops for VF device
>   net/ngbe: add dump registers ops for VF device
>   net/ngbe: add some ops which PF has implemented
> 
>  doc/guides/nics/features/ngbe_vf.ini |   38 +
>  drivers/net/ngbe/base/meson.build    |    1 +
>  drivers/net/ngbe/base/ngbe.h         |    1 +
>  drivers/net/ngbe/base/ngbe_hw.c      |    4 +
>  drivers/net/ngbe/base/ngbe_mbx.c     |  338 +++++++
>  drivers/net/ngbe/base/ngbe_mbx.h     |   31 +
>  drivers/net/ngbe/base/ngbe_type.h    |   15 +
>  drivers/net/ngbe/base/ngbe_vf.c      |  669 +++++++++++++
>  drivers/net/ngbe/base/ngbe_vf.h      |   68 ++
>  drivers/net/ngbe/meson.build         |    1 +
>  drivers/net/ngbe/ngbe_ethdev.h       |    6 +
>  drivers/net/ngbe/ngbe_ethdev_vf.c    | 1351 ++++++++++++++++++++++++++
>  drivers/net/ngbe/ngbe_rxtx.c         |  210 ++++
>  13 files changed, 2733 insertions(+)
>  create mode 100644 doc/guides/nics/features/ngbe_vf.ini
>  create mode 100644 drivers/net/ngbe/base/ngbe_vf.c
>  create mode 100644 drivers/net/ngbe/base/ngbe_vf.h
>  create mode 100644 drivers/net/ngbe/ngbe_ethdev_vf.c

The build fails, please fix and resubmit

*Build Failed #1:
OS: OpenAnolis8.9-64
Target: x86_64-native-linuxapp-gcc
FAILED: drivers/libtmp_rte_net_ngbe.a.p/net_ngbe_ngbe_ethdev_vf.c.o 
gcc -Idrivers/libtmp_rte_net_ngbe.a.p -Idrivers -I../drivers -Idrivers/net/ngbe -I../drivers/net/ngbe -Idrivers/net/ngbe/base -I../drivers/net/ngbe/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 -Ilib/hash -I../lib/hash -Ilib/rcu -I../lib/rcu -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O3 -include rte_config.h -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=native -mrtm -DALLOW_EXPERIMENTAL_API -DALLOW_INTERNAL_API -Wno-format-truncation -DRTE_LOG_DEFAULT_LOGTYPE=pmd.net.ngbe -MD -MQ drivers/libtmp_rte_net_ngbe.a.p/net_ngbe_ngbe_ethdev_vf.c.o -MF drivers/libtmp_rte_net_ngbe.a.p/net_ngbe_ngbe_ethdev_vf.c.o.d -o drivers/libtmp_rte_net_ngbe.a.p/net_ngbe_ngbe_ethdev_vf.c.o -c ../drivers/net/ngbe/ngbe_ethdev_vf.c
../drivers/net/ngbe/ngbe_ethdev_vf.c: In function ‘eth_ngbevf_dev_init’:
../drivers/net/ngbe/ngbe_ethdev_vf.c:222:2: error: implicit declaration of function ‘ngbevf_dev_stats_reset’; did you mean ‘ngbevf_dev_info_get’? [-Werror=implicit-function-declaration]
  ngbevf_dev_stats_reset(eth_dev);
  ^~~~~~~~~~~~~~~~~~~~~~
  ngbevf_dev_info_get
../drivers/net/ngbe/ngbe_ethdev_vf.c:222:2: error: nested extern declaration of ‘ngbevf_dev_stats_reset’ [-Werror=nested-externs]
../drivers/net/ngbe/ngbe_ethdev_vf.c: At top level:
../drivers/net/ngbe/ngbe_ethdev_vf.c:448:1: error: static declaration of ‘ngbevf_dev_stats_reset’ follows non-static declaration
 ngbevf_dev_stats_reset(struct rte_eth_dev *dev)
 ^~~~~~~~~~~~~~~~~~~~~~
../drivers/net/ngbe/ngbe_ethdev_vf.c:222:2: note: previous implicit declaration of ‘ngbevf_dev_stats_reset’ was here
  ngbevf_dev_stats_reset(eth_dev);
  ^~~~~~~~~~~~~~~~~~~~~~