/illumos-gate/usr/src/uts/common/io/ena/ |
H A D | ena_tx.c | 28 sizeof (*txq->et_tcbs) * txq->et_sq_num_descs); in ena_free_tx_dma() 53 cq_descs_sz = txq->et_cq_num_descs * sizeof (*txq->et_cq_descs); in ena_alloc_tx_dma() 54 sq_descs_sz = txq->et_sq_num_descs * sizeof (*txq->et_sq_descs); in ena_alloc_tx_dma() 68 txq->et_sq_descs = (void *)txq->et_sq_dma.edb_va; in ena_alloc_tx_dma() 69 txq->et_tcbs = kmem_zalloc(sizeof (*txq->et_tcbs) * in ena_alloc_tx_dma() 102 txq->et_cq_descs = (void *)txq->et_cq_dma.edb_va; in ena_alloc_tx_dma() 160 ASSERT3U(txq->et_sq_num_descs, ==, txq->et_cq_num_descs); in ena_alloc_txq() 176 txq->et_sq_avail_descs = txq->et_sq_num_descs; in ena_alloc_txq() 293 txq->et_sq_tail_idx & (txq->et_sq_num_descs - 1); in ena_pull_tcb() 414 if (txq->et_blocked || txq->et_sq_avail_descs == 0) { in ena_ring_tx() [all …]
|
H A D | ena_watchdog.c | 64 ena_txq_t *txq = &ena->ena_txqs[i]; in ena_watchdog() local 67 mutex_enter(&txq->et_lock); in ena_watchdog() 68 if (txq->et_blocked) in ena_watchdog() 69 s = ++txq->et_stall_watchdog; in ena_watchdog() 71 s = txq->et_stall_watchdog = 0; in ena_watchdog() 72 mutex_exit(&txq->et_lock); in ena_watchdog()
|
H A D | ena_stats.c | 348 ena_stat_txq_cleanup(ena_txq_t *txq) in ena_stat_txq_cleanup() argument 350 if (txq->et_kstat != NULL) { in ena_stat_txq_cleanup() 351 kstat_delete(txq->et_kstat); in ena_stat_txq_cleanup() 352 txq->et_kstat = NULL; in ena_stat_txq_cleanup() 357 ena_stat_txq_init(ena_txq_t *txq) in ena_stat_txq_init() argument 359 ena_t *ena = txq->et_ena; in ena_stat_txq_init() 376 txq->et_kstat = ksp; in ena_stat_txq_init() 398 kstat_install(txq->et_kstat); in ena_stat_txq_init() 489 ena_txq_t *txq = (ena_txq_t *)rh; in ena_ring_tx_stat() local 491 mutex_enter(&txq->et_stat_lock); in ena_ring_tx_stat() [all …]
|
H A D | ena_intr.c | 29 ena_txq_t *txq = &ena->ena_txqs[vector - 1]; in ena_io_intr() local 36 ASSERT3P(txq, !=, NULL); in ena_io_intr() 38 ena_tx_intr_work(txq); in ena_io_intr() 45 intr_ctrl = ena_hw_abs_read32(ena, txq->et_cq_unmask_addr); in ena_io_intr() 47 ena_hw_abs_write32(ena, txq->et_cq_unmask_addr, intr_ctrl); in ena_io_intr()
|
H A D | ena.c | 1534 txq->et_txqs_idx = i; in ena_attach_alloc_txqs() 1536 txq->et_intr_vector = i + 1; in ena_attach_alloc_txqs() 1537 txq->et_mrh = NULL; in ena_attach_alloc_txqs() 1546 txq->et_ena = ena; in ena_attach_alloc_txqs() 1554 if (!ena_alloc_txq(txq)) { in ena_attach_alloc_txqs() 1555 ena_stat_txq_cleanup(txq); in ena_attach_alloc_txqs() 1574 ena_stat_txq_cleanup(txq); in ena_cleanup_txqs() 1633 mutex_enter(&txq->et_lock); in ena_reset() 1634 tx_state[i] = txq->et_state; in ena_reset() 1702 mutex_exit(&txq->et_lock); in ena_reset() [all …]
|
/illumos-gate/usr/src/uts/common/io/bnx/570x/driver/common/lmdev/ |
H A D | bnx_lm_send.c | 33 lm_tx_chain_t *txq; in lm_send_packet() local 53 txq->prod_idx); in lm_send_packet() 59 txq->prod_bseq); in lm_send_packet() 200 start_bd = txq->prod_bd; in lm_send_packet() 205 prod_bd = txq->prod_bd; in lm_send_packet() 287 txq->prod_bd = prod_bd; in lm_send_packet() 312 txq->prod_idx); in lm_send_packet() 338 lm_tx_chain_t *txq; in lm_send_packet() local 663 lm_tx_chain_t *txq, in get_packets_sent() argument 757 lm_tx_chain_t *txq; in lm_get_packets_sent() local [all …]
|
H A D | bnx_hw_reset.c | 1007 lm_tx_chain_t *txq; in init_l2txq() local 1020 txq = &pdev->tx_info.chain[idx]; in init_l2txq() 1024 txq->prod_idx = 0; in init_l2txq() 1025 txq->con_idx = 0; in init_l2txq() 1026 txq->prod_bseq = 0; in init_l2txq() 1027 txq->prod_bd = txq->bd_chain_virt; in init_l2txq() 1036 (u8_t *) txq->bd_chain_virt, in init_l2txq() 1037 txq->bd_chain_phy, in init_l2txq() 1079 txq->cid_addr, in init_l2txq() 1084 val = txq->bd_chain_phy.as_u32.low; in init_l2txq() [all …]
|
H A D | bnx_lm_main.c | 1599 lm_tx_chain_t *txq) in sblk_tx_con_idx_ptr() argument 1608 switch(txq->idx) in sblk_tx_con_idx_ptr() 1640 switch(txq->idx) in sblk_tx_con_idx_ptr() 1711 lm_tx_chain_t *txq; in init_l2tx_resc() local 1734 txq->idx = idx; in init_l2tx_resc() 1735 txq->cid_addr = GET_CID_ADDR(L2TX_CID_BASE + 2 * txq->idx); in init_l2tx_resc() 1743 if(txq->idx == pdev->tx_info.cu_idx && txq->idx != TX_CHAIN_IDX1) in init_l2tx_resc() 1758 if(txq->idx >= 4) in init_l2tx_resc() 1760 txq->cid_addr = GET_CID_ADDR(L2TX_TSS_CID_BASE + txq->idx - 4); in init_l2tx_resc() 1783 txq->hw_con_idx_ptr = sblk_tx_con_idx_ptr(pdev, txq); in init_l2tx_resc() [all …]
|
/illumos-gate/usr/src/uts/common/io/cxgbe/t4nex/ |
H A D | t4_sge.c | 1953 &txq->txb_ahdl, &txq->txb_ba, &txq->txb_va); in alloc_txq() 1955 txq->txb_avail = txq->txb_size; in alloc_txq() 1957 txq->txb_avail = txq->txb_size = 0; in alloc_txq() 2024 txq->txb_avail += txq->txb_used; in free_txq() 2043 bzero(txq, sizeof (*txq)); in free_txq() 2575 *waste = txq->txb_size - txq->txb_next; in fits_in_txb() 2617 ASSERT(txq->txb_next <= txq->txb_size); in copy_into_txb() 2618 if (txq->txb_next == txq->txb_size) in copy_into_txb() 2718 txq->txb_next = txq->txb_size - n; in free_txinfo_resources() 3402 reclaim_tx_descs(txq, txq->eq.qsize); in tx_reclaim_task() [all …]
|
H A D | adapter.h | 424 struct sge_txq *txq; /* NIC tx queues */ member 629 #define TXQ_LOCK(txq) EQ_LOCK(&(txq)->eq) argument 630 #define TXQ_UNLOCK(txq) EQ_UNLOCK(&(txq)->eq) argument 631 #define TXQ_LOCK_ASSERT_OWNED(txq) EQ_LOCK_ASSERT_OWNED(&(txq)->eq) argument 632 #define TXQ_LOCK_ASSERT_NOTOWNED(txq) EQ_LOCK_ASSERT_NOTOWNED(&(txq)->eq) argument 634 #define for_each_txq(pi, iter, txq) \ argument 635 txq = &pi->adapter->sge.txq[pi->first_txq]; \ 636 for (iter = 0; iter < pi->ntxq; ++iter, ++txq) 918 void t4_mac_tx_update(struct port_info *pi, struct sge_txq *txq);
|
H A D | t4_mac.c | 941 struct sge_txq *txq = (struct sge_txq *)rh; in t4_tx_stat() local 945 *val = txq->txbytes; in t4_tx_stat() 949 *val = txq->txpkts; in t4_tx_stat() 994 struct sge_txq *txq = &pi->adapter->sge.txq[pi->first_txq + ring_index]; in t4_fill_ring() local 995 txq->ring_handle = rh; in t4_fill_ring() 996 infop->mri_driver = (mac_ring_driver_t)txq; in t4_fill_ring() 1014 struct sge_txq *txq = &sc->sge.txq[pi->first_txq]; in t4_mc_tx() local 1016 return (t4_eth_tx(txq, m)); in t4_mc_tx() 2049 t4_mac_tx_update(struct port_info *pi, struct sge_txq *txq) in t4_mac_tx_update() argument 2052 mac_tx_ring_update(pi->mh, txq->ring_handle); in t4_mac_tx_update()
|
/illumos-gate/usr/src/uts/common/io/arn/ |
H A D | arn_xmit.c | 987 txq->stopped = 1; in arn_test_get_txq() 994 return (txq); in arn_test_get_txq() 1126 txq->axq_depth++; in arn_tx_txqaddbuf() 1128 txq->axq_linkbuf = list_object(list, txq->axq_q.prev); in arn_tx_txqaddbuf() 1131 "qnum: %d, txq depth: %d\n", txq->axq_qnum, txq->axq_depth)); in arn_tx_txqaddbuf() 1141 txq->axq_qnum, txq->axq_link, in arn_tx_txqaddbuf() 1491 txq->axq_qnum, in arn_tx_stopdma() 1492 ath9k_hw_gettxbuf(ah, txq->axq_qnum), txq->axq_link)); in arn_tx_stopdma() 1603 txq->axq_depth = 0; in arn_txq_setup() 1634 struct ath_txq *txq; in arn_tx_setup() local [all …]
|
/illumos-gate/usr/src/uts/intel/io/vmxnet3s/ |
H A D | vmxnet3_tx.c | 56 for (i = 0; i < txq->cmdRing.size; i++) { in vmxnet3_txqueue_fini() 57 mblk_t *mp = txq->metaRing[i].mp; in vmxnet3_txqueue_fini() 163 vmxnet3_cmdring_t *cmdRing = &txq->cmdRing; in vmxnet3_tx_one() 206 ASSERT(!txq->metaRing[eopIdx].mp); in vmxnet3_tx_one() 286 txq->metaRing[sopIdx].mp = mp; in vmxnet3_tx_one() 287 txq->metaRing[eopIdx].sopIdx = sopIdx; in vmxnet3_tx_one() 288 txq->metaRing[eopIdx].frags = frags; in vmxnet3_tx_one() 327 vmxnet3_txqueue_t *txq = &dp->txQueue; in vmxnet3_tx() local 388 status = vmxnet3_tx_one(dp, txq, &ol, in vmxnet3_tx() 446 eopMetaDesc = &txq->metaRing[eopIdx]; in vmxnet3_tx_complete() [all …]
|
H A D | vmxnet3_main.c | 337 vmxnet3_txqueue_t *txq = &dp->txQueue; in vmxnet3_prepare_txqueue() local 342 ASSERT(!txq->cmdRing.dma.buf && !txq->compRing.dma.buf); in vmxnet3_prepare_txqueue() 358 txq->metaRing = kmem_zalloc(txq->cmdRing.size * in vmxnet3_prepare_txqueue() 360 ASSERT(txq->metaRing); in vmxnet3_prepare_txqueue() 369 kmem_free(txq->metaRing, txq->cmdRing.size * sizeof (vmxnet3_metatx_t)); in vmxnet3_prepare_txqueue() 372 vmxnet3_free_dma_mem(&txq->cmdRing.dma); in vmxnet3_prepare_txqueue() 433 vmxnet3_txqueue_t *txq = &dp->txQueue; in vmxnet3_destroy_txqueue() local 435 ASSERT(txq->metaRing); in vmxnet3_destroy_txqueue() 436 ASSERT(txq->cmdRing.dma.buf && txq->compRing.dma.buf); in vmxnet3_destroy_txqueue() 438 vmxnet3_txqueue_fini(dp, txq); in vmxnet3_destroy_txqueue() [all …]
|
H A D | vmxnet3.h | 187 int vmxnet3_txqueue_init(vmxnet3_softc_t *dp, vmxnet3_txqueue_t *txq); 189 boolean_t vmxnet3_tx_complete(vmxnet3_softc_t *dp, vmxnet3_txqueue_t *txq); 190 void vmxnet3_txqueue_fini(vmxnet3_softc_t *dp, vmxnet3_txqueue_t *txq);
|
/illumos-gate/usr/src/uts/common/io/ath/ |
H A D | ath_aux.c | 137 struct ath_txq *txq; in ath_set_data_queue() local 174 txq = &asc->asc_txq[qnum]; in ath_set_data_queue() 175 txq->axq_qnum = qnum; in ath_set_data_queue() 176 txq->axq_depth = 0; in ath_set_data_queue() 177 txq->axq_intrcnt = 0; in ath_set_data_queue() 178 txq->axq_link = NULL; in ath_set_data_queue() 375 mutex_enter(&txq->axq_lock); in ath_drainq() 378 txq->axq_link = NULL; in ath_drainq() 383 mutex_exit(&txq->axq_lock); in ath_drainq() 399 struct ath_txq *txq; in ath_draintxq() local [all …]
|
H A D | ath_main.c | 679 struct ath_txq *txq; in ath_tx_start() local 880 txq->axq_intrcnt = 0; in ath_tx_start() 930 mutex_enter(&txq->axq_lock); in ath_tx_start() 932 if (txq->axq_link == NULL) { in ath_tx_start() 937 txq->axq_link = &ds->ds_link; in ath_tx_start() 938 mutex_exit(&txq->axq_lock); in ath_tx_start() 1109 mutex_enter(&txq->axq_lock); in ath_tx_processq() 1112 txq->axq_link = NULL; in ath_tx_processq() 1127 mutex_exit(&txq->axq_lock); in ath_tx_processq() 1222 struct ath_txq *txq; in ath_node_free() local [all …]
|
/illumos-gate/usr/src/uts/common/io/ral/ |
H A D | rt2560.c | 1024 dr = &sc->txq.dr_desc; in rt2560_tx_intr() 1025 count = sc->txq.count; in rt2560_tx_intr() 1033 desc = &sc->txq.desc[sc->txq.next]; in rt2560_tx_intr() 1034 data = &sc->txq.data[sc->txq.next]; in rt2560_tx_intr() 1084 sc->txq.queued--; in rt2560_tx_intr() 1085 sc->txq.next = (sc->txq.next + 1) % RT2560_TX_RING_COUNT; in rt2560_tx_intr() 1632 data = &sc->txq.data[sc->txq.cur]; in rt2560_send() 1633 desc = &sc->txq.desc[sc->txq.cur]; in rt2560_send() 1678 idx = sc->txq.cur; in rt2560_send() 1691 sc->txq.queued++; in rt2560_send() [all …]
|
/illumos-gate/usr/src/uts/common/io/bnxe/ |
H A D | bnxe_lock.c | 43 void BNXE_LOCK_ENTER_TX (um_device_t * pUM, int idx) { mutex_enter(&pUM->txq[idx].txMut… in BNXE_LOCK_ENTER_TX() 44 void BNXE_LOCK_EXIT_TX (um_device_t * pUM, int idx) { mutex_exit(&pUM->txq[idx].txMute… in BNXE_LOCK_EXIT_TX() 45 void BNXE_LOCK_ENTER_FREETX (um_device_t * pUM, int idx) { mutex_enter(&pUM->txq[idx].freeT… in BNXE_LOCK_ENTER_FREETX() 46 void BNXE_LOCK_EXIT_FREETX (um_device_t * pUM, int idx) { mutex_exit(&pUM->txq[idx].freeTx… in BNXE_LOCK_EXIT_FREETX()
|
H A D | bnxe_tx.c | 164 s_list_add_tail(&pUM->txq[idx].freeTxDescQ, pPktList); in BnxeTxPktsReclaim() 173 TxQueue * pTxQ = &pUM->txq[idx]; in BnxeTxSendWaitingPkt() 219 TxQueue * pTxQ = &pUM->txq[idx]; in BnxeTxRingProcess() 836 TxQueue * pTxQ = &pUM->txq[idx]; in BnxeTxSendMblk() 1055 tmpList = pUM->txq[idx].waitTxDescQ; in BnxeTxPktsAbortIdx() 1056 s_list_clear(&pUM->txq[idx].waitTxDescQ); in BnxeTxPktsAbortIdx() 1197 pTxQ = &pUM->txq[idx]; in BnxeTxPktsInitIdx() 1321 pTxQ = &pUM->txq[idx]; in BnxeTxPktsFiniIdx()
|
/illumos-gate/usr/src/uts/common/io/bnxe/577xx/drivers/common/lm/device/ |
H A D | lm_send.c | 268 IN lm_tx_chain_t *txq, in lm_get_coalesce_buffer() argument 274 if (ERR_IF(CHK_NULL(pdev) || CHK_NULL(txq) || !buf_size)) { in lm_get_coalesce_buffer() 279 coalesce_buf_cnt = s_list_entry_cnt(&txq->coalesce_buf_list); in lm_get_coalesce_buffer() 283 &txq->coalesce_buf_list); in lm_get_coalesce_buffer() 294 txq->coalesce_buf_used++; in lm_get_coalesce_buffer() 315 IN lm_tx_chain_t *txq, in lm_put_coalesce_buffer() argument 323 s_list_push_tail(&txq->coalesce_buf_list, &coalesce_buf->link); in lm_put_coalesce_buffer() 344 IN lm_tx_chain_t *txq, in lm_copy_packet_to_coalesce_buffer() argument 356 if (ERR_IF(CHK_NULL(pdev) || CHK_NULL(txq) || in lm_copy_packet_to_coalesce_buffer() 371 coalesce_buf = lm_get_coalesce_buffer(pdev, txq, pkt_size); in lm_copy_packet_to_coalesce_buffer() [all …]
|
/illumos-gate/usr/src/uts/common/io/bnx/ |
H A D | bnx.h | 301 um_xmit_qinfo txq[NUM_TX_CHAIN]; member 302 #define _TX_QINFO(pdev, chain) (pdev->txq[chain]) 303 #define _TXQ_FREE_DESC(pdev, chain) (pdev->txq[chain].free_tx_desc) 304 #define _TXQ_RESC_DESC(pdev, chain) (pdev->txq[chain].tx_resc_que)
|
H A D | bnxsnd.c | 290 lm_tx_chain_t *txq; in bnx_xmit_packet() local 299 txq = &lmdevice->tx_info.chain[ringidx]; in bnx_xmit_packet() 302 if (txq->bd_left < BNX_MAX_SGL_ENTRIES) { in bnx_xmit_packet() 315 if (s_list_is_empty(waitq) && txq->bd_left >= lmfraglist->cnt) { in bnx_xmit_packet() 323 if (txq->bd_left >= BNX_MAX_SGL_ENTRIES) { in bnx_xmit_packet() 523 lm_tx_chain_t *txq; in bnx_xmit_ring_xmit_qpkt() local 532 txq = &lmdevice->tx_info.chain[ringidx]; in bnx_xmit_ring_xmit_qpkt() 538 if (lmfraglist->cnt > txq->bd_left) { in bnx_xmit_ring_xmit_qpkt()
|
/illumos-gate/usr/src/uts/common/io/yge/ |
H A D | yge.c | 2418 int32_t txq; in yge_start_port() local 2422 txq = port->p_txq; in yge_start_port() 2564 CSR_WRITE_2(dev, Q_ADDR(txq, Q_WM), MSK_BMU_TX_WM); in yge_start_port() 2637 uint32_t txq; in yge_set_rambuffer() local 2642 txq = port->p_txq; in yge_set_rambuffer() 2678 (void) CSR_READ_1(dev, RB_ADDR(txq, RB_CTRL)); in yge_set_rambuffer() 2709 uint32_t txq = port->p_txq; in yge_stop_port() local 2745 CSR_WRITE_4(dev, Q_ADDR(txq, Q_CSR), BMU_STOP); in yge_stop_port() 2746 val = CSR_READ_4(dev, Q_ADDR(txq, Q_CSR)); in yge_stop_port() 2749 CSR_WRITE_4(dev, Q_ADDR(txq, Q_CSR), BMU_STOP); in yge_stop_port() [all …]
|
/illumos-gate/usr/src/uts/common/io/rwd/ |
H A D | rt2661.c | 1159 rt2661_tx_dma_intr(sc, &sc->txq[0]); in rt2661_intr() 1165 rt2661_tx_dma_intr(sc, &sc->txq[1]); in rt2661_intr() 1171 rt2661_tx_dma_intr(sc, &sc->txq[2]); in rt2661_intr() 1177 rt2661_tx_dma_intr(sc, &sc->txq[3]); in rt2661_intr() 1424 ring = &sc->txq[0]; in rt2661_send() 2121 rt2661_reset_tx_ring(sc, &sc->txq[0]); in rt2661_stop_locked() 2122 rt2661_reset_tx_ring(sc, &sc->txq[1]); in rt2661_stop_locked() 3215 rt2661_free_tx_ring(sc, &sc->txq[0]); in rt2661_detach() 3216 rt2661_free_tx_ring(sc, &sc->txq[1]); in rt2661_detach() 3217 rt2661_free_tx_ring(sc, &sc->txq[2]); in rt2661_detach() [all …]
|