crypto/mlx5: support session operations
authorShiri Kuzin <shirik@nvidia.com>
Tue, 20 Jul 2021 13:09:34 +0000 (16:09 +0300)
committerAkhil Goyal <gakhil@marvell.com>
Tue, 20 Jul 2021 20:26:43 +0000 (22:26 +0200)
commit1004be3c03cd1cfecc3c2a46bd15f0137d112565
tree637274d023e4a17543eb6584680d62ab94a9132b
parent6152534e211ed42a5492d781f19a99834c3fad25
crypto/mlx5: support session operations

Sessions are used in symmetric transformations in order to prepare
objects and data for packet processing stage.

A mlx5 session includes iv_offset, pointer to mlx5_crypto_dek struct,
bsf_size, bsf_p_type, block size index, encryption_order and encryption
standard.

Implement the next session operations:
        mlx5_crypto_sym_session_get_size- returns the size of the mlx5
session struct.
mlx5_crypto_sym_session_configure- prepares the DEK hash-list
and saves all the session data.
mlx5_crypto_sym_session_clear - destroys the DEK hash-list.

Signed-off-by: Shiri Kuzin <shirik@nvidia.com>
Acked-by: Matan Azrad <matan@nvidia.com>
Acked-by: Akhil Goyal <gakhil@marvell.com>
doc/guides/cryptodevs/features/mlx5.ini
doc/guides/cryptodevs/mlx5.rst
drivers/crypto/mlx5/mlx5_crypto.c