Add support for chained operations in session.
Signed-off-by: Ankur Dwivedi <adwivedi@marvell.com>
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Signed-off-by: Archana Muniganti <marchana@marvell.com>
Signed-off-by: Tejasree Kondoj <ktejasree@marvell.com>
Acked-by: Akhil Goyal <gakhil@marvell.com>
;
[Features]
Symmetric crypto = Y
+Sym operation chaining = Y
HW Accelerated = Y
Symmetric sessionless = Y
+Digest encrypted = Y
;
; Supported crypto algorithms of 'cn10k' crypto driver.
;
[Features]
Symmetric crypto = Y
+Sym operation chaining = Y
HW Accelerated = Y
Symmetric sessionless = Y
+Digest encrypted = Y
;
; Supported crypto algorithms of 'cn9k' crypto driver.
dev->feature_flags = RTE_CRYPTODEV_FF_SYMMETRIC_CRYPTO |
RTE_CRYPTODEV_FF_HW_ACCELERATED |
- RTE_CRYPTODEV_FF_SYM_SESSIONLESS;
+ RTE_CRYPTODEV_FF_SYM_OPERATION_CHAINING |
+ RTE_CRYPTODEV_FF_SYM_SESSIONLESS |
+ RTE_CRYPTODEV_FF_DIGEST_ENCRYPTED;
cn10k_cpt_set_enqdeq_fns(dev);
dev->feature_flags = RTE_CRYPTODEV_FF_SYMMETRIC_CRYPTO |
RTE_CRYPTODEV_FF_HW_ACCELERATED |
- RTE_CRYPTODEV_FF_SYM_SESSIONLESS;
+ RTE_CRYPTODEV_FF_SYM_OPERATION_CHAINING |
+ RTE_CRYPTODEV_FF_SYM_SESSIONLESS |
+ RTE_CRYPTODEV_FF_DIGEST_ENCRYPTED;
cn9k_cpt_set_enqdeq_fns(dev);
case CNXK_CPT_AEAD:
ret = fill_sess_aead(xform, sess_priv);
break;
+ case CNXK_CPT_CIPHER_ENC_AUTH_GEN:
+ case CNXK_CPT_CIPHER_DEC_AUTH_VRFY:
+ ret = fill_sess_cipher(xform, sess_priv);
+ if (ret < 0)
+ break;
+ ret = fill_sess_auth(xform->next, sess_priv);
+ break;
+ case CNXK_CPT_AUTH_VRFY_CIPHER_DEC:
+ case CNXK_CPT_AUTH_GEN_CIPHER_ENC:
+ ret = fill_sess_auth(xform, sess_priv);
+ if (ret < 0)
+ break;
+ ret = fill_sess_cipher(xform->next, sess_priv);
+ break;
default:
ret = -1;
}