Lines Matching refs:rds_ring
812 struct qlcnic_host_rds_ring *rds_ring, in qlcnic_alloc_rx_skb() argument
819 skb = netdev_alloc_skb(adapter->netdev, rds_ring->skb_size); in qlcnic_alloc_rx_skb()
827 rds_ring->dma_size, PCI_DMA_FROMDEVICE); in qlcnic_alloc_rx_skb()
842 struct qlcnic_host_rds_ring *rds_ring, in qlcnic_post_rx_buffers_nodb() argument
851 if (!spin_trylock(&rds_ring->lock)) in qlcnic_post_rx_buffers_nodb()
854 producer = rds_ring->producer; in qlcnic_post_rx_buffers_nodb()
855 head = &rds_ring->free_list; in qlcnic_post_rx_buffers_nodb()
860 if (qlcnic_alloc_rx_skb(adapter, rds_ring, buffer)) in qlcnic_post_rx_buffers_nodb()
867 pdesc = &rds_ring->desc_head[producer]; in qlcnic_post_rx_buffers_nodb()
871 pdesc->buffer_length = cpu_to_le32(rds_ring->dma_size); in qlcnic_post_rx_buffers_nodb()
873 producer = get_next_index(producer, rds_ring->num_desc); in qlcnic_post_rx_buffers_nodb()
876 rds_ring->producer = producer; in qlcnic_post_rx_buffers_nodb()
877 writel((producer - 1) & (rds_ring->num_desc - 1), in qlcnic_post_rx_buffers_nodb()
878 rds_ring->crb_rcv_producer); in qlcnic_post_rx_buffers_nodb()
880 spin_unlock(&rds_ring->lock); in qlcnic_post_rx_buffers_nodb()
1199 struct qlcnic_host_rds_ring *rds_ring; in qlcnic_process_rcv() local
1206 rds_ring = &recv_ctx->rds_rings[ring]; in qlcnic_process_rcv()
1209 if (unlikely(index >= rds_ring->num_desc)) in qlcnic_process_rcv()
1212 buffer = &rds_ring->rx_buf_arr[index]; in qlcnic_process_rcv()
1217 skb = qlcnic_process_rxbuf(adapter, rds_ring, index, cksum); in qlcnic_process_rcv()
1227 if (length > rds_ring->skb_size) in qlcnic_process_rcv()
1228 skb_put(skb, rds_ring->skb_size); in qlcnic_process_rcv()
1266 struct qlcnic_host_rds_ring *rds_ring; in qlcnic_process_lro() local
1278 rds_ring = &recv_ctx->rds_rings[ring]; in qlcnic_process_lro()
1281 if (unlikely(index >= rds_ring->num_desc)) in qlcnic_process_lro()
1284 buffer = &rds_ring->rx_buf_arr[index]; in qlcnic_process_lro()
1293 skb = qlcnic_process_rxbuf(adapter, rds_ring, index, STATUS_CKSUM_OK); in qlcnic_process_lro()
1356 struct qlcnic_host_rds_ring *rds_ring; in qlcnic_process_rcv_ring() local
1410 rds_ring = &adapter->recv_ctx->rds_rings[ring]; in qlcnic_process_rcv_ring()
1415 qlcnic_alloc_rx_skb(adapter, rds_ring, rxbuf); in qlcnic_process_rcv_ring()
1417 spin_lock(&rds_ring->lock); in qlcnic_process_rcv_ring()
1419 &rds_ring->free_list); in qlcnic_process_rcv_ring()
1420 spin_unlock(&rds_ring->lock); in qlcnic_process_rcv_ring()
1423 qlcnic_post_rx_buffers_nodb(adapter, rds_ring, ring); in qlcnic_process_rcv_ring()
1435 struct qlcnic_host_rds_ring *rds_ring, u8 ring_id) in qlcnic_post_rx_buffers() argument
1443 producer = rds_ring->producer; in qlcnic_post_rx_buffers()
1444 head = &rds_ring->free_list; in qlcnic_post_rx_buffers()
1451 if (qlcnic_alloc_rx_skb(adapter, rds_ring, buffer)) in qlcnic_post_rx_buffers()
1459 pdesc = &rds_ring->desc_head[producer]; in qlcnic_post_rx_buffers()
1464 pdesc->buffer_length = cpu_to_le32(rds_ring->dma_size); in qlcnic_post_rx_buffers()
1465 producer = get_next_index(producer, rds_ring->num_desc); in qlcnic_post_rx_buffers()
1469 rds_ring->producer = producer; in qlcnic_post_rx_buffers()
1470 writel((producer-1) & (rds_ring->num_desc-1), in qlcnic_post_rx_buffers()
1471 rds_ring->crb_rcv_producer); in qlcnic_post_rx_buffers()
1493 struct qlcnic_host_rds_ring *rds_ring; in qlcnic_process_rcv_diag() local
1499 rds_ring = &recv_ctx->rds_rings[ring]; in qlcnic_process_rcv_diag()
1503 if (unlikely(index >= rds_ring->num_desc)) in qlcnic_process_rcv_diag()
1509 skb = qlcnic_process_rxbuf(adapter, rds_ring, index, cksum); in qlcnic_process_rcv_diag()
1513 if (length > rds_ring->skb_size) in qlcnic_process_rcv_diag()
1514 skb_put(skb, rds_ring->skb_size); in qlcnic_process_rcv_diag()
1722 struct qlcnic_host_rds_ring *rds_ring; in qlcnic_83xx_process_rcv() local
1730 rds_ring = &recv_ctx->rds_rings[ring]; in qlcnic_83xx_process_rcv()
1733 if (unlikely(index >= rds_ring->num_desc)) in qlcnic_83xx_process_rcv()
1736 buffer = &rds_ring->rx_buf_arr[index]; in qlcnic_83xx_process_rcv()
1739 skb = qlcnic_process_rxbuf(adapter, rds_ring, index, cksum); in qlcnic_83xx_process_rcv()
1743 if (length > rds_ring->skb_size) in qlcnic_83xx_process_rcv()
1744 skb_put(skb, rds_ring->skb_size); in qlcnic_83xx_process_rcv()
1788 struct qlcnic_host_rds_ring *rds_ring; in qlcnic_83xx_process_lro() local
1802 rds_ring = &recv_ctx->rds_rings[ring]; in qlcnic_83xx_process_lro()
1805 if (unlikely(index >= rds_ring->num_desc)) in qlcnic_83xx_process_lro()
1808 buffer = &rds_ring->rx_buf_arr[index]; in qlcnic_83xx_process_lro()
1815 skb = qlcnic_process_rxbuf(adapter, rds_ring, index, STATUS_CKSUM_OK); in qlcnic_83xx_process_lro()
1880 struct qlcnic_host_rds_ring *rds_ring; in qlcnic_83xx_process_rcv_ring() local
1926 rds_ring = &adapter->recv_ctx->rds_rings[ring]; in qlcnic_83xx_process_rcv_ring()
1931 qlcnic_alloc_rx_skb(adapter, rds_ring, rxbuf); in qlcnic_83xx_process_rcv_ring()
1933 spin_lock(&rds_ring->lock); in qlcnic_83xx_process_rcv_ring()
1935 &rds_ring->free_list); in qlcnic_83xx_process_rcv_ring()
1936 spin_unlock(&rds_ring->lock); in qlcnic_83xx_process_rcv_ring()
1938 qlcnic_post_rx_buffers_nodb(adapter, rds_ring, ring); in qlcnic_83xx_process_rcv_ring()
2177 struct qlcnic_host_rds_ring *rds_ring; in qlcnic_83xx_process_rcv_diag() local
2183 rds_ring = &recv_ctx->rds_rings[ring]; in qlcnic_83xx_process_rcv_diag()
2185 if (unlikely(index >= rds_ring->num_desc)) in qlcnic_83xx_process_rcv_diag()
2190 skb = qlcnic_process_rxbuf(adapter, rds_ring, index, STATUS_CKSUM_OK); in qlcnic_83xx_process_rcv_diag()
2194 if (length > rds_ring->skb_size) in qlcnic_83xx_process_rcv_diag()
2195 skb_put(skb, rds_ring->skb_size); in qlcnic_83xx_process_rcv_diag()