From patchwork Wed Dec 14 05:55:48 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Naga Harish K, S V" X-Patchwork-Id: 120856 X-Patchwork-Delegate: jerinj@marvell.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id DB167A0543; Wed, 14 Dec 2022 06:55:58 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id BE476400D6; Wed, 14 Dec 2022 06:55:58 +0100 (CET) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by mails.dpdk.org (Postfix) with ESMTP id D49904003F for ; Wed, 14 Dec 2022 06:55:56 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1670997357; x=1702533357; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=gooTUz7g6hh+X3+S1XkvYcKxUa3ukjZYt63QcckRSv8=; b=KBTmjJe5uEM8AWMrwZjYm7w4SsxUaJXhU0VUQNBGmv0bXvv6gRNp7rdC Y8E5xEXLa3oTNynJFuQTcCCqRuL3B72bEWAyBBhCgSt4XCXWnaZK5+QSS IoIbByNcXHXJgBrGFsGwU1l6majueWzvyIqP1tEpKWmHi2xAgvB6HxacZ FhJ5NuLW+bsHnVhr5IYJvlbTrrPj72uI6uU5pH4dWa9Wvz8s3FSP6m9qY Ux2Sx+Ex9c7sQEjt6vSSMoDAe4z6sBmqZQk9OjpH2iUvZmgZ1cimoq1r9 k74CGjOeiF3Zqbq/c0yx7r3N6ANFh4B2wP5vRDxCscEsY9RBan4d/aMQ5 g==; X-IronPort-AV: E=McAfee;i="6500,9779,10560"; a="404589150" X-IronPort-AV: E=Sophos;i="5.96,243,1665471600"; d="scan'208";a="404589150" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Dec 2022 21:55:55 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10560"; a="648878183" X-IronPort-AV: E=Sophos;i="5.96,243,1665471600"; d="scan'208";a="648878183" Received: from txandevlnx322.an.intel.com ([10.123.117.44]) by orsmga002.jf.intel.com with ESMTP; 13 Dec 2022 21:55:54 -0800 From: Naga Harish K S V To: jerinj@marvell.com, erik.g.carrillo@intel.com, abhinandan.gujjar@intel.com Cc: dev@dpdk.org, jay.jayatheerthan@intel.com Subject: [PATCH 1/4] eventdev/eth_rx: change eventdev reconfig logic Date: Tue, 13 Dec 2022 23:55:48 -0600 Message-Id: <20221214055551.913821-1-s.v.naga.harish.k@intel.com> X-Mailer: git-send-email 2.23.0 MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org When rte_event_eth_rx_adapter_create() or rte_event_eth_rx_adapter_create_with_params() is used for creating adapter instance, eventdev is reconfigured with additional ``rte_event_dev_config::nb_event_ports`` parameter. This eventdev reconfig logic is enhanced to increment the ``rte_event_dev_config::nb_single_link_event_port_queues`` parameter if the adapter event port config is of type ``RTE_EVENT_PORT_CFG_SINGLE_LINK``. With this change the application no longer need to configure the eventdev with ``rte_event_dev_config::nb_single_link_event_port_queues`` parameter required for eth_rx adapter when the adapter is created using above mentioned apis. Signed-off-by: Naga Harish K S V --- .../prog_guide/event_ethernet_rx_adapter.rst | 18 ++++++++++++++++++ lib/eventdev/rte_event_eth_rx_adapter.c | 3 +++ 2 files changed, 21 insertions(+) diff --git a/doc/guides/prog_guide/event_ethernet_rx_adapter.rst b/doc/guides/prog_guide/event_ethernet_rx_adapter.rst index 116c0a27c6..8fc9be0a9d 100644 --- a/doc/guides/prog_guide/event_ethernet_rx_adapter.rst +++ b/doc/guides/prog_guide/event_ethernet_rx_adapter.rst @@ -71,6 +71,24 @@ set to true. The function is passed the event device to be associated with the adapter and port configuration for the adapter to setup an event port if the adapter needs to use a service function. +Event device configuration for service based adapter +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +When rte_event_eth_rx_adapter_create() or +rte_event_eth_rx_adapter_create_with_params() is used for creating +adapter instance, eventdev is reconfigured with additional +``rte_event_dev_config::nb_event_ports`` parameter. +This eventdev reconfig logic also increment the +``rte_event_dev_config::nb_single_link_event_port_queues`` +parameter if the adapter event port config is of type +``RTE_EVENT_PORT_CFG_SINGLE_LINK``. + +So the application is no longer need to configure the +event device with ``rte_event_dev_config::nb_event_ports`` and +``rte_event_dev_config::nb_single_link_event_port_queues`` +parameters required for eth_rx adapter when the adapter is created +using above mentioned apis. + Adding Rx Queues to the Adapter Instance ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/lib/eventdev/rte_event_eth_rx_adapter.c b/lib/eventdev/rte_event_eth_rx_adapter.c index cf7bbd4d69..34aa87379e 100644 --- a/lib/eventdev/rte_event_eth_rx_adapter.c +++ b/lib/eventdev/rte_event_eth_rx_adapter.c @@ -1532,6 +1532,9 @@ rxa_default_conf_cb(uint8_t id, uint8_t dev_id, rte_event_dev_stop(dev_id); port_id = dev_conf.nb_event_ports; dev_conf.nb_event_ports += 1; + if (port_conf->event_port_cfg & RTE_EVENT_PORT_CFG_SINGLE_LINK) + dev_conf.nb_single_link_event_port_queues += 1; + ret = rte_event_dev_configure(dev_id, &dev_conf); if (ret) { RTE_EDEV_LOG_ERR("failed to configure event dev %u\n", From patchwork Wed Dec 14 05:55:49 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Naga Harish K, S V" X-Patchwork-Id: 120857 X-Patchwork-Delegate: jerinj@marvell.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 33078A0543; Wed, 14 Dec 2022 06:56:04 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9FAFD40DF6; Wed, 14 Dec 2022 06:56:00 +0100 (CET) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by mails.dpdk.org (Postfix) with ESMTP id 39BCD40684 for ; Wed, 14 Dec 2022 06:55:59 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1670997359; x=1702533359; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=DPrYdcoiISi4O3TOT9uKk2HW4hKw6IfnHbveyOtWxwc=; b=NDjBXytPzVDnIp+vKI2m26D2knT/jYBT86HFZR7GD0NeQ0LBLWVoHc6j WukKiXkp3Tdgs1HmUunQLZtGPdOYa11LrpJQdCLLuZEHFH3H3zOXvbIAR nDFk5GkB6RqVlBUBQfH1z4t4Lz+VsfRnPZZDm5fwDmTySuXn/hGI3eGGT pNOSuC6rLD8xwStNcfQosSuDrtTAiO2KLYEeOjBYiWb6xb1IxWj9u074X og3ucv2S863O/jRrU7BWb1/aug9HUBoZZF4a87Zxg+W4FIYzbXdtiQJNu LDA7ZdhpG2Q5fEy9l2oll0uk24ZF39Uv0vaocdkfR8/w6UtmZrU1KGCgK Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10560"; a="404589156" X-IronPort-AV: E=Sophos;i="5.96,243,1665471600"; d="scan'208";a="404589156" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Dec 2022 21:55:58 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10560"; a="648878209" X-IronPort-AV: E=Sophos;i="5.96,243,1665471600"; d="scan'208";a="648878209" Received: from txandevlnx322.an.intel.com ([10.123.117.44]) by orsmga002.jf.intel.com with ESMTP; 13 Dec 2022 21:55:57 -0800 From: Naga Harish K S V To: jerinj@marvell.com, erik.g.carrillo@intel.com, abhinandan.gujjar@intel.com Cc: dev@dpdk.org, jay.jayatheerthan@intel.com Subject: [PATCH 2/4] eventdev/eth_tx: change eventdev reconfig logic Date: Tue, 13 Dec 2022 23:55:49 -0600 Message-Id: <20221214055551.913821-2-s.v.naga.harish.k@intel.com> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20221214055551.913821-1-s.v.naga.harish.k@intel.com> References: <20221214055551.913821-1-s.v.naga.harish.k@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org When rte_event_eth_tx_adapter_create() is used for creating adapter instance, eventdev is reconfigured with additional ``rte_event_dev_config::nb_event_ports`` parameter. This eventdev reconfig logic is enhanced to increment the ``rte_event_dev_config::nb_single_link_event_port_queues`` parameter if the adapter event port config is of type ``RTE_EVENT_PORT_CFG_SINGLE_LINK``. With this change the application is no longer need to configure the eventdev with ``rte_event_dev_config::nb_single_link_event_port_queues`` parameter required for eth_tx adapter when the adapter is created using above mentioned api. Signed-off-by: Naga Harish K S V --- .../prog_guide/event_ethernet_tx_adapter.rst | 17 +++++++++++++++++ lib/eventdev/rte_event_eth_tx_adapter.c | 2 ++ 2 files changed, 19 insertions(+) diff --git a/doc/guides/prog_guide/event_ethernet_tx_adapter.rst b/doc/guides/prog_guide/event_ethernet_tx_adapter.rst index 905cb445e0..ee3a163276 100644 --- a/doc/guides/prog_guide/event_ethernet_tx_adapter.rst +++ b/doc/guides/prog_guide/event_ethernet_tx_adapter.rst @@ -56,6 +56,23 @@ and needs to create an event port for it. The callback is expected to fill the err = rte_event_eth_tx_adapter_create(id, dev_id, &tx_p_conf); +Event device configuration for service based adapter +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +When rte_event_eth_tx_adapter_create() is used for creating +adapter instance, eventdev is reconfigured with additional +``rte_event_dev_config::nb_event_ports`` parameter. +This eventdev reconfig logic also increment the +``rte_event_dev_config::nb_single_link_event_port_queues`` +parameter if the adapter event port config is of type +``RTE_EVENT_PORT_CFG_SINGLE_LINK``. + +So the application is no longer need to configure the +event device with ``rte_event_dev_config::nb_event_ports`` and +``rte_event_dev_config::nb_single_link_event_port_queues`` +parameters required for eth_tx adapter when the adapter is created +using above mentioned api. + Adding Tx Queues to the Adapter Instance ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/lib/eventdev/rte_event_eth_tx_adapter.c b/lib/eventdev/rte_event_eth_tx_adapter.c index 88309d2aaa..c780ee1264 100644 --- a/lib/eventdev/rte_event_eth_tx_adapter.c +++ b/lib/eventdev/rte_event_eth_tx_adapter.c @@ -316,6 +316,8 @@ txa_service_conf_cb(uint8_t __rte_unused id, uint8_t dev_id, port_id = dev_conf.nb_event_ports; dev_conf.nb_event_ports += 1; + if (pc->event_port_cfg & RTE_EVENT_PORT_CFG_SINGLE_LINK) + dev_conf.nb_single_link_event_port_queues += 1; ret = rte_event_dev_configure(dev_id, &dev_conf); if (ret) { From patchwork Wed Dec 14 05:55:50 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Naga Harish K, S V" X-Patchwork-Id: 120858 X-Patchwork-Delegate: jerinj@marvell.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id B14C2A0543; Wed, 14 Dec 2022 06:56:10 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 847C242D14; Wed, 14 Dec 2022 06:56:05 +0100 (CET) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by mails.dpdk.org (Postfix) with ESMTP id BBA2242C4D for ; Wed, 14 Dec 2022 06:56:02 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1670997362; x=1702533362; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=a1esJITQc9YZXR9ytIRrZzhElUjcdsrDr0TGtg/xGmU=; b=TnVmtUZem2TQliITTfrnDDLzS4yqtL1Iw/X534AaD7ILLxhF9YHmrvRl yFjKe+17cm5kau6I7MPOtAht5SIpehwDKfnL8kEQY0IWjkCxIvWCXfEdx 2XjaZDLgUK0o268MOSyPNXa1lqgTHO4GiokQd/+P7KoZfFYvv7UPLr3wl TLR4c/jf92SW3ptQCRayWfO+ya4OYK+j0SkK5Vh6hJNWR5ZWFfpiUhbkh 6fp8Rwm3md+03D8oMsV+Gf+qfoFY/I+CLGrFJ0BRJbB0G67epN2FjBEtn sfH8f7rNMbsNnXawF5NGddxMlS7VWXoyEserushwdQ/2tXi81oABhWTZk A==; X-IronPort-AV: E=McAfee;i="6500,9779,10560"; a="404589165" X-IronPort-AV: E=Sophos;i="5.96,243,1665471600"; d="scan'208";a="404589165" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Dec 2022 21:56:01 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10560"; a="648878241" X-IronPort-AV: E=Sophos;i="5.96,243,1665471600"; d="scan'208";a="648878241" Received: from txandevlnx322.an.intel.com ([10.123.117.44]) by orsmga002.jf.intel.com with ESMTP; 13 Dec 2022 21:56:00 -0800 From: Naga Harish K S V To: jerinj@marvell.com, erik.g.carrillo@intel.com, abhinandan.gujjar@intel.com Cc: dev@dpdk.org, jay.jayatheerthan@intel.com Subject: [PATCH 3/4] eventdev/crypto: change eventdev reconfig logic Date: Tue, 13 Dec 2022 23:55:50 -0600 Message-Id: <20221214055551.913821-3-s.v.naga.harish.k@intel.com> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20221214055551.913821-1-s.v.naga.harish.k@intel.com> References: <20221214055551.913821-1-s.v.naga.harish.k@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org When rte_event_crypto_adapter_create() is used for creating adapter instance, eventdev is reconfigured with additional ``rte_event_dev_config::nb_event_ports`` parameter. This eventdev reconfig logic is enhanced to increment the ``rte_event_dev_config::nb_single_link_event_port_queues`` parameter if the adapter event port config is of type ``RTE_EVENT_PORT_CFG_SINGLE_LINK``. With this change the application is no longer need to configure the eventdev with ``rte_event_dev_config::nb_single_link_event_port_queues`` parameter required for crypto adapter when the adapter is created using above mentioned api. Signed-off-by: Naga Harish K S V --- doc/guides/prog_guide/event_crypto_adapter.rst | 16 ++++++++++++++++ lib/eventdev/rte_event_crypto_adapter.c | 3 +++ 2 files changed, 19 insertions(+) diff --git a/doc/guides/prog_guide/event_crypto_adapter.rst b/doc/guides/prog_guide/event_crypto_adapter.rst index 554df7e358..668d767980 100644 --- a/doc/guides/prog_guide/event_crypto_adapter.rst +++ b/doc/guides/prog_guide/event_crypto_adapter.rst @@ -159,6 +159,22 @@ which it enqueues events towards the crypto adapter using nb_events); } +Event device configuration for service based adapter +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +When rte_event_crypto_adapter_create() is used for creating +adapter instance, eventdev is reconfigured with additional +``rte_event_dev_config::nb_event_ports`` parameter. +This eventdev reconfig logic also increment the +``rte_event_dev_config::nb_single_link_event_port_queues`` +parameter if the adapter event port config is of type +``RTE_EVENT_PORT_CFG_SINGLE_LINK``. + +So the application is no longer need to configure the +event device with ``rte_event_dev_config::nb_event_ports`` and +``rte_event_dev_config::nb_single_link_event_port_queues`` +parameters required for crypto adapter when the adapter is created +using above mentioned api. Querying adapter capabilities ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/lib/eventdev/rte_event_crypto_adapter.c b/lib/eventdev/rte_event_crypto_adapter.c index 3c585d7b0d..5620a36dd3 100644 --- a/lib/eventdev/rte_event_crypto_adapter.c +++ b/lib/eventdev/rte_event_crypto_adapter.c @@ -287,6 +287,9 @@ eca_default_config_cb(uint8_t id, uint8_t dev_id, rte_event_dev_stop(dev_id); port_id = dev_conf.nb_event_ports; dev_conf.nb_event_ports += 1; + if (port_conf->event_port_cfg & RTE_EVENT_PORT_CFG_SINGLE_LINK) + dev_conf.nb_single_link_event_port_queues += 1; + ret = rte_event_dev_configure(dev_id, &dev_conf); if (ret) { RTE_EDEV_LOG_ERR("failed to configure event dev %u\n", dev_id); From patchwork Wed Dec 14 05:55:51 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Naga Harish K, S V" X-Patchwork-Id: 120859 X-Patchwork-Delegate: jerinj@marvell.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 2471EA0543; Wed, 14 Dec 2022 06:56:16 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6988C42D1F; Wed, 14 Dec 2022 06:56:07 +0100 (CET) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by mails.dpdk.org (Postfix) with ESMTP id 0DD0542C4D for ; Wed, 14 Dec 2022 06:56:04 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1670997365; x=1702533365; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=7h3U64ebZmvFP5J2QnTllLfjZWvebQ17hbNmUw47syY=; b=Ko2EZ1OoWuaD29dK+5d/xtdRVhxw2M2jON2zy0s0hfk2m5EBEJT7zdMO 8omQjDwEM9D8hanbdUn9E1fPMCuuK/TE+jLeOOPLWqpvmDUtaI0ZHXCd/ Mge9BfLIxkGQqwKnkzzEW2pTbkXtsgxed80IQXiNpXqYoT0uRHedS2r6D SvPodL65u+8XVULesLQufl1ty95k6b3zaMC9FEDXg5iNYCNkUIA24qG9g lcyW6ZnEHFT443sGLTP7ZMUkomTrzZp8qSdzmUr5TZo11QkqE8zHOzkPf rwF5DISS9N7ItAJCXOTJWROSE+xVDt6OxzuUShz1/LVGx4SMIUzmYG3Fb g==; X-IronPort-AV: E=McAfee;i="6500,9779,10560"; a="404589181" X-IronPort-AV: E=Sophos;i="5.96,243,1665471600"; d="scan'208";a="404589181" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Dec 2022 21:56:04 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10560"; a="648878290" X-IronPort-AV: E=Sophos;i="5.96,243,1665471600"; d="scan'208";a="648878290" Received: from txandevlnx322.an.intel.com ([10.123.117.44]) by orsmga002.jf.intel.com with ESMTP; 13 Dec 2022 21:56:03 -0800 From: Naga Harish K S V To: jerinj@marvell.com, erik.g.carrillo@intel.com, abhinandan.gujjar@intel.com Cc: dev@dpdk.org, jay.jayatheerthan@intel.com Subject: [PATCH 4/4] eventdev/timer: change eventdev reconfig logic Date: Tue, 13 Dec 2022 23:55:51 -0600 Message-Id: <20221214055551.913821-4-s.v.naga.harish.k@intel.com> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20221214055551.913821-1-s.v.naga.harish.k@intel.com> References: <20221214055551.913821-1-s.v.naga.harish.k@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org When rte_event_timer_adapter_create() is used for creating adapter instance, eventdev is reconfigured with additional ``rte_event_dev_config::nb_event_ports`` parameter. This eventdev reconfig logic is enhanced to increment the ``rte_event_dev_config::nb_single_link_event_port_queues`` parameter if the adapter event port config is of type ``RTE_EVENT_PORT_CFG_SINGLE_LINK``. With this change the application is no longer need to configure the eventdev with ``rte_event_dev_config::nb_single_link_event_port_queues`` parameter required for timer adapter when the adapter is created using above mentioned api. Signed-off-by: Naga Harish K S V --- doc/guides/prog_guide/event_timer_adapter.rst | 17 ++++++++++++++ lib/eventdev/rte_event_timer_adapter.c | 23 +++++++++++-------- 2 files changed, 30 insertions(+), 10 deletions(-) diff --git a/doc/guides/prog_guide/event_timer_adapter.rst b/doc/guides/prog_guide/event_timer_adapter.rst index d7307a29bb..2234d9006d 100644 --- a/doc/guides/prog_guide/event_timer_adapter.rst +++ b/doc/guides/prog_guide/event_timer_adapter.rst @@ -139,6 +139,23 @@ This function is passed a callback function that will be invoked if the adapter needs to create an event port, giving the application the opportunity to control how it is done. +Event device configuration for service based adapter +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +When rte_event_eth_rx_adapter_create() is used for creating +adapter instance, eventdev is reconfigured with additional +``rte_event_dev_config::nb_event_ports`` parameter. +This eventdev reconfig logic also increment the +``rte_event_dev_config::nb_single_link_event_port_queues`` +parameter if the adapter event port config is of type +``RTE_EVENT_PORT_CFG_SINGLE_LINK``. + +So the application is no longer need to configure the +event device with ``rte_event_dev_config::nb_event_ports`` and +``rte_event_dev_config::nb_single_link_event_port_queues`` +parameters required for timer adapter when the adapter is created +using above mentioned api. + Adapter modes ^^^^^^^^^^^^^ An event timer adapter can be configured in either periodic or non-periodic mode diff --git a/lib/eventdev/rte_event_timer_adapter.c b/lib/eventdev/rte_event_timer_adapter.c index a0f14bf861..5ed233db00 100644 --- a/lib/eventdev/rte_event_timer_adapter.c +++ b/lib/eventdev/rte_event_timer_adapter.c @@ -88,7 +88,20 @@ default_port_conf_cb(uint16_t id, uint8_t event_dev_id, uint8_t *event_port_id, rte_event_dev_stop(dev_id); port_id = dev_conf.nb_event_ports; + if (conf_arg != NULL) + port_conf = conf_arg; + else { + port_conf = &def_port_conf; + ret = rte_event_port_default_conf_get(dev_id, port_id, + port_conf); + if (ret < 0) + return ret; + } + dev_conf.nb_event_ports += 1; + if (port_conf->event_port_cfg & RTE_EVENT_PORT_CFG_SINGLE_LINK) + dev_conf.nb_single_link_event_port_queues += 1; + ret = rte_event_dev_configure(dev_id, &dev_conf); if (ret < 0) { EVTIM_LOG_ERR("failed to configure event dev %u\n", dev_id); @@ -99,16 +112,6 @@ default_port_conf_cb(uint16_t id, uint8_t event_dev_id, uint8_t *event_port_id, return ret; } - if (conf_arg != NULL) - port_conf = conf_arg; - else { - port_conf = &def_port_conf; - ret = rte_event_port_default_conf_get(dev_id, port_id, - port_conf); - if (ret < 0) - return ret; - } - ret = rte_event_port_setup(dev_id, port_id, port_conf); if (ret < 0) { EVTIM_LOG_ERR("failed to setup event port %u on event dev %u\n",