ionic_queue
struct ionic_queue *q,
struct ionic_queue q;
struct ionic_queue q;
struct ionic_queue q;
struct ionic_queue sq;
struct ionic_queue rq;
void ionic_queue_destroy(struct ionic_queue *q, struct device *dma_dev)
int ionic_queue_init(struct ionic_queue *q, struct device *dma_dev,
static inline bool ionic_queue_full(struct ionic_queue *q)
static inline void *ionic_queue_at(struct ionic_queue *q, u16 idx)
static inline void *ionic_queue_at_prod(struct ionic_queue *q)
static inline void *ionic_queue_at_cons(struct ionic_queue *q)
static inline u16 ionic_queue_next(struct ionic_queue *q, u16 idx)
static inline void ionic_queue_produce(struct ionic_queue *q)
static inline void ionic_queue_consume(struct ionic_queue *q)
static inline void ionic_queue_consume_entries(struct ionic_queue *q,
static inline void ionic_queue_dbell_init(struct ionic_queue *q, u32 qid)
static inline u64 ionic_queue_dbell_val(struct ionic_queue *q)
int ionic_queue_init(struct ionic_queue *q, struct device *dma_dev,
void ionic_queue_destroy(struct ionic_queue *q, struct device *dma_dev);
static inline bool ionic_queue_empty(struct ionic_queue *q)
static inline u16 ionic_queue_length(struct ionic_queue *q)
static inline u16 ionic_queue_length_remaining(struct ionic_queue *q)
struct ionic_queue *q = &qcq->q;
struct ionic_queue *q = seq->private;
struct ionic_queue *q = seq->private;
struct ionic_queue *q, unsigned int index, const char *name,
void ionic_q_post(struct ionic_queue *q, bool ring_doorbell)
bool ionic_q_is_posted(struct ionic_queue *q, unsigned int pos)
struct ionic_queue *q = &qcq->q;
struct ionic_queue;
struct ionic_queue *partner;
struct ionic_queue *bound_q;
static inline unsigned int ionic_q_space_avail(struct ionic_queue *q)
static inline bool ionic_q_has_space(struct ionic_queue *q, unsigned int want)
void ionic_cq_bind(struct ionic_cq *cq, struct ionic_queue *q);
struct ionic_queue *q, unsigned int index, const char *name,
void ionic_q_post(struct ionic_queue *q, bool ring_doorbell);
bool ionic_q_is_posted(struct ionic_queue *q, unsigned int pos);
bool ionic_adminq_poke_doorbell(struct ionic_queue *q);
bool ionic_txq_poke_doorbell(struct ionic_queue *q);
bool ionic_rxq_poke_doorbell(struct ionic_queue *q);
struct ionic_queue *q = &qcq->q;
static void ionic_unregister_rxq_info(struct ionic_queue *q)
static int ionic_register_rxq_info(struct ionic_queue *q, unsigned int napi_id)
struct ionic_queue *q = &lif->rxqcqs[i]->q;
struct ionic_queue *q = &qcq->q;
struct ionic_queue *q;
struct ionic_queue *q;
struct ionic_queue *q = &qcq->q;
static void ionic_unregister_rxq_info(struct ionic_queue *q);
static int ionic_register_rxq_info(struct ionic_queue *q, unsigned int napi_id);
struct ionic_queue *q;
struct ionic_queue *q = &qcq->q;
struct ionic_queue *q = &qcq->q;
static inline bool ionic_txq_hwstamp_enabled(struct ionic_queue *q)
struct ionic_queue q;
struct ionic_queue *q;
struct ionic_queue *q;
struct ionic_queue *q = cq->bound_q;
bool ionic_adminq_poke_doorbell(struct ionic_queue *q)
struct ionic_queue *q;
IONIC_STAT_DESC(struct ionic_queue, stat_name)
static inline struct ionic_txq_sg_elem *ionic_tx_sg_elems(struct ionic_queue *q)
static dma_addr_t ionic_tx_map_single(struct ionic_queue *q,
static dma_addr_t ionic_tx_map_frag(struct ionic_queue *q,
static int ionic_tx_map_skb(struct ionic_queue *q, struct sk_buff *skb,
struct ionic_queue *q)
static void ionic_tx_desc_unmap_bufs(struct ionic_queue *q,
static void ionic_tx_clean(struct ionic_queue *q,
struct ionic_queue *q = cq->bound_q;
static void __ionic_rx_put_buf(struct ionic_queue *q,
struct ionic_queue *q = cq->bound_q;
void ionic_tx_empty(struct ionic_queue *q)
static void ionic_tx_tso_post(struct net_device *netdev, struct ionic_queue *q,
static int ionic_tx_tso(struct net_device *netdev, struct ionic_queue *q,
static void ionic_rx_put_buf(struct ionic_queue *q,
static void ionic_rx_put_buf_direct(struct ionic_queue *q,
static dma_addr_t ionic_tx_map_single(struct ionic_queue *q,
static void ionic_tx_calc_csum(struct ionic_queue *q, struct sk_buff *skb,
static void ionic_rx_add_skb_frag(struct ionic_queue *q,
static void ionic_tx_calc_no_csum(struct ionic_queue *q, struct sk_buff *skb,
static void ionic_tx_skb_frags(struct ionic_queue *q, struct sk_buff *skb,
static int ionic_tx(struct net_device *netdev, struct ionic_queue *q,
static int ionic_tx_descs_needed(struct ionic_queue *q, struct sk_buff *skb)
struct ionic_queue *q;
static struct sk_buff *ionic_rx_build_skb(struct ionic_queue *q,
static dma_addr_t ionic_tx_map_frag(struct ionic_queue *q,
struct ionic_queue *q;
static void ionic_tx_desc_unmap_bufs(struct ionic_queue *q,
struct ionic_queue *q,
static void ionic_tx_clean(struct ionic_queue *q,
static void ionic_xdp_tx_desc_clean(struct ionic_queue *q,
static inline void ionic_txq_post(struct ionic_queue *q, bool ring_dbell)
static int ionic_xdp_post_frame(struct ionic_queue *q, struct xdp_frame *frame,
static inline void ionic_rxq_post(struct ionic_queue *q, bool ring_dbell)
struct ionic_queue *txq;
bool ionic_txq_poke_doorbell(struct ionic_queue *q)
static void ionic_xdp_rx_unlink_bufs(struct ionic_queue *q,
struct ionic_queue *rxq,
struct ionic_queue *txq;
static void ionic_rx_clean(struct ionic_queue *q,
struct ionic_queue *q = cq->bound_q;
static inline void ionic_write_cmb_desc(struct ionic_queue *q,
bool ionic_rxq_poke_doorbell(struct ionic_queue *q)
void ionic_rx_fill(struct ionic_queue *q, struct bpf_prog *xdp_prog)
void ionic_rx_empty(struct ionic_queue *q)
struct ionic_queue *q = cq->bound_q;
void ionic_rx_fill(struct ionic_queue *q, struct bpf_prog *xdp_prog);
void ionic_rx_empty(struct ionic_queue *q);
void ionic_tx_empty(struct ionic_queue *q);