All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 00/18] net/nfp: add PF support
@ 2017-09-01 14:12 Alejandro Lucero
  2017-09-01 14:12 ` [PATCH v2 01/18] net/nfp: add NSP user space interface Alejandro Lucero
                   ` (18 more replies)
  0 siblings, 19 replies; 28+ messages in thread
From: Alejandro Lucero @ 2017-09-01 14:12 UTC (permalink / raw)
  To: dev

NFP PMD has just had support for SRIOV VFs until now. This patch set 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, doing
some NFP configuration and creating/destroying VFs. This 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.

v2:
 - fix commits headers
 - update nic guide
 - add info to release notes
 - creating different features files for PF and VF
 - fix typo inside nfp_nspu.c

Alejandro Lucero (18):
  net/nfp: add NSP user space interface
  net/nfp: add specific PF probe function
  net/nfp: add support for new PCI id
  net/nfp: add NSP support for commands
  net/nfp: add NSP FW upload command
  net/nfp: add NSP symbol resolution command
  net/nfp: add FW upload logic
  net/nfp: add support for vnic config bar mapping
  net/nfp: add support for vNIC Rx/Tx bar mappings
  net/nfp: support PF devices inside PMD initialization
  net/nfp: allocate ethernet device from PF probe function
  net/nfp: support PF multiport
  net/nfp: add NSP support for HW link configuration
  net/nfp: add support for HW port link configuration
  net/nfp: read PF port MAC addr using NSP
  doc: update NFP with PF support information
  doc: update release notes with NFP PF support
  doc: create different features files for NFP drivers

 doc/guides/nics/features/nfp.ini       |  29 --
 doc/guides/nics/features/nfp_pf.ini    |  28 ++
 doc/guides/nics/features/nfp_vf.ini    |  28 ++
 doc/guides/nics/nfp.rst                |  77 +++-
 doc/guides/rel_notes/release_17_11.rst |   9 +
 drivers/net/nfp/Makefile               |   2 +
 drivers/net/nfp/nfp_net.c              | 382 +++++++++++++++++++-
 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 +++++
 14 files changed, 1445 insertions(+), 67 deletions(-)
 delete mode 100644 doc/guides/nics/features/nfp.ini
 create mode 100644 doc/guides/nics/features/nfp_pf.ini
 create mode 100644 doc/guides/nics/features/nfp_vf.ini
 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

^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2017-09-19 10:49 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-01 14:12 [PATCH v2 00/18] net/nfp: add PF support Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 01/18] net/nfp: add NSP user space interface Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 02/18] net/nfp: add specific PF probe function Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 03/18] net/nfp: add support for new PCI id Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 04/18] net/nfp: add NSP support for commands Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 05/18] net/nfp: add NSP FW upload command Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 06/18] net/nfp: add NSP symbol resolution command Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 07/18] net/nfp: add FW upload logic Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 08/18] net/nfp: add support for vnic config bar mapping Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 09/18] net/nfp: add support for vNIC Rx/Tx bar mappings Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 10/18] net/nfp: support PF devices inside PMD initialization Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 11/18] net/nfp: allocate ethernet device from PF probe function Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 12/18] net/nfp: support PF multiport Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 13/18] net/nfp: add NSP support for HW link configuration Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 14/18] net/nfp: add support for HW port " Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 15/18] net/nfp: read PF port MAC addr using NSP Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 16/18] doc: update NFP with PF support information Alejandro Lucero
2017-09-04 14:20   ` Mcnamara, John
2017-09-04 16:03     ` Alejandro Lucero
2017-09-06  9:53       ` Ferruh Yigit
2017-09-06 10:43         ` Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 17/18] doc: update release notes with NFP PF support Alejandro Lucero
2017-09-04 16:12   ` Mcnamara, John
2017-09-19  9:53   ` Ferruh Yigit
2017-09-19 10:49     ` Alejandro Lucero
2017-09-01 14:12 ` [PATCH v2 18/18] doc: create different features files for NFP drivers Alejandro Lucero
2017-09-04 16:29   ` Mcnamara, John
2017-09-06 16:15 ` [PATCH v2 00/18] net/nfp: add PF support Ferruh Yigit

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.