On Wed, Dec 22, 2021 at 11:43 AM Naga Harish K S V <s.v.naga.haris...@intel.com> wrote: > > This patch introduces new api for retrieving event port id > of eth rx adapter. > > Signed-off-by: Naga Harish K S V <s.v.naga.haris...@intel.com> > --- > lib/eventdev/rte_event_eth_rx_adapter.c | 20 ++++++++++++++++++++ > lib/eventdev/rte_event_eth_rx_adapter.h | 20 ++++++++++++++++++++ > lib/eventdev/version.map | 1 + > 3 files changed, 41 insertions(+) > > diff --git a/lib/eventdev/rte_event_eth_rx_adapter.c > b/lib/eventdev/rte_event_eth_rx_adapter.c > index 809416d9b7..fca2e38690 100644 > --- a/lib/eventdev/rte_event_eth_rx_adapter.c > +++ b/lib/eventdev/rte_event_eth_rx_adapter.c > @@ -3119,6 +3119,26 @@ rte_event_eth_rx_adapter_service_id_get(uint8_t id, > uint32_t *service_id) > return rx_adapter->service_inited ? 0 : -ESRCH; > } > > +int > +rte_event_eth_rx_adapter_event_port_get(uint8_t id, uint8_t *event_port_id) > +{ > + struct event_eth_rx_adapter *rx_adapter; > + > + if (rxa_memzone_lookup()) > + return -ENOMEM; > + > + RTE_EVENT_ETH_RX_ADAPTER_ID_VALID_OR_ERR_RET(id, -EINVAL); > + > + rx_adapter = rxa_id_to_adapter(id); > + if (rx_adapter == NULL || event_port_id == NULL) > + return -EINVAL; > + > + if (rx_adapter->service_inited) > + *event_port_id = rx_adapter->event_port_id; > + > + return rx_adapter->service_inited ? 0 : -ESRCH; > +} > + > int > rte_event_eth_rx_adapter_cb_register(uint8_t id, > uint16_t eth_dev_id, > diff --git a/lib/eventdev/rte_event_eth_rx_adapter.h > b/lib/eventdev/rte_event_eth_rx_adapter.h > index 9546d792e9..1364eafe38 100644 > --- a/lib/eventdev/rte_event_eth_rx_adapter.h > +++ b/lib/eventdev/rte_event_eth_rx_adapter.h > @@ -37,6 +37,7 @@ > * - rte_event_eth_rx_adapter_queue_conf_get() > * - rte_event_eth_rx_adapter_queue_stats_get() > * - rte_event_eth_rx_adapter_queue_stats_reset() > + * - rte_event_eth_rx_adapter_event_port_get() > * > * The application creates an ethernet to event adapter using > * rte_event_eth_rx_adapter_create_ext() or rte_event_eth_rx_adapter_create() > @@ -684,6 +685,25 @@ rte_event_eth_rx_adapter_queue_stats_reset(uint8_t id, > uint16_t eth_dev_id, > uint16_t rx_queue_id); > > +/** > + * Retrieve the event port ID of an adapter. If the adapter doesn't use > + * a rte_service function, this function returns -ESRCH. > + * > + * @param id > + * Adapter identifier. > + * > + * @param [out] event_port_id > + * A pointer to a uint32_t, to be filled in with the port id.
Pointer to uint8t_t. Right? > + * > + * @return > + * - 0: Success > + * - <0: Error code on failure, if the adapter doesn't use a rte_service > + * function, this function returns -ESRCH. > + */ > +__rte_experimental > +int > +rte_event_eth_rx_adapter_event_port_get(uint8_t id, uint8_t *event_port_id); > + > #ifdef __cplusplus > } > #endif > diff --git a/lib/eventdev/version.map b/lib/eventdev/version.map > index ade1f1182e..91d2b5723b 100644 > --- a/lib/eventdev/version.map > +++ b/lib/eventdev/version.map > @@ -102,6 +102,7 @@ EXPERIMENTAL { > > # added in 21.11 See below > rte_event_eth_rx_adapter_create_with_params; Added in 22.03. Also please update the release note for the new API addition. > + rte_event_eth_rx_adapter_event_port_get; > rte_event_eth_rx_adapter_queue_conf_get; > rte_event_eth_rx_adapter_queue_stats_get; > rte_event_eth_rx_adapter_queue_stats_reset; > -- > 2.25.1 >