Add framework to support capability based pipeline. Based on the capability of event device and probed ethernet devices the optimal pipeline configuration can be chosen.
Signed-off-by: Pavan Nikhilesh <pbhagavat...@caviumnetworks.com> --- examples/eventdev_pipeline_sw_pmd/pipeline_common.h | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/examples/eventdev_pipeline_sw_pmd/pipeline_common.h b/examples/eventdev_pipeline_sw_pmd/pipeline_common.h index 938e155d3..5219a4e85 100644 --- a/examples/eventdev_pipeline_sw_pmd/pipeline_common.h +++ b/examples/eventdev_pipeline_sw_pmd/pipeline_common.h @@ -67,6 +67,16 @@ struct worker_data { uint8_t port_id; } __rte_cache_aligned; +struct setup_data { + int (*worker_loop)(void *); + int (*consumer_loop)(void); + void (*schedule_loop)(unsigned int); + int (*eventdev_setup)(struct prod_data *, struct cons_data *, + struct worker_data *); + void (*rx_adapter_setup)(uint16_t nb_ports); + void (*opt_check)(void); +}; + struct fastpath_data { volatile int done; uint32_t rx_lock; @@ -82,6 +92,7 @@ struct fastpath_data { unsigned int sched_core[MAX_NUM_CORE]; unsigned int worker_core[MAX_NUM_CORE]; struct rte_eth_dev_tx_buffer *tx_buf[RTE_MAX_ETHPORTS]; + struct setup_data cap; } __rte_cache_aligned; struct config_data { -- 2.14.1