• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6.36/drivers/net/netxen/

Lines Matching refs:rds_ring

49 		struct nx_host_rds_ring *rds_ring);
110 struct nx_host_rds_ring *rds_ring;
116 rds_ring = &recv_ctx->rds_rings[ring];
117 for (i = 0; i < rds_ring->num_desc; ++i) {
118 rx_buf = &(rds_ring->rx_buf_arr[i]);
123 rds_ring->dma_size,
166 struct nx_host_rds_ring *rds_ring;
176 rds_ring = &recv_ctx->rds_rings[ring];
177 vfree(rds_ring->rx_buf_arr);
178 rds_ring->rx_buf_arr = NULL;
195 struct nx_host_rds_ring *rds_ring;
229 rds_ring = kzalloc(size, GFP_KERNEL);
230 if (rds_ring == NULL) {
235 recv_ctx->rds_rings = rds_ring;
238 rds_ring = &recv_ctx->rds_rings[ring];
241 rds_ring->num_desc = adapter->num_rxd;
243 rds_ring->dma_size =
245 rds_ring->skb_size =
249 rds_ring->dma_size =
252 rds_ring->dma_size =
254 rds_ring->skb_size =
255 rds_ring->dma_size + NET_IP_ALIGN;
260 rds_ring->num_desc = adapter->num_jumbo_rxd;
262 rds_ring->dma_size =
265 rds_ring->dma_size =
269 rds_ring->dma_size += NX_LRO_BUFFER_EXTRA;
271 rds_ring->skb_size =
272 rds_ring->dma_size + NET_IP_ALIGN;
276 rds_ring->num_desc = adapter->num_lro_rxd;
277 rds_ring->dma_size = NX_RX_LRO_BUFFER_LENGTH;
278 rds_ring->skb_size = rds_ring->dma_size + NET_IP_ALIGN;
282 rds_ring->rx_buf_arr = (struct netxen_rx_buffer *)
283 vmalloc(RCV_BUFF_RINGSIZE(rds_ring));
284 if (rds_ring->rx_buf_arr == NULL) {
291 memset(rds_ring->rx_buf_arr, 0, RCV_BUFF_RINGSIZE(rds_ring));
292 INIT_LIST_HEAD(&rds_ring->free_list);
297 rx_buf = rds_ring->rx_buf_arr;
298 for (i = 0; i < rds_ring->num_desc; i++) {
300 &rds_ring->free_list);
305 spin_lock_init(&rds_ring->lock);
1442 struct nx_host_rds_ring *rds_ring,
1449 buffer->skb = dev_alloc_skb(rds_ring->skb_size);
1459 rds_ring->dma_size, PCI_DMA_FROMDEVICE);
1475 struct nx_host_rds_ring *rds_ring, u16 index, u16 cksum)
1480 buffer = &rds_ring->rx_buf_arr[index];
1482 pci_unmap_single(adapter->pdev, buffer->dma, rds_ring->dma_size,
1512 struct nx_host_rds_ring *rds_ring;
1518 rds_ring = &recv_ctx->rds_rings[ring];
1521 if (unlikely(index >= rds_ring->num_desc))
1524 buffer = &rds_ring->rx_buf_arr[index];
1530 skb = netxen_process_rxbuf(adapter, rds_ring, index, cksum);
1534 if (length > rds_ring->skb_size)
1535 skb_put(skb, rds_ring->skb_size);
1566 struct nx_host_rds_ring *rds_ring;
1578 rds_ring = &recv_ctx->rds_rings[ring];
1581 if (unlikely(index > rds_ring->num_desc))
1584 buffer = &rds_ring->rx_buf_arr[index];
1593 skb = netxen_process_rxbuf(adapter, rds_ring, index, STATUS_CKSUM_OK);
1693 struct nx_host_rds_ring *rds_ring =
1700 netxen_alloc_rx_skb(adapter, rds_ring, rxbuf);
1702 spin_lock(&rds_ring->lock);
1704 &rds_ring->free_list);
1705 spin_unlock(&rds_ring->lock);
1708 netxen_post_rx_buffers_nodb(adapter, rds_ring);
1797 struct nx_host_rds_ring *rds_ring)
1805 producer = rds_ring->producer;
1807 head = &rds_ring->free_list;
1813 if (netxen_alloc_rx_skb(adapter, rds_ring, buffer))
1821 pdesc = &rds_ring->desc_head[producer];
1824 pdesc->buffer_length = cpu_to_le32(rds_ring->dma_size);
1826 producer = get_next_index(producer, rds_ring->num_desc);
1830 rds_ring->producer = producer;
1831 NXWRIO(adapter, rds_ring->crb_rcv_producer,
1832 (producer-1) & (rds_ring->num_desc-1));
1844 (rds_ring->num_desc - 1)));
1855 struct nx_host_rds_ring *rds_ring)
1862 if (!spin_trylock(&rds_ring->lock))
1865 producer = rds_ring->producer;
1867 head = &rds_ring->free_list;
1873 if (netxen_alloc_rx_skb(adapter, rds_ring, buffer))
1881 pdesc = &rds_ring->desc_head[producer];
1883 pdesc->buffer_length = cpu_to_le32(rds_ring->dma_size);
1886 producer = get_next_index(producer, rds_ring->num_desc);
1890 rds_ring->producer = producer;
1891 NXWRIO(adapter, rds_ring->crb_rcv_producer,
1892 (producer - 1) & (rds_ring->num_desc - 1));
1894 spin_unlock(&rds_ring->lock);