Add new field ff_disable in rte_cryptodev_config. This enables applications to control the features enabled on the crypto device.
Proposed new layout: /** Crypto device configuration structure */ struct rte_cryptodev_config { int socket_id; /**< Socket to allocate resources on */ uint16_t nb_queue_pairs; /**< Number of queue pairs to configure on device */ + uint64_t ff_disable; + /**< Feature flags to be disabled. Only the following features are + * allowed to be disabled, + * - RTE_CRYPTODEV_FF_SYMMETRIC_CRYPTO + * - RTE_CRYPTODEV_FF_ASYMMETRIC_CRYPTO + * - RTE_CRYTPODEV_FF_SECURITY + */ }; For eth devices, rte_eth_conf.rx_mode.offloads and rte_eth_conf.tx_mode.offloads fields are used by applications to control the offloads enabled on the eth device. This proposal adds a similar ability for the crypto device. Signed-off-by: Anoob Joseph <ano...@marvell.com> --- v2: * Renamed 'ff_enable' to 'ff_disable' doc/guides/rel_notes/deprecation.rst | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index 1b4fcb7..d0a60f9 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -75,3 +75,17 @@ Deprecation Notices * crypto/aesni_mb: the minimum supported intel-ipsec-mb library version will be changed from 0.49.0 to 0.52.0. + +* cryptodev: New member in ``rte_cryptodev_config`` to allow applications to + disable features supported by the crypto device. Only the following features + would be allowed to be disabled this way, + + - ``RTE_CRYPTODEV_FF_SYMMETRIC_CRYPTO`` + - ``RTE_CRYPTODEV_FF_ASYMMETRIC_CRYPTO`` + - ``RTE_CRYPTODEV_FF_SECURITY`` + + Disabling unused features would facilitate efficient usage of HW/SW offload. + + - Member ``uint64_t ff_disable`` in ``rte_cryptodev_config`` + + The field would be added in v19.08. -- 2.7.4