numam-dpdk/lib
Zbigniew Bodek 169ca3db55 crypto/armv8: add PMD optimized for ARMv8 processors
This patch introduces crypto poll mode driver
using ARMv8 cryptographic extensions.
CPU compatibility with this driver is detected in
run-time and virtual crypto device will not be
created if CPU doesn't provide:
AES, SHA1, SHA2 and NEON.

This PMD is optimized to provide performance boost
for chained crypto operations processing,
such as encryption + HMAC generation,
decryption + HMAC validation. In particular,
cipher only or hash only operations are
not provided.

The driver currently supports AES-128-CBC
in combination with: SHA256 HMAC and SHA1 HMAC
and relies on the external armv8_crypto library:
https://github.com/caviumnetworks/armv8_crypto

Build ARMv8 crypto PMD if compiling for ARM64
and CONFIG_RTE_LIBRTE_PMD_ARMV8_CRYPTO option
is enable in the configuration file.
ARMV8_CRYPTO_LIB_PATH environment variable will
point to the appropriate library directory.

Signed-off-by: Zbigniew Bodek <zbigniew.bodek@caviumnetworks.com>
Reviewed-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
2017-01-19 01:00:55 +01:00
..
librte_acl lib: use C99 syntax for zero-size arrays 2016-09-13 15:35:28 +02:00
librte_cfgfile cfgfile: fix API comments 2016-11-06 23:34:40 +01:00
librte_cmdline cmdline: add alignment constraint 2016-12-23 10:19:11 +01:00
librte_compat compat: remove unneeded macro 2015-06-29 16:41:23 +02:00
librte_cryptodev crypto/armv8: add PMD optimized for ARMv8 processors 2017-01-19 01:00:55 +01:00
librte_distributor distributor: remove inclusion of mbuf header 2015-05-11 15:36:37 +02:00
librte_eal efd: new Elastic Flow Distributor library 2017-01-18 20:53:28 +01:00
librte_efd efd: add AVX2 vector lookup function 2017-01-18 20:53:45 +01:00
librte_ether net/ixgbe: parse L2 tunnel filter 2017-01-17 19:41:43 +01:00
librte_hash hash: fix bucket size usage 2016-10-12 18:40:52 +02:00
librte_ip_frag ip_frag: fix IP reassembly regression 2016-11-07 21:27:50 +01:00
librte_jobstats jobstats: fix typo in a comment 2016-06-30 18:51:20 +02:00
librte_kni doc: fix typos 2016-11-07 21:50:27 +01:00
librte_kvargs kvargs: make pointers in string arrays const 2017-01-13 19:28:26 +01:00
librte_lpm lpm: fix freeing memory 2016-11-06 23:46:03 +01:00
librte_mbuf mbuf: add a function to linearize a packet 2017-01-15 19:30:00 +01:00
librte_mempool mempool: use cache in single producer or consumer mode 2017-01-13 16:38:09 +01:00
librte_meter meter: fix excess token bucket update in srtcm 2016-09-21 22:56:03 +02:00
librte_net ethdev: add Tx preparation 2017-01-04 20:40:15 +01:00
librte_pdump doc: add pdump library to API doxygen 2016-12-06 15:43:13 +01:00
librte_pipeline lib: work around unnamed structs/unions 2016-09-13 15:35:28 +02:00
librte_port port: support file descriptor 2016-10-13 11:42:37 +02:00
librte_power examples/vm_power_manager: remove dependency on internal header 2016-07-11 17:23:32 +02:00
librte_reorder lib: add missing include dependencies 2016-09-13 15:35:28 +02:00
librte_ring doc: fix typos in code comments 2016-12-06 15:25:01 +01:00
librte_sched sched: fix releasing enqueued packets 2016-09-23 21:14:54 +02:00
librte_table table: add cuckoo hash 2016-10-12 22:08:36 +02:00
librte_timer timer: fix lag delay 2016-10-05 12:02:53 +02:00
librte_vhost vhost: allow many vhost-user ports 2017-01-17 09:20:18 +01:00
Makefile efd: new Elastic Flow Distributor library 2017-01-18 20:53:28 +01:00