[dpdk-dev] [PATCH v5 0/8] Add Crypto PMD for Broadcom`s FlexSparc devices

Vikas Gupta vikas.gupta at broadcom.com
Wed Oct 7 19:18:52 CEST 2020


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

Changes from v2->v3:
	- Release notes updated.
	- bcmfs.rst updated with missing information about installation.
	- Review comments from patch1 from v2 addressed.
	- Updated description about dependency of PMD driver on VFIO_PRESENT.
	- Fixed typo in bcmfs_hw_defs.h (comments on patch3 from v2 addressed)
	- Comments on patch6 from v2 addressed and capability list is fixed.
		Removed redundant enums and macros from the file
		bcmfs_sym_defs.h and updated other impacted APIs accordingly.
		patch7 too is updated due to removal of redundancy.
	  Thanks! to Akhil for pointing out the redundancy.
	- Fix minor code style issues in few files as part of review.

Changes from v3->v4:
	- Code style issues fixed.
	- Change of barrier API in bcmfs4_rm.c and bcmfs5_rm.c

Changes from v4->v5:
	- Change of barrier API in bcmfs4_rm.c. Missed one in v4


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

 MAINTAINERS                                   |    7 +
 app/test/test_cryptodev.c                     |   17 +
 app/test/test_cryptodev.h                     |    1 +
 doc/guides/cryptodevs/bcmfs.rst               |  109 ++
 doc/guides/cryptodevs/features/bcmfs.ini      |   56 +
 doc/guides/cryptodevs/index.rst               |    1 +
 doc/guides/rel_notes/release_20_11.rst        |    5 +
 drivers/crypto/bcmfs/bcmfs_dev_msg.h          |   29 +
 drivers/crypto/bcmfs/bcmfs_device.c           |  332 +++++
 drivers/crypto/bcmfs/bcmfs_device.h           |   76 ++
 drivers/crypto/bcmfs/bcmfs_hw_defs.h          |   32 +
 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              |  289 +++++
 drivers/crypto/bcmfs/bcmfs_sym_capabilities.c |  764 +++++++++++
 drivers/crypto/bcmfs/bcmfs_sym_capabilities.h |   16 +
 drivers/crypto/bcmfs/bcmfs_sym_defs.h         |   34 +
 drivers/crypto/bcmfs/bcmfs_sym_engine.c       | 1155 +++++++++++++++++
 drivers/crypto/bcmfs/bcmfs_sym_engine.h       |  115 ++
 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      |  282 ++++
 drivers/crypto/bcmfs/bcmfs_sym_session.h      |  109 ++
 drivers/crypto/bcmfs/bcmfs_vfio.c             |  107 ++
 drivers/crypto/bcmfs/bcmfs_vfio.h             |   17 +
 drivers/crypto/bcmfs/hw/bcmfs4_rm.c           |  743 +++++++++++
 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     |   51 +
 drivers/crypto/bcmfs/meson.build              |   20 +
 .../crypto/bcmfs/rte_pmd_bcmfs_version.map    |    3 +
 drivers/crypto/meson.build                    |    1 +
 35 files changed, 6253 insertions(+)
 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

-- 
2.17.1



More information about the dev mailing list