Home
last modified time | relevance | path

Searched refs:txq (Results 1 – 25 of 256) sorted by relevance

1234567891011

/Linux-v5.4/drivers/net/wireless/intel/iwlwifi/pcie/
Dtx.c185 struct iwl_txq *txq = from_timer(txq, t, stuck_timer); in iwl_pcie_txq_stuck_timer() local
186 struct iwl_trans_pcie *trans_pcie = txq->trans_pcie; in iwl_pcie_txq_stuck_timer()
189 spin_lock(&txq->lock); in iwl_pcie_txq_stuck_timer()
191 if (txq->read_ptr == txq->write_ptr) { in iwl_pcie_txq_stuck_timer()
192 spin_unlock(&txq->lock); in iwl_pcie_txq_stuck_timer()
195 spin_unlock(&txq->lock); in iwl_pcie_txq_stuck_timer()
197 iwl_trans_pcie_log_scd_error(trans, txq); in iwl_pcie_txq_stuck_timer()
206 struct iwl_txq *txq, u16 byte_cnt, in iwl_pcie_txq_update_byte_cnt_tbl() argument
211 int write_ptr = txq->write_ptr; in iwl_pcie_txq_update_byte_cnt_tbl()
212 int txq_id = txq->id; in iwl_pcie_txq_update_byte_cnt_tbl()
[all …]
Dtx-gen2.c79 for (txq_id = 0; txq_id < ARRAY_SIZE(trans_pcie->txq); txq_id++) { in iwl_pcie_gen2_tx_stop()
80 if (!trans_pcie->txq[txq_id]) in iwl_pcie_gen2_tx_stop()
90 struct iwl_txq *txq, u16 byte_cnt, in iwl_pcie_gen2_update_byte_tbl() argument
93 struct iwlagn_scd_bc_tbl *scd_bc_tbl = txq->bc_tbl.addr; in iwl_pcie_gen2_update_byte_tbl()
95 struct iwl_gen3_bc_tbl *scd_bc_tbl_gen3 = txq->bc_tbl.addr; in iwl_pcie_gen2_update_byte_tbl()
96 int idx = iwl_pcie_get_cmd_index(txq, txq->write_ptr); in iwl_pcie_gen2_update_byte_tbl()
101 if (WARN(idx >= txq->n_window, "%d >= %d\n", idx, txq->n_window)) in iwl_pcie_gen2_update_byte_tbl()
136 struct iwl_txq *txq) in iwl_pcie_gen2_txq_inc_wr_ptr() argument
138 lockdep_assert_held(&txq->lock); in iwl_pcie_gen2_txq_inc_wr_ptr()
140 IWL_DEBUG_TX(trans, "Q:%d WR: 0x%x\n", txq->id, txq->write_ptr); in iwl_pcie_gen2_txq_inc_wr_ptr()
[all …]
Dinternal.h390 iwl_pcie_get_first_tb_dma(struct iwl_txq *txq, int idx) in iwl_pcie_get_first_tb_dma() argument
392 return txq->first_tb_dma + in iwl_pcie_get_first_tb_dma()
552 struct iwl_txq *txq[IWL_MAX_TVQM_QUEUES]; member
691 struct iwl_txq *txq);
698 struct iwl_txq *txq);
706 struct iwl_txq *txq, u16 byte_cnt,
914 struct iwl_txq *txq, int idx) in iwl_pcie_get_tfd() argument
919 idx = iwl_pcie_get_cmd_index(txq, idx); in iwl_pcie_get_tfd()
921 return txq->tfds + trans_pcie->tfd_size * idx; in iwl_pcie_get_tfd()
976 struct iwl_txq *txq) in iwl_wake_queue() argument
[all …]
/Linux-v5.4/drivers/net/ethernet/huawei/hinic/
Dhinic_tx.c76 void hinic_txq_clean_stats(struct hinic_txq *txq) in hinic_txq_clean_stats() argument
78 struct hinic_txq_stats *txq_stats = &txq->txq_stats; in hinic_txq_clean_stats()
95 void hinic_txq_get_stats(struct hinic_txq *txq, struct hinic_txq_stats *stats) in hinic_txq_get_stats() argument
97 struct hinic_txq_stats *txq_stats = &txq->txq_stats; in hinic_txq_get_stats()
117 static void txq_stats_init(struct hinic_txq *txq) in txq_stats_init() argument
119 struct hinic_txq_stats *txq_stats = &txq->txq_stats; in txq_stats_init()
122 hinic_txq_clean_stats(txq); in txq_stats_init()
470 struct hinic_txq *txq; in hinic_xmit_frame() local
473 txq = &nic_dev->txqs[q_id]; in hinic_xmit_frame()
474 qp = container_of(txq->sq, struct hinic_qp, sq); in hinic_xmit_frame()
[all …]
Dhinic_tx.h43 void hinic_txq_clean_stats(struct hinic_txq *txq);
45 void hinic_txq_get_stats(struct hinic_txq *txq, struct hinic_txq_stats *stats);
49 int hinic_init_txq(struct hinic_txq *txq, struct hinic_sq *sq,
52 void hinic_clean_txq(struct hinic_txq *txq);
/Linux-v5.4/drivers/net/wireless/ath/ath9k/
Dxmit.c50 static void ath_tx_send_normal(struct ath_softc *sc, struct ath_txq *txq,
53 int tx_flags, struct ath_txq *txq,
56 struct ath_txq *txq, struct list_head *bf_q,
59 static void ath_tx_txqaddbuf(struct ath_softc *sc, struct ath_txq *txq,
67 struct ath_txq *txq,
101 void ath_txq_unlock_complete(struct ath_softc *sc, struct ath_txq *txq) in ath_txq_unlock_complete() argument
102 __releases(&txq->axq_lock) in ath_txq_unlock_complete()
109 skb_queue_splice_init(&txq->complete_q, &q); in ath_txq_unlock_complete()
110 spin_unlock_bh(&txq->axq_lock); in ath_txq_unlock_complete()
129 struct ath_txq *txq = tid->txq; in ath9k_wake_tx_queue() local
[all …]
/Linux-v5.4/drivers/net/ethernet/marvell/
Dmv643xx_eth.c178 #define IS_TSO_HEADER(txq, addr) \ argument
179 ((addr >= txq->tso_hdrs_dma) && \
180 (addr < txq->tso_hdrs_dma + txq->tx_ring_size * TSO_HEADER_SIZE))
407 struct tx_queue txq[8]; member
445 static struct mv643xx_eth_private *txq_to_mp(struct tx_queue *txq) in txq_to_mp() argument
447 return container_of(txq, struct mv643xx_eth_private, txq[txq->index]); in txq_to_mp()
466 static void txq_reset_hw_ptr(struct tx_queue *txq) in txq_reset_hw_ptr() argument
468 struct mv643xx_eth_private *mp = txq_to_mp(txq); in txq_reset_hw_ptr()
471 addr = (u32)txq->tx_desc_dma; in txq_reset_hw_ptr()
472 addr += txq->tx_curr_desc * sizeof(struct tx_desc); in txq_reset_hw_ptr()
[all …]
Dmvneta.c126 #define MVNETA_CPU_TXQ_ACCESS(txq) BIT(txq + 8) argument
325 #define IS_TSO_HEADER(txq, addr) \ argument
326 ((addr >= txq->tso_hdrs_phys) && \
327 (addr < txq->tso_hdrs_phys + txq->size * TSO_HEADER_SIZE))
667 static void mvneta_txq_inc_get(struct mvneta_tx_queue *txq) in mvneta_txq_inc_get() argument
669 txq->txq_get_index++; in mvneta_txq_inc_get()
670 if (txq->txq_get_index == txq->size) in mvneta_txq_inc_get()
671 txq->txq_get_index = 0; in mvneta_txq_inc_get()
675 static void mvneta_txq_inc_put(struct mvneta_tx_queue *txq) in mvneta_txq_inc_put() argument
677 txq->txq_put_index++; in mvneta_txq_inc_put()
[all …]
/Linux-v5.4/drivers/net/ethernet/qlogic/qede/
Dqede_fp.c100 int qede_free_tx_pkt(struct qede_dev *edev, struct qede_tx_queue *txq, int *len) in qede_free_tx_pkt() argument
102 u16 idx = txq->sw_tx_cons; in qede_free_tx_pkt()
103 struct sk_buff *skb = txq->sw_tx_ring.skbs[idx].skb; in qede_free_tx_pkt()
108 bool data_split = txq->sw_tx_ring.skbs[idx].flags & QEDE_TSO_SPLIT_BD; in qede_free_tx_pkt()
114 idx, txq->sw_tx_cons, txq->sw_tx_prod); in qede_free_tx_pkt()
120 first_bd = (struct eth_tx_1st_bd *)qed_chain_consume(&txq->tx_pbl); in qede_free_tx_pkt()
128 qed_chain_consume(&txq->tx_pbl); in qede_free_tx_pkt()
138 qed_chain_consume(&txq->tx_pbl); in qede_free_tx_pkt()
144 qed_chain_consume(&txq->tx_pbl); in qede_free_tx_pkt()
148 txq->sw_tx_ring.skbs[idx].skb = NULL; in qede_free_tx_pkt()
[all …]
Dqede_main.c856 kfree(fp->txq); in qede_free_fp_array()
906 fp->txq = kcalloc(edev->dev_info.num_tc, in qede_alloc_fp_array()
907 sizeof(*fp->txq), GFP_KERNEL); in qede_alloc_fp_array()
908 if (!fp->txq) in qede_alloc_fp_array()
1459 static void qede_free_mem_txq(struct qede_dev *edev, struct qede_tx_queue *txq) in qede_free_mem_txq() argument
1462 if (txq->is_xdp) in qede_free_mem_txq()
1463 kfree(txq->sw_tx_ring.xdp); in qede_free_mem_txq()
1465 kfree(txq->sw_tx_ring.skbs); in qede_free_mem_txq()
1468 edev->ops->common->chain_free(edev->cdev, &txq->tx_pbl); in qede_free_mem_txq()
1472 static int qede_alloc_mem_txq(struct qede_dev *edev, struct qede_tx_queue *txq) in qede_alloc_mem_txq() argument
[all …]
/Linux-v5.4/drivers/net/ethernet/atheros/alx/
Dmain.c54 static void alx_free_txbuf(struct alx_tx_queue *txq, int entry) in alx_free_txbuf() argument
56 struct alx_buffer *txb = &txq->bufs[entry]; in alx_free_txbuf()
59 dma_unmap_single(txq->dev, in alx_free_txbuf()
150 return alx->qnapi[r_idx]->txq; in alx_tx_queue_mapping()
153 static struct netdev_queue *alx_get_tx_queue(const struct alx_tx_queue *txq) in alx_get_tx_queue() argument
155 return netdev_get_tx_queue(txq->netdev, txq->queue_idx); in alx_get_tx_queue()
158 static inline int alx_tpd_avail(struct alx_tx_queue *txq) in alx_tpd_avail() argument
160 if (txq->write_idx >= txq->read_idx) in alx_tpd_avail()
161 return txq->count + txq->read_idx - txq->write_idx - 1; in alx_tpd_avail()
162 return txq->read_idx - txq->write_idx - 1; in alx_tpd_avail()
[all …]
/Linux-v5.4/drivers/net/wireless/mediatek/mt76/
Dtx.c78 mt76_txq_get_qid(struct ieee80211_txq *txq) in mt76_txq_get_qid() argument
80 if (!txq->sta) in mt76_txq_get_qid()
83 return txq->ac; in mt76_txq_get_qid()
266 struct ieee80211_txq *txq; in mt76_tx() local
271 txq = sta->txq[tid]; in mt76_tx()
272 mtxq = (struct mt76_txq *)txq->drv_priv; in mt76_tx()
296 struct ieee80211_txq *txq = mtxq_to_txq(mtxq); in mt76_txq_dequeue() local
304 ieee80211_sta_set_buffered(txq->sta, tid, false); in mt76_txq_dequeue()
309 skb = ieee80211_tx_dequeue(dev->hw, txq); in mt76_txq_dequeue()
345 struct ieee80211_txq *txq = sta->txq[i]; in mt76_release_buffered_frames() local
[all …]
/Linux-v5.4/include/trace/events/
Dqdisc.h14 TP_PROTO(struct Qdisc *qdisc, const struct netdev_queue *txq,
17 TP_ARGS(qdisc, txq, packets, skb),
21 __field(const struct netdev_queue *, txq )
33 __entry->txq = txq;
36 __entry->ifindex = txq->dev ? txq->dev->ifindex : 0;
39 __entry->txq_state = txq->state;
/Linux-v5.4/drivers/net/ethernet/freescale/
Dfec_main.c241 #define IS_TSO_HEADER(txq, addr) \ argument
242 ((addr >= txq->tso_hdrs_dma) && \
243 (addr < txq->tso_hdrs_dma + txq->bd.ring_size * TSO_HEADER_SIZE))
267 static int fec_enet_get_free_txdesc_num(struct fec_enet_priv_tx_q *txq) in fec_enet_get_free_txdesc_num() argument
271 entries = (((const char *)txq->dirty_tx - in fec_enet_get_free_txdesc_num()
272 (const char *)txq->bd.cur) >> txq->bd.dsize_log2) - 1; in fec_enet_get_free_txdesc_num()
274 return entries >= 0 ? entries : entries + txq->bd.ring_size; in fec_enet_get_free_txdesc_num()
300 struct fec_enet_priv_tx_q *txq; in fec_dump() local
306 txq = fep->tx_queue[0]; in fec_dump()
307 bdp = txq->bd.base; in fec_dump()
[all …]
/Linux-v5.4/drivers/net/ethernet/chelsio/cxgb4vf/
Dsge.c1133 static void txq_stop(struct sge_eth_txq *txq) in txq_stop() argument
1135 netif_tx_stop_queue(txq->txq); in txq_stop()
1136 txq->q.stops++; in txq_stop()
1164 struct sge_eth_txq *txq; in t4vf_eth_xmit() local
1198 txq = &adapter->sge.ethtxq[pi->first_qset + qidx]; in t4vf_eth_xmit()
1208 reclaim_completed_tx(adapter, &txq->q, true); in t4vf_eth_xmit()
1217 credits = txq_avail(&txq->q) - ndesc; in t4vf_eth_xmit()
1226 txq_stop(txq); in t4vf_eth_xmit()
1240 txq->mapping_err++; in t4vf_eth_xmit()
1255 txq_stop(txq); in t4vf_eth_xmit()
[all …]
/Linux-v5.4/drivers/net/wireless/ath/ath5k/
Dbase.c733 struct ath5k_txq *txq, int padsize, in ath5k_txbuf_setup() argument
830 spin_lock_bh(&txq->lock); in ath5k_txbuf_setup()
831 list_add_tail(&bf->list, &txq->q); in ath5k_txbuf_setup()
832 txq->txq_len++; in ath5k_txbuf_setup()
833 if (txq->link == NULL) /* is this first packet? */ in ath5k_txbuf_setup()
834 ath5k_hw_set_txdp(ah, txq->qnum, bf->daddr); in ath5k_txbuf_setup()
836 *txq->link = bf->daddr; in ath5k_txbuf_setup()
838 txq->link = &ds->ds_link; in ath5k_txbuf_setup()
839 ath5k_hw_start_tx_dma(ah, txq->qnum); in ath5k_txbuf_setup()
840 spin_unlock_bh(&txq->lock); in ath5k_txbuf_setup()
[all …]
/Linux-v5.4/drivers/net/ethernet/hisilicon/
Dhisi_femac.c120 struct hisi_femac_queue txq; member
147 dma_addr = priv->txq.dma_phys[pos]; in hisi_femac_tx_dma_unmap()
155 struct hisi_femac_queue *txq = &priv->txq; in hisi_femac_xmit_reclaim() local
163 skb = txq->skb[txq->tail]; in hisi_femac_xmit_reclaim()
169 hisi_femac_tx_dma_unmap(priv, skb, txq->tail); in hisi_femac_xmit_reclaim()
177 txq->skb[txq->tail] = NULL; in hisi_femac_xmit_reclaim()
178 txq->tail = (txq->tail + 1) % txq->num; in hisi_femac_xmit_reclaim()
372 ret = hisi_femac_init_queue(priv->dev, &priv->txq, TXQ_NUM); in hisi_femac_init_tx_and_rx_queues()
387 struct hisi_femac_queue *txq = &priv->txq; in hisi_femac_free_skb_rings() local
412 pos = txq->tail; in hisi_femac_free_skb_rings()
[all …]
/Linux-v5.4/drivers/net/ethernet/chelsio/cxgb4/
Dsge.c1169 netif_tx_stop_queue(q->txq); in eth_txq_stop()
1330 if (!q->in_use || !__netif_tx_trylock(eq->txq)) in t4_sge_eth_txq_egress_update()
1341 if (netif_tx_queue_stopped(eq->txq) && txq_avail(q) > (q->size / 2)) { in t4_sge_eth_txq_egress_update()
1342 netif_tx_wake_queue(eq->txq); in t4_sge_eth_txq_egress_update()
1346 __netif_tx_unlock(eq->txq); in t4_sge_eth_txq_egress_update()
1717 struct sge_eth_txq *txq; in cxgb4_vf_eth_xmit() local
1746 txq = &adapter->sge.ethtxq[pi->first_qset + qidx]; in cxgb4_vf_eth_xmit()
1751 reclaim_completed_tx(adapter, &txq->q, -1, true); in cxgb4_vf_eth_xmit()
1759 credits = txq_avail(&txq->q) - ndesc; in cxgb4_vf_eth_xmit()
1767 eth_txq_stop(txq); in cxgb4_vf_eth_xmit()
[all …]
/Linux-v5.4/drivers/net/ethernet/chelsio/cxgb3/
Dsge.c179 return container_of(q, struct sge_qset, txq[qidx]); in txq_to_qset()
658 memset(q->txq, 0, sizeof(struct sge_txq) * SGE_TXQ_PER_SET); in t3_reset_qset()
695 if (q->txq[i].desc) { in t3_free_qset()
697 t3_sge_enable_ecntxt(adapter, q->txq[i].cntxt_id, 0); in t3_free_qset()
699 if (q->txq[i].sdesc) { in t3_free_qset()
700 free_tx_desc(adapter, &q->txq[i], in t3_free_qset()
701 q->txq[i].in_use); in t3_free_qset()
702 kfree(q->txq[i].sdesc); in t3_free_qset()
705 q->txq[i].size * in t3_free_qset()
707 q->txq[i].desc, q->txq[i].phys_addr); in t3_free_qset()
[all …]
/Linux-v5.4/net/core/
Dnetpoll.c73 struct netdev_queue *txq) in netpoll_start_xmit() argument
92 status = netdev_start_xmit(skb, dev, txq, false); in netpoll_start_xmit()
105 while ((skb = skb_dequeue(&npinfo->txq))) { in queue_process()
107 struct netdev_queue *txq; in queue_process() local
122 txq = netdev_get_tx_queue(dev, q_index); in queue_process()
123 HARD_TX_LOCK(dev, txq, smp_processor_id()); in queue_process()
124 if (netif_xmit_frozen_or_stopped(txq) || in queue_process()
125 !dev_xmit_complete(netpoll_start_xmit(skb, dev, txq))) { in queue_process()
126 skb_queue_head(&npinfo->txq, skb); in queue_process()
127 HARD_TX_UNLOCK(dev, txq); in queue_process()
[all …]
/Linux-v5.4/drivers/atm/
Dambassador.c613 amb_txq * txq = &dev->txq; in tx_give() local
621 spin_lock_irqsave (&txq->lock, flags); in tx_give()
623 if (txq->pending < txq->maximum) { in tx_give()
624 PRINTD (DBG_TX, "TX in slot %p", txq->in.ptr); in tx_give()
626 *txq->in.ptr = *tx; in tx_give()
627 txq->pending++; in tx_give()
628 txq->in.ptr = NEXTQ (txq->in.ptr, txq->in.start, txq->in.limit); in tx_give()
630 wr_mem (dev, offsetof(amb_mem, mb.adapter.tx_address), virt_to_bus (txq->in.ptr)); in tx_give()
633 if (txq->pending > txq->high) in tx_give()
634 txq->high = txq->pending; in tx_give()
[all …]
/Linux-v5.4/drivers/net/wireless/intel/iwlegacy/
Dcommon.c364 il->txq[il->cmd_queue].meta[cmd_idx].flags &= ~CMD_WANT_SKB; in il_send_cmd_sync()
2710 il_txq_update_write_ptr(struct il_priv *il, struct il_tx_queue *txq) in il_txq_update_write_ptr() argument
2713 int txq_id = txq->q.id; in il_txq_update_write_ptr()
2715 if (txq->need_update == 0) in il_txq_update_write_ptr()
2733 il_wr(il, HBUS_TARG_WRPTR, txq->q.write_ptr | (txq_id << 8)); in il_txq_update_write_ptr()
2741 _il_wr(il, HBUS_TARG_WRPTR, txq->q.write_ptr | (txq_id << 8)); in il_txq_update_write_ptr()
2742 txq->need_update = 0; in il_txq_update_write_ptr()
2752 struct il_tx_queue *txq = &il->txq[txq_id]; in il_tx_queue_unmap() local
2753 struct il_queue *q = &txq->q; in il_tx_queue_unmap()
2759 il->ops->txq_free_tfd(il, txq); in il_tx_queue_unmap()
[all …]
/Linux-v5.4/drivers/net/ethernet/marvell/mvpp2/
Dmvpp2_main.c207 unsigned int txq) in mvpp2_txdesc_txq_set() argument
210 tx_desc->pp21.phys_txq = txq; in mvpp2_txdesc_txq_set()
212 tx_desc->pp22.phys_txq = txq; in mvpp2_txdesc_txq_set()
322 static inline int mvpp2_txq_phys(int port, int txq) in mvpp2_txq_phys() argument
324 return (MVPP2_MAX_TCONT + port) * MVPP2_MAX_TXQ + txq; in mvpp2_txq_phys()
1791 struct mvpp2_tx_queue *txq = port->txqs[queue]; in mvpp2_egress_enable() local
1793 if (txq->descs) in mvpp2_egress_enable()
1897 mvpp2_txq_next_desc_get(struct mvpp2_tx_queue *txq) in mvpp2_txq_next_desc_get() argument
1899 int tx_desc = txq->next_desc_to_proc; in mvpp2_txq_next_desc_get()
1901 txq->next_desc_to_proc = MVPP2_QUEUE_NEXT_DESC(txq, tx_desc); in mvpp2_txq_next_desc_get()
[all …]
/Linux-v5.4/net/sched/
Dsch_generic.c53 const struct netdev_queue *txq = q->dev_queue; in __skb_dequeue_bad_txq() local
65 txq = skb_get_tx_queue(txq->dev, skb); in __skb_dequeue_bad_txq()
66 if (!netif_xmit_frozen_or_stopped(txq)) { in __skb_dequeue_bad_txq()
154 const struct netdev_queue *txq, in try_bulk_dequeue_skb() argument
157 int bytelimit = qdisc_avail_bulklimit(txq) - skb->len; in try_bulk_dequeue_skb()
205 const struct netdev_queue *txq = q->dev_queue; in dequeue_skb() local
233 txq = skb_get_tx_queue(txq->dev, skb); in dequeue_skb()
234 if (!netif_xmit_frozen_or_stopped(txq)) { in dequeue_skb()
254 netif_xmit_frozen_or_stopped(txq)) in dequeue_skb()
267 try_bulk_dequeue_skb(q, skb, txq, packets); in dequeue_skb()
[all …]
/Linux-v5.4/drivers/net/wireless/ath/ath10k/
Dtxrx.c49 struct ieee80211_txq *txq; in ath10k_txrx_tx_unref() local
74 txq = skb_cb->txq; in ath10k_txrx_tx_unref()
76 if (txq) { in ath10k_txrx_tx_unref()
77 artxq = (void *)txq->drv_priv; in ath10k_txrx_tx_unref()
87 if (txq && txq->sta && skb_cb->airtime_est) in ath10k_txrx_tx_unref()
88 ieee80211_sta_register_airtime(txq->sta, txq->tid, in ath10k_txrx_tx_unref()

1234567891011