Lines Matching refs:rxb
123 struct ocelot_fdma_rx_buf *rxb)
139 rxb->page = page;
140 rxb->page_offset = 0;
141 rxb->dma_addr = mapping;
150 struct ocelot_fdma_rx_buf *rxb;
160 rxb = &rx_ring->bufs[idx];
162 if (unlikely(!rxb->page)) {
163 if (unlikely(!ocelot_fdma_rx_alloc_page(ocelot, rxb))) {
172 dma_addr = rxb->dma_addr + rxb->page_offset;
270 static bool ocelot_fdma_add_rx_frag(struct ocelot_fdma_rx_buf *rxb, u32 stat,
274 struct page *page = rxb->page;
280 rxb->page_offset, size, OCELOT_FDMA_RX_SIZE);
288 rxb->page_offset ^= OCELOT_FDMA_RX_SIZE;
315 struct ocelot_fdma_rx_buf *rxb,
322 void *buff_addr = page_address(rxb->page) +
323 rxb->page_offset;
334 dma_sync_single_range_for_cpu(ocelot->dev, rxb->dma_addr,
335 rxb->page_offset, OCELOT_FDMA_RX_SIZE,
338 if (ocelot_fdma_add_rx_frag(rxb, stat, skb, first)) {
340 ocelot_fdma_reuse_rx_page(ocelot, rxb);
343 dma_unmap_page(ocelot->dev, rxb->dma_addr, PAGE_SIZE,
348 rxb->page = NULL;
393 struct ocelot_fdma_rx_buf *rxb;
420 rxb = &rx_ring->bufs[idx];
422 skb = ocelot_fdma_get_skb(ocelot, stat, rxb, skb);
703 struct ocelot_fdma_rx_buf *rxb;
711 rxb = &rx_ring->bufs[idx];
712 dma_unmap_page(ocelot->dev, rxb->dma_addr, PAGE_SIZE,
714 __free_page(rxb->page);