> -----Original Message-----
> From: Shijith Thotton <sthot...@marvell.com>
> Sent: Friday, April 2, 2021 10:31 PM
> To: dev@dpdk.org
> Cc: Shijith Thotton <sthot...@marvell.com>; tho...@monjalon.net;
> jer...@marvell.com; Gujjar, Abhinandan S <abhinandan.guj...@intel.com>;
> hemant.agra...@nxp.com; nipun.gu...@nxp.com;
> sachin.sax...@oss.nxp.com; ano...@marvell.com; ma...@nvidia.com;
> Zhang, Roy Fan <roy.fan.zh...@intel.com>; g.si...@nxp.com; Carrillo, Erik
> G <erik.g.carri...@intel.com>; Jayatheerthan, Jay
> <jay.jayatheert...@intel.com>; pbhagavat...@marvell.com; Van Haaren,
> Harry <harry.van.haa...@intel.com>; Akhil Goyal <gak...@marvell.com>
> Subject: [PATCH v4 3/3] test/event_crypto: use crypto adapter enqueue API
>
> Use rte_event_crypto_adapter_enqueue() API to enqueue events to crypto
> adapter if forward mode is supported in driver.
>
> Signed-off-by: Shijith Thotton <sthot...@marvell.com>
> ---
> app/test/test_event_crypto_adapter.c | 29 +++++++++++++++++++---------
> 1 file changed, 20 insertions(+), 9 deletions(-)
>
> diff --git a/app/test/test_event_crypto_adapter.c
> b/app/test/test_event_crypto_adapter.c
> index 335211cd8..2b07f1582 100644
> --- a/app/test/test_event_crypto_adapter.c
> +++ b/app/test/test_event_crypto_adapter.c
> @@ -64,6 +64,7 @@ struct event_crypto_adapter_test_params {
> struct rte_mempool *session_priv_mpool;
> struct rte_cryptodev_config *config;
> uint8_t crypto_event_port_id;
> + uint8_t internal_port_op_fwd;
> };
>
> struct rte_event response_info = {
> @@ -110,9 +111,12 @@ send_recv_ev(struct rte_event *ev)
> struct rte_event recv_ev;
> int ret;
>
> - ret = rte_event_enqueue_burst(evdev, TEST_APP_PORT_ID, ev,
> NUM);
> - TEST_ASSERT_EQUAL(ret, NUM,
> - "Failed to send event to crypto adapter\n");
> + if (params.internal_port_op_fwd)
> + ret = rte_event_crypto_adapter_enqueue(evdev,
> TEST_APP_PORT_ID,
> + ev, NUM);
> + else
> + ret = rte_event_enqueue_burst(evdev,
> TEST_APP_PORT_ID, ev, NUM);
> + TEST_ASSERT_EQUAL(ret, NUM, "Failed to send event to crypto
> +adapter\n");
>
> while (rte_event_dequeue_burst(evdev,
> TEST_APP_PORT_ID, &recv_ev, NUM, 0) == 0) @@ -
> 741,6 +745,11 @@ configure_event_crypto_adapter(enum
> rte_event_crypto_adapter_mode mode)
> ret = rte_event_crypto_adapter_caps_get(evdev, TEST_CDEV_ID,
> &cap);
> TEST_ASSERT_SUCCESS(ret, "Failed to get adapter capabilities\n");
>
> + if (cap &
> RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD)
> + params.internal_port_op_fwd = 1;
> + else
> + params.internal_port_op_fwd = 0;
> +
There is a check at line 760 for FWD mode. Can't this be set there?
> /* Skip mode and capability mismatch check for SW eventdev */
> if (!(cap &
> RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_NEW) &&
> !(cap &
> RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD) && @@ -
> 771,9 +780,11 @@ configure_event_crypto_adapter(enum
> rte_event_crypto_adapter_mode mode)
>
> TEST_ASSERT_SUCCESS(ret, "Failed to add queue pair\n");
>
> - ret =
> rte_event_crypto_adapter_event_port_get(TEST_ADAPTER_ID,
> - ¶ms.crypto_event_port_id);
> - TEST_ASSERT_SUCCESS(ret, "Failed to get event port\n");
> + if (!params.internal_port_op_fwd) {
> + ret =
> rte_event_crypto_adapter_event_port_get(TEST_ADAPTER_ID,
> +
> ¶ms.crypto_event_port_id);
> + TEST_ASSERT_SUCCESS(ret, "Failed to get event port\n");
> + }
>
> return TEST_SUCCESS;
> }
> @@ -809,15 +820,15 @@ test_crypto_adapter_conf(enum
> rte_event_crypto_adapter_mode mode)
>
> if (!crypto_adapter_setup_done) {
> ret = configure_event_crypto_adapter(mode);
> - if (!ret) {
> + if (ret)
> + return ret;
> + if (!params.internal_port_op_fwd) {
> qid = TEST_CRYPTO_EV_QUEUE_ID;
> ret = rte_event_port_link(evdev,
> params.crypto_event_port_id, &qid, NULL,
> 1);
> TEST_ASSERT(ret >= 0, "Failed to link queue %d "
> "port=%u\n", qid,
> params.crypto_event_port_id);
> - } else {
> - return ret;
> }
> crypto_adapter_setup_done = 1;
> }
> --
> 2.25.1