From: Akhil Goyal <akhil.go...@nxp.com> Based over the DPAA PMD driver [1], this series of patches introduces the DPAA_SEC PMD which provides DPDK crypto driver for NXP's DPAA CAAM Hardware accelerator.
SEC is NXP DPAA SoC's security engine for cryptographic acceleration and offloading. It implements block encryption, stream cipher, hashing and public key algorithms. It also supports run-time integrity checking, and a hardware random number generator. :: Patch Layout :: 0001 : Bus scan for dpaa sec device 0002 : Cryptodev PMD 0003 : Performance and Functional tests 0004 : Documentation :: Future Work To Do :: - More functionality and algorithms are still work in progress -- Hash followed by Cipher mode -- session-less API -- Chained mbufs A bug fix is done to correct the definitions for dpaa2_sec in test/crypto. This patchset is rebased over the following patch. http://dpdk.org/dev/patchwork/patch/29516/ :: References :: [1] net/dpaa and bus/dpaa patches applied on net-next. Changes in v5: rebased over crypto-next Changed in v4: removed changes from test_cryptodev_perf.c as this file is removed. modified test_cryptodev_blockcipher.c for consistent naming of dpaa_sec_pmd. corrected signoff in 2nd patch changes in v3: some part of bus scan patch was mixed with dpaa_sec patch by mistake. changes in v2: Incorporated comments from Pablo. Akhil Goyal (4): bus/dpaa: scan for DPAA Crypto devices crypto/dpaa_sec: add crypto driver for NXP DPAA platform test/crypto: add dpaa crypto test cases doc: add NXP DPAA SEC MAINTAINERS | 7 + config/common_base | 8 + config/defconfig_arm64-dpaa-linuxapp-gcc | 17 + doc/guides/cryptodevs/dpaa_sec.rst | 182 +++ doc/guides/cryptodevs/features/dpaa_sec.ini | 40 + doc/guides/cryptodevs/index.rst | 1 + doc/guides/rel_notes/release_17_11.rst | 6 + doc/guides/tools/cryptoperf.rst | 1 + drivers/Makefile | 2 +- drivers/bus/dpaa/dpaa_bus.c | 52 + drivers/crypto/Makefile | 2 + drivers/crypto/dpaa_sec/Makefile | 71 + drivers/crypto/dpaa_sec/dpaa_sec.c | 1544 ++++++++++++++++++++ drivers/crypto/dpaa_sec/dpaa_sec.h | 402 +++++ drivers/crypto/dpaa_sec/dpaa_sec_log.h | 70 + .../crypto/dpaa_sec/rte_pmd_dpaa_sec_version.map | 4 + mk/rte.app.mk | 6 + test/test/test_cryptodev.c | 201 +++ test/test/test_cryptodev_aes_test_vectors.h | 78 +- test/test/test_cryptodev_blockcipher.c | 7 + test/test/test_cryptodev_blockcipher.h | 1 + test/test/test_cryptodev_des_test_vectors.h | 24 +- test/test/test_cryptodev_hash_test_vectors.h | 12 + 23 files changed, 2703 insertions(+), 35 deletions(-) create mode 100644 doc/guides/cryptodevs/dpaa_sec.rst create mode 100644 doc/guides/cryptodevs/features/dpaa_sec.ini create mode 100644 drivers/crypto/dpaa_sec/Makefile create mode 100644 drivers/crypto/dpaa_sec/dpaa_sec.c create mode 100644 drivers/crypto/dpaa_sec/dpaa_sec.h create mode 100644 drivers/crypto/dpaa_sec/dpaa_sec_log.h create mode 100644 drivers/crypto/dpaa_sec/rte_pmd_dpaa_sec_version.map -- 2.9.3