net/nfp: support CPP
authorAlejandro Lucero <alejandro.lucero@netronome.com>
Thu, 5 Apr 2018 14:42:44 +0000 (15:42 +0100)
committerFerruh Yigit <ferruh.yigit@intel.com>
Fri, 13 Apr 2018 22:40:21 +0000 (00:40 +0200)
commitc7e9729da6b521ee8a1f8bb3a1fa4c156f059ced
tree9ef72a811d20931d883344a0b4fdae4f7f0d5bcf
parentadcca66765714f874fd43951004530a9f478cc37
net/nfp: support CPP

CPP refers to the internal NFP Command Push Pull bus. This patch allows
to create CPP commands from user space allowing to access any single
part of the chip.

This CPP interface is the base for having other functionalities like
mutexes when accessing specific chip components, chip resources management,
firmware upload or using the NSP, an embedded arm processor which can
perform tasks on demand.

NSP was the previous only way for doing things in the chip by the PMD,
where a NSPU interface was used for commands like firmware upload or
port link configuration. CPP interface supersedes NSPU, but it is still
possible to use NSP through CPP.

CPP interface adds a great flexibility for doing things like extended
stats or firmware debugging.

Signed-off-by: Alejandro Lucero <alejandro.lucero@netronome.com>
26 files changed:
drivers/net/nfp/nfpcore/nfp-common/nfp_cppat.h [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp-common/nfp_platform.h [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp-common/nfp_resid.h [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp6000/nfp6000.h [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp6000/nfp_xpb.h [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_cpp.h [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_cpp_pcie_ops.c [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_cppcore.c [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_crc.c [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_crc.h [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_hwinfo.c [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_hwinfo.h [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_mip.c [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_mip.h [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_mutex.c [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_nffw.c [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_nffw.h [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_nsp.c [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_nsp.h [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_nsp_cmds.c [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_nsp_eth.c [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_resource.c [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_resource.h [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_rtsym.c [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_rtsym.h [new file with mode: 0644]
drivers/net/nfp/nfpcore/nfp_target.h [new file with mode: 0644]