From: Martin Spinler <[email protected]>

This series implements real multiport for better user experience.

The existing driver creates one ethdev/port for one PCI device.
As the CESNET-NDK based cards aren't capable to represent each
Ethernet port by own PCI device, new driver implementation
processes real port configuration from firmware/card and switches
from rte_eth_dev_pci_generic_probe to multiple rte_eth_dev_create calls.

---
Depends-on: patch-37245 ("doc/nfb: update release notes for nfb driver")

v8:
* removed double usage of TAILQ_REMOVE
* added "ready" bit to private struct for syncing of the data
  shared with secondary processes on init
* added "ret" to nfb_ifc_create_params for use in failed
  nfb_eth_dev_create_for_ifc() called from rte_kvargs_process();
  now returns the right error value
* added bounds check on queue and MAC indexes in mapping
* added bounds check on queue index in queue setup
* added NULL check after rte_eth_dev_get_by_name()
* added errno check after strtoul()
* added integer overflow check in port validation
* added comment with usage of separate nfb handles 
* used base 10 for port number as strtoul() param

Martin Spinler (8):
  net/nfb: prepare for indirect queue mapping scheme
  net/nfb: create one ethdev per ethernet port
  net/nfb: add vdev as alternative device probe method
  net/nfb: add device argument "port" to limit used ports
  net/nfb: init only MACs associated with device
  net/nfb: add compatible cards to driver PCI ID table
  net/nfb: report firmware version
  doc/nfb: cleanup and update guide

 doc/guides/nics/features/nfb.ini       |   4 +
 doc/guides/nics/nfb.rst                | 187 +++++-----
 doc/guides/rel_notes/release_26_03.rst |   6 +
 drivers/net/nfb/meson.build            |   1 +
 drivers/net/nfb/nfb.h                  |  57 ++-
 drivers/net/nfb/nfb_ethdev.c           | 487 +++++++++++++++++++------
 drivers/net/nfb/nfb_rx.c               |  33 +-
 drivers/net/nfb/nfb_rx.h               |   9 +-
 drivers/net/nfb/nfb_tx.c               |  30 +-
 drivers/net/nfb/nfb_tx.h               |   7 +-
 drivers/net/nfb/nfb_vdev.c             | 107 ++++++
 11 files changed, 672 insertions(+), 256 deletions(-)
 create mode 100644 drivers/net/nfb/nfb_vdev.c

-- 
2.53.0

Reply via email to