dpdk/drivers/net/cxgbe/cxgbe_pfvf.h
<<
>>
Prefs
   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#define CXGBE_FW_PARAM_DEV(param) \
  10        (V_FW_PARAMS_MNEM(FW_PARAMS_MNEM_DEV) | \
  11         V_FW_PARAMS_PARAM_X(FW_PARAMS_PARAM_DEV_##param))
  12
  13#define CXGBE_FW_PARAM_PFVF(param) \
  14        (V_FW_PARAMS_MNEM(FW_PARAMS_MNEM_PFVF) | \
  15         V_FW_PARAMS_PARAM_X(FW_PARAMS_PARAM_PFVF_##param) |  \
  16         V_FW_PARAMS_PARAM_Y(0) | \
  17         V_FW_PARAMS_PARAM_Z(0))
  18
  19void cxgbe_dev_rx_queue_release(void *q);
  20void cxgbe_dev_tx_queue_release(void *q);
  21int cxgbe_dev_stop(struct rte_eth_dev *eth_dev);
  22int cxgbe_dev_close(struct rte_eth_dev *eth_dev);
  23int cxgbe_dev_info_get(struct rte_eth_dev *eth_dev,
  24                       struct rte_eth_dev_info *device_info);
  25int cxgbe_dev_promiscuous_enable(struct rte_eth_dev *eth_dev);
  26int cxgbe_dev_promiscuous_disable(struct rte_eth_dev *eth_dev);
  27int cxgbe_dev_allmulticast_enable(struct rte_eth_dev *eth_dev);
  28int cxgbe_dev_allmulticast_disable(struct rte_eth_dev *eth_dev);
  29int cxgbe_mac_addr_set(struct rte_eth_dev *dev, struct rte_ether_addr *addr);
  30int cxgbe_dev_configure(struct rte_eth_dev *eth_dev);
  31int cxgbe_dev_tx_queue_setup(struct rte_eth_dev *eth_dev, uint16_t queue_idx,
  32                             uint16_t nb_desc, unsigned int socket_id,
  33                             const struct rte_eth_txconf *tx_conf);
  34int cxgbe_dev_rx_queue_setup(struct rte_eth_dev *eth_dev, uint16_t queue_idx,
  35                             uint16_t nb_desc, unsigned int socket_id,
  36                             const struct rte_eth_rxconf *rx_conf,
  37                             struct rte_mempool *mp);
  38int cxgbe_dev_tx_queue_start(struct rte_eth_dev *eth_dev,
  39                             uint16_t tx_queue_id);
  40int cxgbe_dev_rx_queue_start(struct rte_eth_dev *eth_dev,
  41                             uint16_t tx_queue_id);
  42int cxgbe_dev_tx_queue_stop(struct rte_eth_dev *eth_dev, uint16_t tx_queue_id);
  43int cxgbe_dev_rx_queue_stop(struct rte_eth_dev *eth_dev, uint16_t rx_queue_id);
  44int cxgbe_dev_mtu_set(struct rte_eth_dev *eth_dev, uint16_t mtu);
  45int cxgbe_dev_start(struct rte_eth_dev *eth_dev);
  46int cxgbe_dev_link_update(struct rte_eth_dev *eth_dev,
  47                          int wait_to_complete);
  48int cxgbe_dev_set_link_up(struct rte_eth_dev *dev);
  49int cxgbe_dev_set_link_down(struct rte_eth_dev *dev);
  50uint16_t cxgbe_xmit_pkts(void *tx_queue, struct rte_mbuf **tx_pkts,
  51                         uint16_t nb_pkts);
  52uint16_t cxgbe_recv_pkts(void *rx_queue, struct rte_mbuf **rx_pkts,
  53                         uint16_t nb_pkts);
  54const uint32_t *cxgbe_dev_supported_ptypes_get(struct rte_eth_dev *eth_dev);
  55#endif /* _CXGBE_PFVF_H_ */
  56