5#ifndef _RTE_ETHDEV_CORE_H_
6#define _RTE_ETHDEV_CORE_H_
22struct rte_eth_dev_callback;
31typedef uint16_t (*eth_rx_burst_t)(
void *rxq,
38typedef uint16_t (*eth_tx_burst_t)(
void *
txq,
45typedef uint16_t (*eth_tx_prep_t)(
void *
txq,
51typedef uint32_t (*eth_rx_queue_count_t)(
void *rxq);
54typedef int (*eth_rx_descriptor_status_t)(
void *rxq, uint16_t offset);
57typedef int (*eth_tx_descriptor_status_t)(
void *
txq, uint16_t offset);
66struct rte_ethdev_qdata {
80struct rte_eth_fp_ops {
88 eth_rx_burst_t rx_pkt_burst;
90 eth_rx_queue_count_t rx_queue_count;
92 eth_rx_descriptor_status_t rx_descriptor_status;
94 struct rte_ethdev_qdata rxq;
95 uintptr_t reserved1[3];
104 eth_tx_burst_t tx_pkt_burst;
106 eth_tx_prep_t tx_pkt_prepare;
108 eth_tx_descriptor_status_t tx_descriptor_status;
110 struct rte_ethdev_qdata txq;
111 uintptr_t reserved2[3];
116extern struct rte_eth_fp_ops rte_eth_fp_ops[RTE_MAX_ETHPORTS];
RTE_TAILQ_HEAD(vdev_driver_list, rte_vdev_driver)
#define __rte_cache_aligned