From: Nagadheeraj Rottela <rnagadheeraj@marvell.com>
To: "akhil.goyal@nxp.com" <akhil.goyal@nxp.com>,
"pablo.de.lara.guarch@intel.com" <pablo.de.lara.guarch@intel.com>
Cc: Srikanth Jampala <jsrikanth@marvell.com>,
"dev@dpdk.org" <dev@dpdk.org>,
Nagadheeraj Rottela <rnagadheeraj@marvell.com>
Subject: [dpdk-dev] [PATCH v7 0/8] add Nitrox crypto device support
Date: Tue, 1 Oct 2019 06:41:18 +0000 [thread overview]
Message-ID: <20191001064048.5624-1-rnagadheeraj@marvell.com> (raw)
In-Reply-To: <20190716091016.4788-1-rnagadheeraj@marvell.com>
Add the Nitrox PMD to support Nitrox crypto device.
---
v7:
* Removed rte_wmb() and rte_rmb() usage in all places.
* Added rte_smp_wmb() before pending count update in enqueue
operation and rte_smp_rmb() before reading softreq from
pending queue.
* Added rte_io_wmb() before the ring doorbell to ensure all the DMA
buffers & descriptors stores are completed.
v6:
* Updated Nitrox cryptodev html guide.
* Updated release notes 19.11.
v5:
* Combined related changes together and merged into single patch.
* Defined macros for PCI vendor and device ids.
* Checking return value of nitrox_sym_pmd_destroy() in pci remove.
* Removed wrapper macro over RTE_CRYPTODEV_NAME_MAX_LEN.
* Added cryptodev feature flags in the code and documentation in
a patch where they are supported.
* Added capabilities in the patch where they are supported.
* Implemented nitrox_sym_dev_config() and validating the number
of queue pairs requested in the config.
* Used RTE_SET_USED() in place of __rte_unused and added comments
in empty functions.
* Removed empty lines which are not required.
v4:
* Added wmb between pending_count store and sr pointer store in enqueue
operation. This is required to safely read sr in dequeue operation.
v3:
* Add SHA224 and SHA256 HMAC algorithms
v2:
* Fix compilation error on AARCH64.
* Fix checkpatch warning "UNNECESSARY_ELSE: else is not generally
useful after a break or return".
Nagadheeraj Rottela (8):
crypto/nitrox: add Nitrox PMD library
crypto/nitrox: create Nitrox symmetric cryptodev
crypto/nitrox: add software queue management functionality
crypto/nitrox: add hardware queue management functionality
crypto/nitrox: add session management operations
crypto/nitrox: add burst enqueue and dequeue operations
crypto/nitrox: add cipher auth crypto chain processing
test/crypto: add tests for Nitrox PMD
MAINTAINERS | 7 +
app/test/test_cryptodev.c | 52 ++
app/test/test_cryptodev.h | 1 +
app/test/test_cryptodev_aes_test_vectors.h | 48 +-
app/test/test_cryptodev_blockcipher.c | 9 +-
app/test/test_cryptodev_blockcipher.h | 1 +
config/common_base | 5 +
doc/guides/cryptodevs/features/nitrox.ini | 40 ++
doc/guides/cryptodevs/index.rst | 1 +
doc/guides/cryptodevs/nitrox.rst | 51 ++
doc/guides/rel_notes/release_19_11.rst | 5 +
drivers/crypto/Makefile | 1 +
drivers/crypto/meson.build | 4 +-
drivers/crypto/nitrox/Makefile | 34 ++
drivers/crypto/nitrox/meson.build | 19 +
drivers/crypto/nitrox/nitrox_csr.h | 40 ++
drivers/crypto/nitrox/nitrox_device.c | 124 ++++
drivers/crypto/nitrox/nitrox_device.h | 22 +
drivers/crypto/nitrox/nitrox_hal.c | 236 ++++++++
drivers/crypto/nitrox/nitrox_hal.h | 165 +++++
drivers/crypto/nitrox/nitrox_logs.c | 14 +
drivers/crypto/nitrox/nitrox_logs.h | 15 +
drivers/crypto/nitrox/nitrox_qp.c | 115 ++++
drivers/crypto/nitrox/nitrox_qp.h | 104 ++++
drivers/crypto/nitrox/nitrox_sym.c | 728 +++++++++++++++++++++++
drivers/crypto/nitrox/nitrox_sym.h | 13 +
drivers/crypto/nitrox/nitrox_sym_capabilities.c | 99 +++
drivers/crypto/nitrox/nitrox_sym_capabilities.h | 12 +
drivers/crypto/nitrox/nitrox_sym_ctx.h | 84 +++
drivers/crypto/nitrox/nitrox_sym_reqmgr.c | 635 ++++++++++++++++++++
drivers/crypto/nitrox/nitrox_sym_reqmgr.h | 23 +
drivers/crypto/nitrox/rte_pmd_nitrox_version.map | 3 +
mk/rte.app.mk | 1 +
33 files changed, 2692 insertions(+), 19 deletions(-)
create mode 100644 doc/guides/cryptodevs/features/nitrox.ini
create mode 100644 doc/guides/cryptodevs/nitrox.rst
create mode 100644 drivers/crypto/nitrox/Makefile
create mode 100644 drivers/crypto/nitrox/meson.build
create mode 100644 drivers/crypto/nitrox/nitrox_csr.h
create mode 100644 drivers/crypto/nitrox/nitrox_device.c
create mode 100644 drivers/crypto/nitrox/nitrox_device.h
create mode 100644 drivers/crypto/nitrox/nitrox_hal.c
create mode 100644 drivers/crypto/nitrox/nitrox_hal.h
create mode 100644 drivers/crypto/nitrox/nitrox_logs.c
create mode 100644 drivers/crypto/nitrox/nitrox_logs.h
create mode 100644 drivers/crypto/nitrox/nitrox_qp.c
create mode 100644 drivers/crypto/nitrox/nitrox_qp.h
create mode 100644 drivers/crypto/nitrox/nitrox_sym.c
create mode 100644 drivers/crypto/nitrox/nitrox_sym.h
create mode 100644 drivers/crypto/nitrox/nitrox_sym_capabilities.c
create mode 100644 drivers/crypto/nitrox/nitrox_sym_capabilities.h
create mode 100644 drivers/crypto/nitrox/nitrox_sym_ctx.h
create mode 100644 drivers/crypto/nitrox/nitrox_sym_reqmgr.c
create mode 100644 drivers/crypto/nitrox/nitrox_sym_reqmgr.h
create mode 100644 drivers/crypto/nitrox/rte_pmd_nitrox_version.map
--
2.13.6
next prev parent reply other threads:[~2019-10-01 6:41 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20190716091016.4788-1-rnagadheeraj@marvell.com>
2019-09-26 12:36 ` [dpdk-dev] [PATCH v5 " Nagadheeraj Rottela
2019-09-26 12:36 ` [dpdk-dev] [PATCH v5 1/8] crypto/nitrox: add Nitrox PMD library Nagadheeraj Rottela
2019-09-26 12:36 ` [dpdk-dev] [PATCH v5 2/8] crypto/nitrox: create Nitrox symmetric cryptodev Nagadheeraj Rottela
2019-09-26 12:36 ` [dpdk-dev] [PATCH v5 3/8] crypto/nitrox: add software queue management functionality Nagadheeraj Rottela
2019-09-26 12:36 ` [dpdk-dev] [PATCH v5 4/8] crypto/nitrox: add hardware " Nagadheeraj Rottela
2019-09-26 12:36 ` [dpdk-dev] [PATCH v5 5/8] crypto/nitrox: add session management operations Nagadheeraj Rottela
2019-09-26 12:36 ` [dpdk-dev] [PATCH v5 6/8] crypto/nitrox: add burst enqueue and dequeue operations Nagadheeraj Rottela
2019-09-26 12:36 ` [dpdk-dev] [PATCH v5 7/8] crypto/nitrox: add cipher auth crypto chain processing Nagadheeraj Rottela
2019-09-26 12:37 ` [dpdk-dev] [PATCH v5 8/8] test/crypto: add tests for Nitrox PMD Nagadheeraj Rottela
2019-09-26 13:15 ` [dpdk-dev] [PATCH v5 0/8] add Nitrox crypto device support Jerin Jacob
2019-09-27 6:26 ` [dpdk-dev] [PATCH v6 " Nagadheeraj Rottela
2019-09-27 6:26 ` [dpdk-dev] [PATCH v6 1/8] crypto/nitrox: add Nitrox PMD library Nagadheeraj Rottela
2019-09-27 6:26 ` [dpdk-dev] [PATCH v6 2/8] crypto/nitrox: create Nitrox symmetric cryptodev Nagadheeraj Rottela
2019-09-27 6:26 ` [dpdk-dev] [PATCH v6 3/8] crypto/nitrox: add software queue management functionality Nagadheeraj Rottela
2019-09-27 6:26 ` [dpdk-dev] [PATCH v6 4/8] crypto/nitrox: add hardware " Nagadheeraj Rottela
2019-09-27 6:26 ` [dpdk-dev] [PATCH v6 5/8] crypto/nitrox: add session management operations Nagadheeraj Rottela
2019-09-27 6:26 ` [dpdk-dev] [PATCH v6 6/8] crypto/nitrox: add burst enqueue and dequeue operations Nagadheeraj Rottela
2019-09-27 6:26 ` [dpdk-dev] [PATCH v6 7/8] crypto/nitrox: add cipher auth crypto chain processing Nagadheeraj Rottela
2019-09-27 6:26 ` [dpdk-dev] [PATCH v6 8/8] test/crypto: add tests for Nitrox PMD Nagadheeraj Rottela
2019-09-28 14:46 ` [dpdk-dev] [PATCH v6 0/8] add Nitrox crypto device support Gavin Hu (Arm Technology China)
2019-09-30 13:40 ` Nagadheeraj Rottela
2019-10-01 6:41 ` Nagadheeraj Rottela [this message]
2019-10-01 6:41 ` [dpdk-dev] [PATCH v7 1/8] crypto/nitrox: add Nitrox PMD library Nagadheeraj Rottela
2019-10-01 6:41 ` [dpdk-dev] [PATCH v7 2/8] crypto/nitrox: create Nitrox symmetric cryptodev Nagadheeraj Rottela
2019-10-01 6:41 ` [dpdk-dev] [PATCH v7 3/8] crypto/nitrox: add software queue management functionality Nagadheeraj Rottela
2019-10-01 6:41 ` [dpdk-dev] [PATCH v7 4/8] crypto/nitrox: add hardware " Nagadheeraj Rottela
2019-10-01 6:41 ` [dpdk-dev] [PATCH v7 5/8] crypto/nitrox: add session management operations Nagadheeraj Rottela
2019-10-01 6:41 ` [dpdk-dev] [PATCH v7 6/8] crypto/nitrox: add burst enqueue and dequeue operations Nagadheeraj Rottela
2019-10-01 6:41 ` [dpdk-dev] [PATCH v7 7/8] crypto/nitrox: add cipher auth crypto chain processing Nagadheeraj Rottela
2019-10-01 6:41 ` [dpdk-dev] [PATCH v7 8/8] test/crypto: add tests for Nitrox PMD Nagadheeraj Rottela
2019-10-04 10:29 ` [dpdk-dev] [PATCH v7 0/8] add Nitrox crypto device support Akhil Goyal
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20191001064048.5624-1-rnagadheeraj@marvell.com \
--to=rnagadheeraj@marvell.com \
--cc=akhil.goyal@nxp.com \
--cc=dev@dpdk.org \
--cc=jsrikanth@marvell.com \
--cc=pablo.de.lara.guarch@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).