[1/4] eventdev/eth_rx: change eventdev reconfig logic
Checks
Commit Message
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 <s.v.naga.harish.k@intel.com>
---
.../prog_guide/event_ethernet_rx_adapter.rst | 18 ++++++++++++++++++
lib/eventdev/rte_event_eth_rx_adapter.c | 3 +++
2 files changed, 21 insertions(+)
@@ -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
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -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",