Lines Matching refs:rds_ring
815 struct qlcnic_host_rds_ring *rds_ring, in qlcnic_alloc_rx_skb() argument
822 skb = netdev_alloc_skb(adapter->netdev, rds_ring->skb_size); in qlcnic_alloc_rx_skb()
830 rds_ring->dma_size, PCI_DMA_FROMDEVICE); in qlcnic_alloc_rx_skb()
845 struct qlcnic_host_rds_ring *rds_ring, in qlcnic_post_rx_buffers_nodb() argument
854 if (!spin_trylock(&rds_ring->lock)) in qlcnic_post_rx_buffers_nodb()
857 producer = rds_ring->producer; in qlcnic_post_rx_buffers_nodb()
858 head = &rds_ring->free_list; in qlcnic_post_rx_buffers_nodb()
863 if (qlcnic_alloc_rx_skb(adapter, rds_ring, buffer)) in qlcnic_post_rx_buffers_nodb()
870 pdesc = &rds_ring->desc_head[producer]; in qlcnic_post_rx_buffers_nodb()
874 pdesc->buffer_length = cpu_to_le32(rds_ring->dma_size); in qlcnic_post_rx_buffers_nodb()
876 producer = get_next_index(producer, rds_ring->num_desc); in qlcnic_post_rx_buffers_nodb()
879 rds_ring->producer = producer; in qlcnic_post_rx_buffers_nodb()
880 writel((producer - 1) & (rds_ring->num_desc - 1), in qlcnic_post_rx_buffers_nodb()
881 rds_ring->crb_rcv_producer); in qlcnic_post_rx_buffers_nodb()
883 spin_unlock(&rds_ring->lock); in qlcnic_post_rx_buffers_nodb()
1202 struct qlcnic_host_rds_ring *rds_ring; in qlcnic_process_rcv() local
1209 rds_ring = &recv_ctx->rds_rings[ring]; in qlcnic_process_rcv()
1212 if (unlikely(index >= rds_ring->num_desc)) in qlcnic_process_rcv()
1215 buffer = &rds_ring->rx_buf_arr[index]; in qlcnic_process_rcv()
1220 skb = qlcnic_process_rxbuf(adapter, rds_ring, index, cksum); in qlcnic_process_rcv()
1230 if (length > rds_ring->skb_size) in qlcnic_process_rcv()
1231 skb_put(skb, rds_ring->skb_size); in qlcnic_process_rcv()
1269 struct qlcnic_host_rds_ring *rds_ring; in qlcnic_process_lro() local
1281 rds_ring = &recv_ctx->rds_rings[ring]; in qlcnic_process_lro()
1284 if (unlikely(index >= rds_ring->num_desc)) in qlcnic_process_lro()
1287 buffer = &rds_ring->rx_buf_arr[index]; in qlcnic_process_lro()
1296 skb = qlcnic_process_rxbuf(adapter, rds_ring, index, STATUS_CKSUM_OK); in qlcnic_process_lro()
1359 struct qlcnic_host_rds_ring *rds_ring; in qlcnic_process_rcv_ring() local
1413 rds_ring = &adapter->recv_ctx->rds_rings[ring]; in qlcnic_process_rcv_ring()
1418 qlcnic_alloc_rx_skb(adapter, rds_ring, rxbuf); in qlcnic_process_rcv_ring()
1420 spin_lock(&rds_ring->lock); in qlcnic_process_rcv_ring()
1422 &rds_ring->free_list); in qlcnic_process_rcv_ring()
1423 spin_unlock(&rds_ring->lock); in qlcnic_process_rcv_ring()
1426 qlcnic_post_rx_buffers_nodb(adapter, rds_ring, ring); in qlcnic_process_rcv_ring()
1438 struct qlcnic_host_rds_ring *rds_ring, u8 ring_id) in qlcnic_post_rx_buffers() argument
1446 producer = rds_ring->producer; in qlcnic_post_rx_buffers()
1447 head = &rds_ring->free_list; in qlcnic_post_rx_buffers()
1454 if (qlcnic_alloc_rx_skb(adapter, rds_ring, buffer)) in qlcnic_post_rx_buffers()
1462 pdesc = &rds_ring->desc_head[producer]; in qlcnic_post_rx_buffers()
1467 pdesc->buffer_length = cpu_to_le32(rds_ring->dma_size); in qlcnic_post_rx_buffers()
1468 producer = get_next_index(producer, rds_ring->num_desc); in qlcnic_post_rx_buffers()
1472 rds_ring->producer = producer; in qlcnic_post_rx_buffers()
1473 writel((producer-1) & (rds_ring->num_desc-1), in qlcnic_post_rx_buffers()
1474 rds_ring->crb_rcv_producer); in qlcnic_post_rx_buffers()
1496 struct qlcnic_host_rds_ring *rds_ring; in qlcnic_process_rcv_diag() local
1502 rds_ring = &recv_ctx->rds_rings[ring]; in qlcnic_process_rcv_diag()
1506 if (unlikely(index >= rds_ring->num_desc)) in qlcnic_process_rcv_diag()
1512 skb = qlcnic_process_rxbuf(adapter, rds_ring, index, cksum); in qlcnic_process_rcv_diag()
1516 if (length > rds_ring->skb_size) in qlcnic_process_rcv_diag()
1517 skb_put(skb, rds_ring->skb_size); in qlcnic_process_rcv_diag()
1725 struct qlcnic_host_rds_ring *rds_ring; in qlcnic_83xx_process_rcv() local
1733 rds_ring = &recv_ctx->rds_rings[ring]; in qlcnic_83xx_process_rcv()
1736 if (unlikely(index >= rds_ring->num_desc)) in qlcnic_83xx_process_rcv()
1739 buffer = &rds_ring->rx_buf_arr[index]; in qlcnic_83xx_process_rcv()
1742 skb = qlcnic_process_rxbuf(adapter, rds_ring, index, cksum); in qlcnic_83xx_process_rcv()
1746 if (length > rds_ring->skb_size) in qlcnic_83xx_process_rcv()
1747 skb_put(skb, rds_ring->skb_size); in qlcnic_83xx_process_rcv()
1791 struct qlcnic_host_rds_ring *rds_ring; in qlcnic_83xx_process_lro() local
1805 rds_ring = &recv_ctx->rds_rings[ring]; in qlcnic_83xx_process_lro()
1808 if (unlikely(index >= rds_ring->num_desc)) in qlcnic_83xx_process_lro()
1811 buffer = &rds_ring->rx_buf_arr[index]; in qlcnic_83xx_process_lro()
1818 skb = qlcnic_process_rxbuf(adapter, rds_ring, index, STATUS_CKSUM_OK); in qlcnic_83xx_process_lro()
1883 struct qlcnic_host_rds_ring *rds_ring; in qlcnic_83xx_process_rcv_ring() local
1929 rds_ring = &adapter->recv_ctx->rds_rings[ring]; in qlcnic_83xx_process_rcv_ring()
1934 qlcnic_alloc_rx_skb(adapter, rds_ring, rxbuf); in qlcnic_83xx_process_rcv_ring()
1936 spin_lock(&rds_ring->lock); in qlcnic_83xx_process_rcv_ring()
1938 &rds_ring->free_list); in qlcnic_83xx_process_rcv_ring()
1939 spin_unlock(&rds_ring->lock); in qlcnic_83xx_process_rcv_ring()
1941 qlcnic_post_rx_buffers_nodb(adapter, rds_ring, ring); in qlcnic_83xx_process_rcv_ring()
2179 struct qlcnic_host_rds_ring *rds_ring; in qlcnic_83xx_process_rcv_diag() local
2185 rds_ring = &recv_ctx->rds_rings[ring]; in qlcnic_83xx_process_rcv_diag()
2187 if (unlikely(index >= rds_ring->num_desc)) in qlcnic_83xx_process_rcv_diag()
2192 skb = qlcnic_process_rxbuf(adapter, rds_ring, index, STATUS_CKSUM_OK); in qlcnic_83xx_process_rcv_diag()
2196 if (length > rds_ring->skb_size) in qlcnic_83xx_process_rcv_diag()
2197 skb_put(skb, rds_ring->skb_size); in qlcnic_83xx_process_rcv_diag()