/Linux-v5.4/drivers/net/wireless/intel/iwlwifi/pcie/ |
D | tx.c | 185 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 …]
|
D | tx-gen2.c | 79 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 …]
|
D | internal.h | 390 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/ |
D | hinic_tx.c | 76 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 …]
|
D | hinic_tx.h | 43 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/ |
D | xmit.c | 50 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/ |
D | mv643xx_eth.c | 178 #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 …]
|
D | mvneta.c | 126 #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/ |
D | qede_fp.c | 100 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 …]
|
D | qede_main.c | 856 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/ |
D | main.c | 54 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/ |
D | tx.c | 78 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/ |
D | qdisc.h | 14 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/ |
D | fec_main.c | 241 #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/ |
D | sge.c | 1133 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/ |
D | base.c | 733 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/ |
D | hisi_femac.c | 120 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/ |
D | sge.c | 1169 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/ |
D | sge.c | 179 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/ |
D | netpoll.c | 73 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/ |
D | ambassador.c | 613 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/ |
D | common.c | 364 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/ |
D | mvpp2_main.c | 207 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/ |
D | sch_generic.c | 53 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/ |
D | txrx.c | 49 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()
|