]>
Commit | Line | Data |
---|---|---|
f67539c2 TL |
1 | /* SPDX-License-Identifier: BSD-3-Clause |
2 | * Copyright(c) 2020 Intel Corporation | |
3 | */ | |
4 | ||
5 | #ifndef _IGC_TXRX_H_ | |
6 | #define _IGC_TXRX_H_ | |
7 | ||
8 | #include "igc_ethdev.h" | |
9 | ||
10 | #ifdef __cplusplus | |
11 | extern "C" { | |
12 | #endif | |
13 | ||
14 | /* | |
15 | * RX/TX function prototypes | |
16 | */ | |
17 | void eth_igc_tx_queue_release(void *txq); | |
18 | void eth_igc_rx_queue_release(void *rxq); | |
19 | void igc_dev_clear_queues(struct rte_eth_dev *dev); | |
20 | int eth_igc_rx_queue_setup(struct rte_eth_dev *dev, uint16_t rx_queue_id, | |
21 | uint16_t nb_rx_desc, unsigned int socket_id, | |
22 | const struct rte_eth_rxconf *rx_conf, | |
23 | struct rte_mempool *mb_pool); | |
24 | ||
25 | uint32_t eth_igc_rx_queue_count(struct rte_eth_dev *dev, | |
26 | uint16_t rx_queue_id); | |
27 | ||
28 | int eth_igc_rx_descriptor_done(void *rx_queue, uint16_t offset); | |
29 | ||
30 | int eth_igc_rx_descriptor_status(void *rx_queue, uint16_t offset); | |
31 | ||
32 | int eth_igc_tx_descriptor_status(void *tx_queue, uint16_t offset); | |
33 | ||
34 | int eth_igc_tx_queue_setup(struct rte_eth_dev *dev, uint16_t queue_idx, | |
35 | uint16_t nb_desc, unsigned int socket_id, | |
36 | const struct rte_eth_txconf *tx_conf); | |
37 | int eth_igc_tx_done_cleanup(void *txqueue, uint32_t free_cnt); | |
38 | ||
39 | int igc_rx_init(struct rte_eth_dev *dev); | |
40 | void igc_tx_init(struct rte_eth_dev *dev); | |
41 | void igc_rss_disable(struct rte_eth_dev *dev); | |
42 | void | |
43 | igc_hw_rss_hash_set(struct igc_hw *hw, struct rte_eth_rss_conf *rss_conf); | |
44 | int igc_del_rss_filter(struct rte_eth_dev *dev); | |
45 | void igc_rss_conf_set(struct igc_rss_filter *out, | |
46 | const struct rte_flow_action_rss *rss); | |
47 | int igc_add_rss_filter(struct rte_eth_dev *dev, struct igc_rss_filter *rss); | |
48 | void igc_clear_rss_filter(struct rte_eth_dev *dev); | |
49 | void eth_igc_rxq_info_get(struct rte_eth_dev *dev, uint16_t queue_id, | |
50 | struct rte_eth_rxq_info *qinfo); | |
51 | void eth_igc_txq_info_get(struct rte_eth_dev *dev, uint16_t queue_id, | |
52 | struct rte_eth_txq_info *qinfo); | |
53 | void eth_igc_vlan_strip_queue_set(struct rte_eth_dev *dev, | |
54 | uint16_t rx_queue_id, int on); | |
55 | #ifdef __cplusplus | |
56 | } | |
57 | #endif | |
58 | ||
59 | #endif /* _IGC_TXRX_H_ */ |