Lines Matching refs:tx_ring
277 struct qlcnic_host_tx_ring *tx_ring = adapter->tx_ring; in qlcnic_82xx_change_filter() local
281 producer = tx_ring->producer; in qlcnic_82xx_change_filter()
282 hwdesc = &tx_ring->desc_head[tx_ring->producer]; in qlcnic_82xx_change_filter()
298 tx_ring->producer = get_next_index(producer, tx_ring->num_desc); in qlcnic_82xx_change_filter()
373 struct qlcnic_host_tx_ring *tx_ring) in qlcnic_tx_encap_pkt() argument
377 u32 producer = tx_ring->producer; in qlcnic_tx_encap_pkt()
407 hwdesc = &tx_ring->desc_head[producer]; in qlcnic_tx_encap_pkt()
408 tx_ring->cmd_buf_arr[producer].skb = NULL; in qlcnic_tx_encap_pkt()
413 producer = get_next_index(producer, tx_ring->num_desc); in qlcnic_tx_encap_pkt()
416 tx_ring->producer = producer; in qlcnic_tx_encap_pkt()
460 struct qlcnic_host_tx_ring *tx_ring) in qlcnic_tx_pkt() argument
468 u32 producer = tx_ring->producer; in qlcnic_tx_pkt()
518 hwdesc = &tx_ring->desc_head[producer]; in qlcnic_tx_pkt()
519 tx_ring->cmd_buf_arr[producer].skb = NULL; in qlcnic_tx_pkt()
534 producer = get_next_index(producer, tx_ring->num_desc); in qlcnic_tx_pkt()
540 hwdesc = &tx_ring->desc_head[producer]; in qlcnic_tx_pkt()
541 tx_ring->cmd_buf_arr[producer].skb = NULL; in qlcnic_tx_pkt()
547 producer = get_next_index(producer, tx_ring->num_desc); in qlcnic_tx_pkt()
550 tx_ring->producer = producer; in qlcnic_tx_pkt()
650 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_xmit_frame() local
672 tx_ring = &adapter->tx_ring[skb_get_queue_mapping(skb)]; in qlcnic_xmit_frame()
673 num_txd = tx_ring->num_desc; in qlcnic_xmit_frame()
690 if (unlikely(qlcnic_tx_avail(tx_ring) <= TX_STOP_THRESH)) { in qlcnic_xmit_frame()
691 netif_tx_stop_queue(tx_ring->txq); in qlcnic_xmit_frame()
692 if (qlcnic_tx_avail(tx_ring) > TX_STOP_THRESH) { in qlcnic_xmit_frame()
693 netif_tx_start_queue(tx_ring->txq); in qlcnic_xmit_frame()
695 tx_ring->tx_stats.xmit_off++; in qlcnic_xmit_frame()
700 producer = tx_ring->producer; in qlcnic_xmit_frame()
701 pbuf = &tx_ring->cmd_buf_arr[producer]; in qlcnic_xmit_frame()
703 first_desc = &tx_ring->desc_head[producer]; in qlcnic_xmit_frame()
704 hwdesc = &tx_ring->desc_head[producer]; in qlcnic_xmit_frame()
724 hwdesc = &tx_ring->desc_head[producer]; in qlcnic_xmit_frame()
726 tx_ring->cmd_buf_arr[producer].skb = NULL; in qlcnic_xmit_frame()
747 tx_ring->producer = get_next_index(producer, num_txd); in qlcnic_xmit_frame()
760 tx_ring))) in qlcnic_xmit_frame()
764 skb, tx_ring))) in qlcnic_xmit_frame()
771 tx_ring->tx_stats.tx_bytes += skb->len; in qlcnic_xmit_frame()
772 tx_ring->tx_stats.xmit_called++; in qlcnic_xmit_frame()
776 qlcnic_update_cmd_producer(tx_ring); in qlcnic_xmit_frame()
885 struct qlcnic_host_tx_ring *tx_ring, in qlcnic_process_cmd_ring() argument
895 if (!spin_trylock(&tx_ring->tx_clean_lock)) in qlcnic_process_cmd_ring()
898 sw_consumer = tx_ring->sw_consumer; in qlcnic_process_cmd_ring()
899 hw_consumer = le32_to_cpu(*(tx_ring->hw_consumer)); in qlcnic_process_cmd_ring()
902 buffer = &tx_ring->cmd_buf_arr[sw_consumer]; in qlcnic_process_cmd_ring()
914 tx_ring->tx_stats.xmit_finished++; in qlcnic_process_cmd_ring()
919 sw_consumer = get_next_index(sw_consumer, tx_ring->num_desc); in qlcnic_process_cmd_ring()
924 tx_ring->sw_consumer = sw_consumer; in qlcnic_process_cmd_ring()
928 if (netif_tx_queue_stopped(tx_ring->txq) && in qlcnic_process_cmd_ring()
930 if (qlcnic_tx_avail(tx_ring) > TX_STOP_THRESH) { in qlcnic_process_cmd_ring()
931 netif_tx_wake_queue(tx_ring->txq); in qlcnic_process_cmd_ring()
932 tx_ring->tx_stats.xmit_on++; in qlcnic_process_cmd_ring()
950 hw_consumer = le32_to_cpu(*(tx_ring->hw_consumer)); in qlcnic_process_cmd_ring()
953 spin_unlock(&tx_ring->tx_clean_lock); in qlcnic_process_cmd_ring()
963 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_poll() local
967 tx_ring = sds_ring->tx_ring; in qlcnic_poll()
969 tx_complete = qlcnic_process_cmd_ring(adapter, tx_ring, in qlcnic_poll()
981 qlcnic_enable_tx_intr(adapter, tx_ring); in qlcnic_poll()
990 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_tx_poll() local
994 tx_ring = container_of(napi, struct qlcnic_host_tx_ring, napi); in qlcnic_tx_poll()
995 adapter = tx_ring->adapter; in qlcnic_tx_poll()
997 work_done = qlcnic_process_cmd_ring(adapter, tx_ring, budget); in qlcnic_tx_poll()
999 napi_complete(&tx_ring->napi); in qlcnic_tx_poll()
1001 qlcnic_enable_tx_intr(adapter, tx_ring); in qlcnic_tx_poll()
1577 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_82xx_napi_add() local
1607 tx_ring = &adapter->tx_ring[ring]; in qlcnic_82xx_napi_add()
1608 netif_tx_napi_add(netdev, &tx_ring->napi, qlcnic_tx_poll, in qlcnic_82xx_napi_add()
1621 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_82xx_napi_del() local
1632 tx_ring = &adapter->tx_ring[ring]; in qlcnic_82xx_napi_del()
1633 netif_napi_del(&tx_ring->napi); in qlcnic_82xx_napi_del()
1644 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_82xx_napi_enable() local
1660 tx_ring = &adapter->tx_ring[ring]; in qlcnic_82xx_napi_enable()
1661 napi_enable(&tx_ring->napi); in qlcnic_82xx_napi_enable()
1662 qlcnic_enable_tx_intr(adapter, tx_ring); in qlcnic_82xx_napi_enable()
1671 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_82xx_napi_disable() local
1688 tx_ring = &adapter->tx_ring[ring]; in qlcnic_82xx_napi_disable()
1689 qlcnic_disable_tx_intr(adapter, tx_ring); in qlcnic_82xx_napi_disable()
1690 napi_synchronize(&tx_ring->napi); in qlcnic_82xx_napi_disable()
1691 napi_disable(&tx_ring->napi); in qlcnic_82xx_napi_disable()
1954 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_83xx_msix_sriov_vf_poll() local
1959 tx_ring = adapter->tx_ring; in qlcnic_83xx_msix_sriov_vf_poll()
1961 tx_complete = qlcnic_process_cmd_ring(adapter, tx_ring, budget); in qlcnic_83xx_msix_sriov_vf_poll()
1982 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_83xx_poll() local
1987 tx_ring = adapter->tx_ring; in qlcnic_83xx_poll()
1989 tx_complete = qlcnic_process_cmd_ring(adapter, tx_ring, budget); in qlcnic_83xx_poll()
2007 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_83xx_msix_tx_poll() local
2010 tx_ring = container_of(napi, struct qlcnic_host_tx_ring, napi); in qlcnic_83xx_msix_tx_poll()
2011 adapter = tx_ring->adapter; in qlcnic_83xx_msix_tx_poll()
2012 work_done = qlcnic_process_cmd_ring(adapter, tx_ring, budget); in qlcnic_83xx_msix_tx_poll()
2014 napi_complete(&tx_ring->napi); in qlcnic_83xx_msix_tx_poll()
2016 qlcnic_enable_tx_intr(adapter, tx_ring); in qlcnic_83xx_msix_tx_poll()
2047 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_83xx_napi_enable() local
2063 tx_ring = &adapter->tx_ring[ring]; in qlcnic_83xx_napi_enable()
2064 napi_enable(&tx_ring->napi); in qlcnic_83xx_napi_enable()
2065 qlcnic_enable_tx_intr(adapter, tx_ring); in qlcnic_83xx_napi_enable()
2075 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_83xx_napi_disable() local
2091 tx_ring = &adapter->tx_ring[ring]; in qlcnic_83xx_napi_disable()
2092 qlcnic_disable_tx_intr(adapter, tx_ring); in qlcnic_83xx_napi_disable()
2093 napi_synchronize(&tx_ring->napi); in qlcnic_83xx_napi_disable()
2094 napi_disable(&tx_ring->napi); in qlcnic_83xx_napi_disable()
2104 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_83xx_napi_add() local
2137 tx_ring = &adapter->tx_ring[ring]; in qlcnic_83xx_napi_add()
2138 netif_tx_napi_add(netdev, &tx_ring->napi, in qlcnic_83xx_napi_add()
2152 struct qlcnic_host_tx_ring *tx_ring; in qlcnic_83xx_napi_del() local
2164 tx_ring = &adapter->tx_ring[ring]; in qlcnic_83xx_napi_del()
2165 netif_napi_del(&tx_ring->napi); in qlcnic_83xx_napi_del()