ionic_txrx.h 773 B

12345678910111213141516171819202122
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /* Copyright(c) 2017 - 2019 Pensando Systems, Inc */
  3. #ifndef _IONIC_TXRX_H_
  4. #define _IONIC_TXRX_H_
  5. struct bpf_prog;
  6. void ionic_tx_flush(struct ionic_cq *cq);
  7. void ionic_rx_fill(struct ionic_queue *q, struct bpf_prog *xdp_prog);
  8. void ionic_rx_empty(struct ionic_queue *q);
  9. void ionic_tx_empty(struct ionic_queue *q);
  10. int ionic_rx_napi(struct napi_struct *napi, int budget);
  11. int ionic_tx_napi(struct napi_struct *napi, int budget);
  12. int ionic_txrx_napi(struct napi_struct *napi, int budget);
  13. netdev_tx_t ionic_start_xmit(struct sk_buff *skb, struct net_device *netdev);
  14. bool ionic_rx_service(struct ionic_cq *cq);
  15. int ionic_xdp_xmit(struct net_device *netdev, int n, struct xdp_frame **xdp, u32 flags);
  16. #endif /* _IONIC_TXRX_H_ */