mbox series

[v2,0/8] Add Crypto PMD for Broadcom`s FlexSparc devices

Message ID 20200813172344.3228-1-vikas.gupta@broadcom.com (mailing list archive)
Headers
Series Add Crypto PMD for Broadcom`s FlexSparc devices |

Message

Vikas Gupta Aug. 13, 2020, 5:23 p.m. UTC
  Hi,
This patchset contains support for Crypto offload on Broadcom’s
Stingray/Stingray2 SoCs having FlexSparc unit. 
BCMFS is an acronym for Broadcom FlexSparc device used in the patchest.

The patchset progressively adds major modules as below.
a) Detection of platform-device based on the known registered platforms and attaching with VFIO.
b) Creation of Cryptodevice.
c) Addition of session handling.
d) Add Cryptodevice into test Cryptodev framework. 

The patchset has been tested on the above mentioned SoCs.

Regards,
Vikas

Changes from v0->v1: 
      Updated the ABI version in file .../crypto/bcmfs/rte_pmd_bcmfs_version.map

Changes from v1->v2:
	- Fix compilation errors and coding style warnings.
	- Use global test crypto suite suggested by Adam Dybkowski

Vikas Gupta (8):
  crypto/bcmfs: add BCMFS driver
  crypto/bcmfs: add vfio support
  crypto/bcmfs: add apis for queue pair management
  crypto/bcmfs: add hw queue pair operations
  crypto/bcmfs: create a symmetric cryptodev
  crypto/bcmfs: add session handling and capabilities
  crypto/bcmfs: add crypto h/w module
  crypto/bcmfs: add crypto pmd into cryptodev test

 MAINTAINERS                                   |   7 +
 app/test/test_cryptodev.c                     |  17 +
 app/test/test_cryptodev.h                     |   1 +
 config/common_base                            |   5 +
 doc/guides/cryptodevs/bcmfs.rst               |  72 ++
 doc/guides/cryptodevs/features/bcmfs.ini      |  56 +
 doc/guides/cryptodevs/index.rst               |   1 +
 drivers/crypto/bcmfs/bcmfs_dev_msg.h          |  29 +
 drivers/crypto/bcmfs/bcmfs_device.c           | 331 ++++++
 drivers/crypto/bcmfs/bcmfs_device.h           |  76 ++
 drivers/crypto/bcmfs/bcmfs_hw_defs.h          |  38 +
 drivers/crypto/bcmfs/bcmfs_logs.c             |  38 +
 drivers/crypto/bcmfs/bcmfs_logs.h             |  34 +
 drivers/crypto/bcmfs/bcmfs_qp.c               | 383 +++++++
 drivers/crypto/bcmfs/bcmfs_qp.h               | 142 +++
 drivers/crypto/bcmfs/bcmfs_sym.c              | 316 ++++++
 drivers/crypto/bcmfs/bcmfs_sym_capabilities.c | 764 ++++++++++++++
 drivers/crypto/bcmfs/bcmfs_sym_capabilities.h |  16 +
 drivers/crypto/bcmfs/bcmfs_sym_defs.h         | 186 ++++
 drivers/crypto/bcmfs/bcmfs_sym_engine.c       | 994 ++++++++++++++++++
 drivers/crypto/bcmfs/bcmfs_sym_engine.h       | 103 ++
 drivers/crypto/bcmfs/bcmfs_sym_pmd.c          | 426 ++++++++
 drivers/crypto/bcmfs/bcmfs_sym_pmd.h          |  38 +
 drivers/crypto/bcmfs/bcmfs_sym_req.h          |  62 ++
 drivers/crypto/bcmfs/bcmfs_sym_session.c      | 424 ++++++++
 drivers/crypto/bcmfs/bcmfs_sym_session.h      |  99 ++
 drivers/crypto/bcmfs/bcmfs_vfio.c             | 107 ++
 drivers/crypto/bcmfs/bcmfs_vfio.h             |  17 +
 drivers/crypto/bcmfs/hw/bcmfs4_rm.c           | 742 +++++++++++++
 drivers/crypto/bcmfs/hw/bcmfs5_rm.c           | 677 ++++++++++++
 drivers/crypto/bcmfs/hw/bcmfs_rm_common.c     |  82 ++
 drivers/crypto/bcmfs/hw/bcmfs_rm_common.h     |  46 +
 drivers/crypto/bcmfs/meson.build              |  20 +
 .../crypto/bcmfs/rte_pmd_bcmfs_version.map    |   3 +
 drivers/crypto/meson.build                    |   3 +-
 mk/rte.app.mk                                 |   1 +
 36 files changed, 6355 insertions(+), 1 deletion(-)
 create mode 100644 doc/guides/cryptodevs/bcmfs.rst
 create mode 100644 doc/guides/cryptodevs/features/bcmfs.ini
 create mode 100644 drivers/crypto/bcmfs/bcmfs_dev_msg.h
 create mode 100644 drivers/crypto/bcmfs/bcmfs_device.c
 create mode 100644 drivers/crypto/bcmfs/bcmfs_device.h
 create mode 100644 drivers/crypto/bcmfs/bcmfs_hw_defs.h
 create mode 100644 drivers/crypto/bcmfs/bcmfs_logs.c
 create mode 100644 drivers/crypto/bcmfs/bcmfs_logs.h
 create mode 100644 drivers/crypto/bcmfs/bcmfs_qp.c
 create mode 100644 drivers/crypto/bcmfs/bcmfs_qp.h
 create mode 100644 drivers/crypto/bcmfs/bcmfs_sym.c
 create mode 100644 drivers/crypto/bcmfs/bcmfs_sym_capabilities.c
 create mode 100644 drivers/crypto/bcmfs/bcmfs_sym_capabilities.h
 create mode 100644 drivers/crypto/bcmfs/bcmfs_sym_defs.h
 create mode 100644 drivers/crypto/bcmfs/bcmfs_sym_engine.c
 create mode 100644 drivers/crypto/bcmfs/bcmfs_sym_engine.h
 create mode 100644 drivers/crypto/bcmfs/bcmfs_sym_pmd.c
 create mode 100644 drivers/crypto/bcmfs/bcmfs_sym_pmd.h
 create mode 100644 drivers/crypto/bcmfs/bcmfs_sym_req.h
 create mode 100644 drivers/crypto/bcmfs/bcmfs_sym_session.c
 create mode 100644 drivers/crypto/bcmfs/bcmfs_sym_session.h
 create mode 100644 drivers/crypto/bcmfs/bcmfs_vfio.c
 create mode 100644 drivers/crypto/bcmfs/bcmfs_vfio.h
 create mode 100644 drivers/crypto/bcmfs/hw/bcmfs4_rm.c
 create mode 100644 drivers/crypto/bcmfs/hw/bcmfs5_rm.c
 create mode 100644 drivers/crypto/bcmfs/hw/bcmfs_rm_common.c
 create mode 100644 drivers/crypto/bcmfs/hw/bcmfs_rm_common.h
 create mode 100644 drivers/crypto/bcmfs/meson.build
 create mode 100644 drivers/crypto/bcmfs/rte_pmd_bcmfs_version.map
  

Comments

Akhil Goyal Sept. 28, 2020, 8:06 p.m. UTC | #1
> 
> Hi,
> This patchset contains support for Crypto offload on Broadcom’s
> Stingray/Stingray2 SoCs having FlexSparc unit.
> BCMFS is an acronym for Broadcom FlexSparc device used in the patchest.
> 
> The patchset progressively adds major modules as below.
> a) Detection of platform-device based on the known registered platforms and
> attaching with VFIO.
> b) Creation of Cryptodevice.
> c) Addition of session handling.
> d) Add Cryptodevice into test Cryptodev framework.
> 
> The patchset has been tested on the above mentioned SoCs.
> 
> Regards,
> Vikas
> 
> Changes from v0->v1:
>       Updated the ABI version in
> file .../crypto/bcmfs/rte_pmd_bcmfs_version.map
> 
> Changes from v1->v2:
> 	- Fix compilation errors and coding style warnings.
> 	- Use global test crypto suite suggested by Adam Dybkowski
> 
> Vikas Gupta (8):
>   crypto/bcmfs: add BCMFS driver
>   crypto/bcmfs: add vfio support
>   crypto/bcmfs: add apis for queue pair management
>   crypto/bcmfs: add hw queue pair operations
>   crypto/bcmfs: create a symmetric cryptodev
>   crypto/bcmfs: add session handling and capabilities
>   crypto/bcmfs: add crypto h/w module
>   crypto/bcmfs: add crypto pmd into cryptodev test
> 
>  MAINTAINERS                                   |   7 +
>  app/test/test_cryptodev.c                     |  17 +
>  app/test/test_cryptodev.h                     |   1 +
>  config/common_base                            |   5 +
>  doc/guides/cryptodevs/bcmfs.rst               |  72 ++
>  doc/guides/cryptodevs/features/bcmfs.ini      |  56 +
>  doc/guides/cryptodevs/index.rst               |   1 +
>  drivers/crypto/bcmfs/bcmfs_dev_msg.h          |  29 +
>  drivers/crypto/bcmfs/bcmfs_device.c           | 331 ++++++
>  drivers/crypto/bcmfs/bcmfs_device.h           |  76 ++
>  drivers/crypto/bcmfs/bcmfs_hw_defs.h          |  38 +
>  drivers/crypto/bcmfs/bcmfs_logs.c             |  38 +
>  drivers/crypto/bcmfs/bcmfs_logs.h             |  34 +
>  drivers/crypto/bcmfs/bcmfs_qp.c               | 383 +++++++
>  drivers/crypto/bcmfs/bcmfs_qp.h               | 142 +++
>  drivers/crypto/bcmfs/bcmfs_sym.c              | 316 ++++++
>  drivers/crypto/bcmfs/bcmfs_sym_capabilities.c | 764 ++++++++++++++
>  drivers/crypto/bcmfs/bcmfs_sym_capabilities.h |  16 +
>  drivers/crypto/bcmfs/bcmfs_sym_defs.h         | 186 ++++
>  drivers/crypto/bcmfs/bcmfs_sym_engine.c       | 994 ++++++++++++++++++
>  drivers/crypto/bcmfs/bcmfs_sym_engine.h       | 103 ++
>  drivers/crypto/bcmfs/bcmfs_sym_pmd.c          | 426 ++++++++
>  drivers/crypto/bcmfs/bcmfs_sym_pmd.h          |  38 +
>  drivers/crypto/bcmfs/bcmfs_sym_req.h          |  62 ++
>  drivers/crypto/bcmfs/bcmfs_sym_session.c      | 424 ++++++++
>  drivers/crypto/bcmfs/bcmfs_sym_session.h      |  99 ++
>  drivers/crypto/bcmfs/bcmfs_vfio.c             | 107 ++
>  drivers/crypto/bcmfs/bcmfs_vfio.h             |  17 +
>  drivers/crypto/bcmfs/hw/bcmfs4_rm.c           | 742 +++++++++++++
>  drivers/crypto/bcmfs/hw/bcmfs5_rm.c           | 677 ++++++++++++
>  drivers/crypto/bcmfs/hw/bcmfs_rm_common.c     |  82 ++
>  drivers/crypto/bcmfs/hw/bcmfs_rm_common.h     |  46 +
>  drivers/crypto/bcmfs/meson.build              |  20 +
>  .../crypto/bcmfs/rte_pmd_bcmfs_version.map    |   3 +
>  drivers/crypto/meson.build                    |   3 +-
>  mk/rte.app.mk                                 |   1 +
>  36 files changed, 6355 insertions(+), 1 deletion(-)

Release notes missing.
  
Akhil Goyal Oct. 5, 2020, 3:39 p.m. UTC | #2
Hi Vikas

> 
> >
> > Hi,
> > This patchset contains support for Crypto offload on Broadcom’s
> > Stingray/Stingray2 SoCs having FlexSparc unit.
> > BCMFS is an acronym for Broadcom FlexSparc device used in the patchest.
> >
> > The patchset progressively adds major modules as below.
> > a) Detection of platform-device based on the known registered platforms and
> > attaching with VFIO.
> > b) Creation of Cryptodevice.
> > c) Addition of session handling.
> > d) Add Cryptodevice into test Cryptodev framework.
> >
> > The patchset has been tested on the above mentioned SoCs.
> >


> Release notes missing.

When do you plan to submit the next version. I plan to merge it in RC1 timeline.
  
Ajit Khaparde Oct. 5, 2020, 4:46 p.m. UTC | #3
On Mon, Oct 5, 2020 at 8:39 AM Akhil Goyal <akhil.goyal@nxp.com> wrote:
>
> Hi Vikas
>
> >
> > >
> > > Hi,
> > > This patchset contains support for Crypto offload on Broadcom’s
> > > Stingray/Stingray2 SoCs having FlexSparc unit.
> > > BCMFS is an acronym for Broadcom FlexSparc device used in the patchest.
> > >
> > > The patchset progressively adds major modules as below.
> > > a) Detection of platform-device based on the known registered platforms and
> > > attaching with VFIO.
> > > b) Creation of Cryptodevice.
> > > c) Addition of session handling.
> > > d) Add Cryptodevice into test Cryptodev framework.
> > >
> > > The patchset has been tested on the above mentioned SoCs.
> > >
>
>
> > Release notes missing.
>
> When do you plan to submit the next version. I plan to merge it in RC1 timeline.
Akhil, You can expect a new version in a day - worst case two.
  
Vikas Gupta Oct. 5, 2020, 5:01 p.m. UTC | #4
Hi Akhil,

On Mon, Oct 5, 2020 at 10:17 PM Ajit Khaparde
<ajit.khaparde@broadcom.com> wrote:
>
> On Mon, Oct 5, 2020 at 8:39 AM Akhil Goyal <akhil.goyal@nxp.com> wrote:
> >
> > Hi Vikas
> >
> > >
> > > >
> > > > Hi,
> > > > This patchset contains support for Crypto offload on Broadcom’s
> > > > Stingray/Stingray2 SoCs having FlexSparc unit.
> > > > BCMFS is an acronym for Broadcom FlexSparc device used in the patchest.
> > > >
> > > > The patchset progressively adds major modules as below.
> > > > a) Detection of platform-device based on the known registered platforms and
> > > > attaching with VFIO.
> > > > b) Creation of Cryptodevice.
> > > > c) Addition of session handling.
> > > > d) Add Cryptodevice into test Cryptodev framework.
> > > >
> > > > The patchset has been tested on the above mentioned SoCs.
> > > >
> >
> >
> > > Release notes missing.
> >
> > When do you plan to submit the next version. I plan to merge it in RC1 timeline.
> Akhil, You can expect a new version in a day - worst case two.
I have pushed the v3 patchset.

Thanks,
Vikas