[dpdk-dev] [PATCH v2 0/4] NFP PF support based on new CPP interface

Alejandro Lucero alejandro.lucero at netronome.com
Thu Apr 5 16:39:44 CEST 2018


I did not create the patchset with the -v flag so just the first one has
the v2 tag.

I will remove the patches and send them again.

Apologies.

On Thu, Apr 5, 2018 at 4:28 PM, Alejandro Lucero <
alejandro.lucero at netronome.com> wrote:

> NFP PMD PF support requires to access the NFP chip for initialization.
> Current NFP PMD PF support was added based on the NSPU interface. This
> implies to do initialization through the NSP, a embedded ARM processor
> which does initialization tasks on demand. The main problem with this
> approach is it requires to add support for new NSP commands each time
> a new functionality is required, which does not scale well and it is
> not really flexible.
>
> Using the new CPP user space interface, the PMD can do whatever could
> be done by the NSP, this is current commands and any new functionality
> required. This CPP interface allows to access any single chip component
> facilitating initialization, firmware uploading, firmware debugging or
> extended stats.
>
> The changes just change the PMD PF initialization and do not touch the
> datapath at all. No performance changes nor PMD functionalities are
> affected.
>
> The initial impact using the new CPP interface is the way firmware upload
> is handled, which helps the PMD detecting the card type and the firmware
> file
> to upload. Future commits will include extended stats and some sort of
> debug
> channel.
>
> The specific CPP code is contained in the first patch, which has not been
> splitted up because is completely internal to the NFP functionality. The
> second patch makes the PMD changes required for using the new interface.
>
> v2:
>  - removing unused reference to zlib.h
>  - fix build errors
>  - add SPDX tags in new files
>  - rebase changes nfp.rst
>
> Alejandro Lucero (4):
>   net/nfp: add NFP CPP support
>   net/nfp: update PMD for using new CPP interface
>   doc: update NFP guide
>   net/nfp: remove files
>
>  doc/guides/nics/nfp.rst                           |  34 +-
>  drivers/net/nfp/Makefile                          |  17 +-
>  drivers/net/nfp/nfp_net.c                         | 342 +++++---
>  drivers/net/nfp/nfp_net_eth.h                     |  82 --
>  drivers/net/nfp/nfp_net_pmd.h                     |  16 +-
>  drivers/net/nfp/nfp_nfpu.c                        | 108 ---
>  drivers/net/nfp/nfp_nfpu.h                        |  55 --
>  drivers/net/nfp/nfp_nspu.c                        | 642 ---------------
>  drivers/net/nfp/nfp_nspu.h                        |  83 --
>  drivers/net/nfp/nfpcore/nfp-common/nfp_cppat.h    | 722 +++++++++++++++++
>  drivers/net/nfp/nfpcore/nfp-common/nfp_platform.h |  36 +
>  drivers/net/nfp/nfpcore/nfp-common/nfp_resid.h    | 592 ++++++++++++++
>  drivers/net/nfp/nfpcore/nfp6000/nfp6000.h         |  40 +
>  drivers/net/nfp/nfpcore/nfp6000/nfp_xpb.h         |  26 +
>  drivers/net/nfp/nfpcore/nfp_cpp.h                 | 776
> ++++++++++++++++++
>  drivers/net/nfp/nfpcore/nfp_cpp_pcie_ops.c        | 936
> ++++++++++++++++++++++
>  drivers/net/nfp/nfpcore/nfp_cppcore.c             | 856
> ++++++++++++++++++++
>  drivers/net/nfp/nfpcore/nfp_crc.c                 |  49 ++
>  drivers/net/nfp/nfpcore/nfp_crc.h                 |  19 +
>  drivers/net/nfp/nfpcore/nfp_hwinfo.c              | 199 +++++
>  drivers/net/nfp/nfpcore/nfp_hwinfo.h              |  85 ++
>  drivers/net/nfp/nfpcore/nfp_mip.c                 | 154 ++++
>  drivers/net/nfp/nfpcore/nfp_mip.h                 |  21 +
>  drivers/net/nfp/nfpcore/nfp_mutex.c               | 424 ++++++++++
>  drivers/net/nfp/nfpcore/nfp_nffw.c                | 235 ++++++
>  drivers/net/nfp/nfpcore/nfp_nffw.h                |  86 ++
>  drivers/net/nfp/nfpcore/nfp_nsp.c                 | 427 ++++++++++
>  drivers/net/nfp/nfpcore/nfp_nsp.h                 | 304 +++++++
>  drivers/net/nfp/nfpcore/nfp_nsp_cmds.c            | 109 +++
>  drivers/net/nfp/nfpcore/nfp_nsp_eth.c             | 665 +++++++++++++++
>  drivers/net/nfp/nfpcore/nfp_resource.c            | 264 ++++++
>  drivers/net/nfp/nfpcore/nfp_resource.h            |  52 ++
>  drivers/net/nfp/nfpcore/nfp_rtsym.c               | 327 ++++++++
>  drivers/net/nfp/nfpcore/nfp_rtsym.h               |  61 ++
>  drivers/net/nfp/nfpcore/nfp_target.h              | 579 +++++++++++++
>  35 files changed, 8334 insertions(+), 1089 deletions(-)
>  delete mode 100644 drivers/net/nfp/nfp_net_eth.h
>  delete mode 100644 drivers/net/nfp/nfp_nfpu.c
>  delete mode 100644 drivers/net/nfp/nfp_nfpu.h
>  delete mode 100644 drivers/net/nfp/nfp_nspu.c
>  delete mode 100644 drivers/net/nfp/nfp_nspu.h
>  create mode 100644 drivers/net/nfp/nfpcore/nfp-common/nfp_cppat.h
>  create mode 100644 drivers/net/nfp/nfpcore/nfp-common/nfp_platform.h
>  create mode 100644 drivers/net/nfp/nfpcore/nfp-common/nfp_resid.h
>  create mode 100644 drivers/net/nfp/nfpcore/nfp6000/nfp6000.h
>  create mode 100644 drivers/net/nfp/nfpcore/nfp6000/nfp_xpb.h
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_cpp.h
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_cpp_pcie_ops.c
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_cppcore.c
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_crc.c
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_crc.h
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_hwinfo.c
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_hwinfo.h
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_mip.c
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_mip.h
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_mutex.c
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_nffw.c
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_nffw.h
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_nsp.c
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_nsp.h
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_nsp_cmds.c
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_nsp_eth.c
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_resource.c
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_resource.h
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_rtsym.c
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_rtsym.h
>  create mode 100644 drivers/net/nfp/nfpcore/nfp_target.h
>
> --
> 1.9.1
>
>


More information about the dev mailing list