xref: /f-stack/dpdk/drivers/net/ark/ark_ethdev_tx.h (revision d30ea906)
1*d30ea906Sjfb8856606 /* SPDX-License-Identifier: BSD-3-Clause
2*d30ea906Sjfb8856606  * Copyright (c) 2015-2018 Atomic Rules LLC
32bfe3f2eSlogwang  */
42bfe3f2eSlogwang 
52bfe3f2eSlogwang #ifndef _ARK_ETHDEV_TX_H_
62bfe3f2eSlogwang #define _ARK_ETHDEV_TX_H_
72bfe3f2eSlogwang 
82bfe3f2eSlogwang #include <stdint.h>
92bfe3f2eSlogwang 
10*d30ea906Sjfb8856606 #include <rte_ethdev_driver.h>
112bfe3f2eSlogwang 
122bfe3f2eSlogwang 
132bfe3f2eSlogwang uint16_t eth_ark_xmit_pkts_noop(void *vtxq,
142bfe3f2eSlogwang 				struct rte_mbuf **tx_pkts,
152bfe3f2eSlogwang 				uint16_t nb_pkts);
162bfe3f2eSlogwang uint16_t eth_ark_xmit_pkts(void *vtxq,
172bfe3f2eSlogwang 			   struct rte_mbuf **tx_pkts,
182bfe3f2eSlogwang 			   uint16_t nb_pkts);
192bfe3f2eSlogwang int eth_ark_tx_queue_setup(struct rte_eth_dev *dev,
202bfe3f2eSlogwang 			   uint16_t queue_idx,
212bfe3f2eSlogwang 			   uint16_t nb_desc,
222bfe3f2eSlogwang 			   unsigned int socket_id,
232bfe3f2eSlogwang 			   const struct rte_eth_txconf *tx_conf);
242bfe3f2eSlogwang void eth_ark_tx_queue_release(void *vtx_queue);
252bfe3f2eSlogwang int eth_ark_tx_queue_stop(struct rte_eth_dev *dev, uint16_t queue_id);
262bfe3f2eSlogwang int eth_ark_tx_queue_start(struct rte_eth_dev *dev, uint16_t queue_id);
272bfe3f2eSlogwang void eth_tx_queue_stats_get(void *vqueue, struct rte_eth_stats *stats);
282bfe3f2eSlogwang void eth_tx_queue_stats_reset(void *vqueue);
292bfe3f2eSlogwang 
302bfe3f2eSlogwang #endif
31