[dpdk-dev] [PATCH 00/16] nfp: add pf support

Alejandro Lucero alejandro.lucero at netronome.com
Thu Aug 24 18:20:06 CEST 2017


NFP PMD has just had support for SRIOV VFs until now. This patchset adds
support for the PF, but just for being used as another DPDK port. No VF
management is added by now.

NFP is a programmable device and it supports virtual NICs (vNICs) through
firmware implementation. Different firmware applications implement vNICs
for PF devices and VF devices, being number of vNICs dependent on the
firmware and the NFP card available. PF vNIC (virtual) BARs are a subset
of PF PCI device BARs while VF vNIC BARs are same than VF PCI BARs. 

Working with VF vNICs requires a PF driver uploading the firmware and 
doing some NFP configuration. This needs can be only done with the kernel
NFP PF netdev driver by now.

Working with PF vNIC requires the PMD doing the NFP configuration and for
accessing the NFP a specific user space interface is created. NFP Service 
Processor Userspace (NSPU) interface allows to create specific PCI BAR
windows for accessing different parts of the NFP device, including the
Network Service Processor (NSP) itself. The NSPU interface is implemented
as the base for working with the PF.

Alejandro Lucero (16):
  nfp: add nsp user space interface
  nfp: add specific pf probe function
  nfp: add support for new pci id
  nfp: add nsp support for commands
  nfp: add nsp fw upload command
  nfp: add nsp symbol resolution command
  nfp: add fw upload logic
  nfp: add support for vnic config bar mapping
  nfp: add support for vNIC rx/tx bar mappings
  nfp: support pf devices inside pmd initialization
  nfp: allocate eth_dev from pf probe function
  nfp: support pf multiport
  nfp: add nsp support for hw link configuration
  nfp: add support for hw port link configuration
  nfp: read pf port mac addr using nsp
  doc: update nfp with pf support information

 doc/guides/nics/nfp.rst        |  71 +++--
 drivers/net/nfp/Makefile       |   2 +
 drivers/net/nfp/nfp_net.c      | 377 +++++++++++++++++++++++--
 drivers/net/nfp/nfp_net_ctrl.h |   3 +
 drivers/net/nfp/nfp_net_eth.h  |  82 ++++++
 drivers/net/nfp/nfp_net_pmd.h  |   8 +
 drivers/net/nfp/nfp_nfpu.c     | 103 +++++++
 drivers/net/nfp/nfp_nfpu.h     |  55 ++++
 drivers/net/nfp/nfp_nspu.c     | 623 +++++++++++++++++++++++++++++++++++++++++
 drivers/net/nfp/nfp_nspu.h     |  83 ++++++
 10 files changed, 1369 insertions(+), 38 deletions(-)
 create mode 100644 drivers/net/nfp/nfp_net_eth.h
 create mode 100644 drivers/net/nfp/nfp_nfpu.c
 create mode 100644 drivers/net/nfp/nfp_nfpu.h
 create mode 100644 drivers/net/nfp/nfp_nspu.c
 create mode 100644 drivers/net/nfp/nfp_nspu.h

-- 
1.9.1



More information about the dev mailing list