14ff45798SPavan Nikhilesh /* SPDX-License-Identifier: BSD-3-Clause 24ff45798SPavan Nikhilesh * Copyright(C) 2019 Marvell International Ltd. 34ff45798SPavan Nikhilesh */ 44ff45798SPavan Nikhilesh 54ff45798SPavan Nikhilesh #ifndef __L2FWD_POLL_H__ 64ff45798SPavan Nikhilesh #define __L2FWD_POLL_H__ 74ff45798SPavan Nikhilesh 84ff45798SPavan Nikhilesh #include "l2fwd_common.h" 94ff45798SPavan Nikhilesh 104ff45798SPavan Nikhilesh typedef void (*poll_main_loop_cb)(struct l2fwd_resources *rsrc); 114ff45798SPavan Nikhilesh 12*7e06c0deSTyler Retzlaff struct __rte_cache_aligned lcore_queue_conf { 134ff45798SPavan Nikhilesh uint32_t rx_port_list[MAX_RX_QUEUE_PER_LCORE]; 144ff45798SPavan Nikhilesh uint32_t n_rx_port; 15*7e06c0deSTyler Retzlaff }; 164ff45798SPavan Nikhilesh 174ff45798SPavan Nikhilesh struct l2fwd_poll_resources { 184ff45798SPavan Nikhilesh poll_main_loop_cb poll_main_loop; 194ff45798SPavan Nikhilesh struct rte_eth_dev_tx_buffer *tx_buffer[RTE_MAX_ETHPORTS]; 204ff45798SPavan Nikhilesh struct lcore_queue_conf lcore_queue_conf[RTE_MAX_LCORE]; 214ff45798SPavan Nikhilesh }; 224ff45798SPavan Nikhilesh 234ff45798SPavan Nikhilesh void l2fwd_poll_resource_setup(struct l2fwd_resources *rsrc); 244ff45798SPavan Nikhilesh 254ff45798SPavan Nikhilesh #endif 26