Added new SW PMD which makes use of the libsso SW library, which provides wireless algorithms KASUMI F8 and F9 in software.
This PMD supports cipher-only, hash-only and chained operations ("cipher then hash" and "hash then cipher") of the following algorithms: - RTE_CRYPTO_SYM_CIPHER_KASUMI_F8 - RTE_CRYPTO_SYM_AUTH_KASUMI_F9 The patchset also adds new macros to compare buffers at bit-level, since the PMD supports bit-level hash/cipher operations, and unit tests. The patchset should be merged after the following patches/patchsets, as they are making changes in some of the files of this patchset: - rework crypto AES unit test ("http://dpdk.org/ml/archives/dev/2016-June/041572.html") - Refactor of debug information on cryptodev tests ("http://dpdk.org/ml/archives/dev/2016-June/041623.html") - doc: fix wrong supported feature table ("http://dpdk.org/dev/patchwork/patch/13413/") Changes in v2: - Fixed key length - Refactored enqueue burst function to avoid duplication - Added CPU flags in crypto feature flags - Added extra unit tets - Added documentation - Merged last patch in v1 into the first patch - Added new driver in MAINTAINERS Changes in v3: - Updated documentation, as the library has been released, with detailed instructions on how to get the libsso_kasumi library. Pablo de Lara (3): kasumi: add new KASUMI PMD test: add new buffer comparison macros test: add unit tests for KASUMI PMD MAINTAINERS | 5 + app/test/test.h | 57 +- app/test/test_cryptodev.c | 995 +++++++++++++++++++-- app/test/test_cryptodev.h | 1 + app/test/test_cryptodev_kasumi_hash_test_vectors.h | 260 ++++++ app/test/test_cryptodev_kasumi_test_vectors.h | 308 +++++++ config/common_base | 6 + config/defconfig_i686-native-linuxapp-gcc | 5 + config/defconfig_i686-native-linuxapp-icc | 5 + doc/guides/cryptodevs/index.rst | 3 +- doc/guides/cryptodevs/kasumi.rst | 101 +++ doc/guides/cryptodevs/overview.rst | 79 +- doc/guides/rel_notes/release_16_07.rst | 5 + drivers/crypto/Makefile | 1 + drivers/crypto/kasumi/Makefile | 64 ++ drivers/crypto/kasumi/rte_kasumi_pmd.c | 658 ++++++++++++++ drivers/crypto/kasumi/rte_kasumi_pmd_ops.c | 344 +++++++ drivers/crypto/kasumi/rte_kasumi_pmd_private.h | 106 +++ drivers/crypto/kasumi/rte_pmd_kasumi_version.map | 3 + examples/l2fwd-crypto/main.c | 10 +- lib/librte_cryptodev/rte_crypto_sym.h | 6 +- lib/librte_cryptodev/rte_cryptodev.h | 3 + mk/rte.app.mk | 2 + scripts/test-build.sh | 4 + 24 files changed, 2897 insertions(+), 134 deletions(-) create mode 100644 app/test/test_cryptodev_kasumi_hash_test_vectors.h create mode 100644 app/test/test_cryptodev_kasumi_test_vectors.h create mode 100644 doc/guides/cryptodevs/kasumi.rst create mode 100644 drivers/crypto/kasumi/Makefile create mode 100644 drivers/crypto/kasumi/rte_kasumi_pmd.c create mode 100644 drivers/crypto/kasumi/rte_kasumi_pmd_ops.c create mode 100644 drivers/crypto/kasumi/rte_kasumi_pmd_private.h create mode 100644 drivers/crypto/kasumi/rte_pmd_kasumi_version.map -- 2.5.0