Lines Matching refs:tx_ring
124 inline void qlcnic_update_cmd_producer(struct qlcnic_host_tx_ring *tx_ring) in qlcnic_update_cmd_producer() argument
126 writel(tx_ring->producer, tx_ring->crb_cmd_producer); in qlcnic_update_cmd_producer()
1722 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_request_irq() local
1792 tx_ring = &adapter->tx_ring[ring]; in qlcnic_request_irq()
1793 snprintf(tx_ring->name, sizeof(tx_ring->name), in qlcnic_request_irq()
1795 err = request_irq(tx_ring->irq, handler, flags, in qlcnic_request_irq()
1796 tx_ring->name, tx_ring); in qlcnic_request_irq()
1810 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_free_irq() local
1829 tx_ring = &adapter->tx_ring[ring]; in qlcnic_free_irq()
1830 if (tx_ring->irq) in qlcnic_free_irq()
1831 free_irq(tx_ring->irq, tx_ring); in qlcnic_free_irq()
1970 qlcnic_release_tx_buffers(adapter, &adapter->tx_ring[ring]); in __qlcnic_down()
2381 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_free_tx_rings() local
2384 tx_ring = &adapter->tx_ring[ring]; in qlcnic_free_tx_rings()
2385 if (tx_ring) { in qlcnic_free_tx_rings()
2386 vfree(tx_ring->cmd_buf_arr); in qlcnic_free_tx_rings()
2387 tx_ring->cmd_buf_arr = NULL; in qlcnic_free_tx_rings()
2390 kfree(adapter->tx_ring); in qlcnic_free_tx_rings()
2397 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_alloc_tx_rings() local
2400 tx_ring = kcalloc(adapter->drv_tx_rings, in qlcnic_alloc_tx_rings()
2402 if (tx_ring == NULL) in qlcnic_alloc_tx_rings()
2405 adapter->tx_ring = tx_ring; in qlcnic_alloc_tx_rings()
2408 tx_ring = &adapter->tx_ring[ring]; in qlcnic_alloc_tx_rings()
2409 tx_ring->num_desc = adapter->num_txd; in qlcnic_alloc_tx_rings()
2410 tx_ring->txq = netdev_get_tx_queue(netdev, ring); in qlcnic_alloc_tx_rings()
2411 cmd_buf_arr = vzalloc(TX_BUFF_RINGSIZE(tx_ring)); in qlcnic_alloc_tx_rings()
2416 tx_ring->cmd_buf_arr = cmd_buf_arr; in qlcnic_alloc_tx_rings()
2417 spin_lock_init(&tx_ring->tx_clean_lock); in qlcnic_alloc_tx_rings()
2423 tx_ring = &adapter->tx_ring[ring]; in qlcnic_alloc_tx_rings()
2424 tx_ring->adapter = adapter; in qlcnic_alloc_tx_rings()
2428 tx_ring->irq = vector; in qlcnic_alloc_tx_rings()
2991 static inline void dump_tx_ring_desc(struct qlcnic_host_tx_ring *tx_ring) in dump_tx_ring_desc() argument
2996 for (i = 0; i < tx_ring->num_desc; i++) { in dump_tx_ring_desc()
2997 tx_desc_info = &tx_ring->desc_head[i]; in dump_tx_ring_desc()
3000 &tx_ring->desc_head[i], in dump_tx_ring_desc()
3011 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_dump_rings() local
3039 tx_ring = &adapter->tx_ring[ring]; in qlcnic_dump_rings()
3040 if (!tx_ring) in qlcnic_dump_rings()
3043 ring, tx_ring->ctx_id); in qlcnic_dump_rings()
3046 tx_ring->tx_stats.xmit_finished, in qlcnic_dump_rings()
3047 tx_ring->tx_stats.xmit_called, in qlcnic_dump_rings()
3048 tx_ring->tx_stats.xmit_on, in qlcnic_dump_rings()
3049 tx_ring->tx_stats.xmit_off); in qlcnic_dump_rings()
3051 if (tx_ring->crb_intr_mask) in qlcnic_dump_rings()
3053 readl(tx_ring->crb_intr_mask)); in qlcnic_dump_rings()
3057 readl(tx_ring->crb_cmd_producer), in qlcnic_dump_rings()
3058 tx_ring->producer, tx_ring->sw_consumer, in qlcnic_dump_rings()
3059 le32_to_cpu(*(tx_ring->hw_consumer))); in qlcnic_dump_rings()
3062 tx_ring->num_desc, qlcnic_tx_avail(tx_ring)); in qlcnic_dump_rings()
3065 dump_tx_ring_desc(tx_ring); in qlcnic_dump_rings()
3189 struct qlcnic_host_tx_ring *tx_ring = data; in qlcnic_msix_tx_intr() local
3191 napi_schedule(&tx_ring->napi); in qlcnic_msix_tx_intr()
3201 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_poll_controller() local
3226 tx_ring = &adapter->tx_ring[ring]; in qlcnic_poll_controller()
3227 qlcnic_disable_tx_intr(adapter, tx_ring); in qlcnic_poll_controller()
3228 napi_schedule(&tx_ring->napi); in qlcnic_poll_controller()