net/cxgbe: add flow ops to match based on dest MAC
[dpdk.git] / drivers / net / cxgbe / cxgbe_pfvf.h
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2018 Chelsio Communications.
3  * All rights reserved.
4  */
5
6 #ifndef _CXGBE_PFVF_H_
7 #define _CXGBE_PFVF_H_
8
9 void cxgbe_dev_rx_queue_release(void *q);
10 void cxgbe_dev_tx_queue_release(void *q);
11 void cxgbe_dev_stop(struct rte_eth_dev *eth_dev);
12 void cxgbe_dev_close(struct rte_eth_dev *eth_dev);
13 void cxgbe_dev_info_get(struct rte_eth_dev *eth_dev,
14                         struct rte_eth_dev_info *device_info);
15 void cxgbe_dev_promiscuous_enable(struct rte_eth_dev *eth_dev);
16 void cxgbe_dev_promiscuous_disable(struct rte_eth_dev *eth_dev);
17 void cxgbe_dev_allmulticast_enable(struct rte_eth_dev *eth_dev);
18 void cxgbe_dev_allmulticast_disable(struct rte_eth_dev *eth_dev);
19 int cxgbe_mac_addr_set(struct rte_eth_dev *dev, struct ether_addr *addr);
20 int cxgbe_dev_configure(struct rte_eth_dev *eth_dev);
21 int cxgbe_dev_tx_queue_setup(struct rte_eth_dev *eth_dev, uint16_t queue_idx,
22                              uint16_t nb_desc, unsigned int socket_id,
23                              const struct rte_eth_txconf *tx_conf);
24 int cxgbe_dev_rx_queue_setup(struct rte_eth_dev *eth_dev, uint16_t queue_idx,
25                              uint16_t nb_desc, unsigned int socket_id,
26                              const struct rte_eth_rxconf *rx_conf,
27                              struct rte_mempool *mp);
28 int cxgbe_dev_tx_queue_start(struct rte_eth_dev *eth_dev,
29                              uint16_t tx_queue_id);
30 int cxgbe_dev_rx_queue_start(struct rte_eth_dev *eth_dev,
31                              uint16_t tx_queue_id);
32 int cxgbe_dev_tx_queue_stop(struct rte_eth_dev *eth_dev, uint16_t tx_queue_id);
33 int cxgbe_dev_rx_queue_stop(struct rte_eth_dev *eth_dev, uint16_t rx_queue_id);
34 int cxgbe_dev_mtu_set(struct rte_eth_dev *eth_dev, uint16_t mtu);
35 int cxgbe_dev_start(struct rte_eth_dev *eth_dev);
36 int cxgbe_dev_link_update(struct rte_eth_dev *eth_dev,
37                           int wait_to_complete);
38 int cxgbe_dev_set_link_up(struct rte_eth_dev *dev);
39 int cxgbe_dev_set_link_down(struct rte_eth_dev *dev);
40 uint16_t cxgbe_xmit_pkts(void *tx_queue, struct rte_mbuf **tx_pkts,
41                          uint16_t nb_pkts);
42 uint16_t cxgbe_recv_pkts(void *rx_queue, struct rte_mbuf **rx_pkts,
43                          uint16_t nb_pkts);
44 const uint32_t *cxgbe_dev_supported_ptypes_get(struct rte_eth_dev *eth_dev);
45 #endif /* _CXGBE_PFVF_H_ */