Lines Matching refs:unmap

119 	struct bnad_tx_unmap *unmap;  in bnad_tx_buff_unmap()  local
123 unmap = &unmap_q[index]; in bnad_tx_buff_unmap()
124 nvecs = unmap->nvecs; in bnad_tx_buff_unmap()
126 skb = unmap->skb; in bnad_tx_buff_unmap()
127 unmap->skb = NULL; in bnad_tx_buff_unmap()
128 unmap->nvecs = 0; in bnad_tx_buff_unmap()
130 dma_unmap_addr(&unmap->vectors[0], dma_addr), in bnad_tx_buff_unmap()
132 dma_unmap_addr_set(&unmap->vectors[0], dma_addr, 0); in bnad_tx_buff_unmap()
141 unmap = &unmap_q[index]; in bnad_tx_buff_unmap()
145 dma_unmap_addr(&unmap->vectors[vector], dma_addr), in bnad_tx_buff_unmap()
146 dma_unmap_len(&unmap->vectors[vector], dma_len), in bnad_tx_buff_unmap()
148 dma_unmap_addr_set(&unmap->vectors[vector], dma_addr, 0); in bnad_tx_buff_unmap()
190 struct bnad_tx_unmap *unmap; in bnad_txcmpl_process() local
205 unmap = &unmap_q[cons]; in bnad_txcmpl_process()
207 skb = unmap->skb; in bnad_txcmpl_process()
212 unmap_wis = BNA_TXQ_WI_NEEDED(unmap->nvecs); in bnad_txcmpl_process()
317 bnad_rxq_cleanup_page(struct bnad *bnad, struct bnad_rx_unmap *unmap) in bnad_rxq_cleanup_page() argument
319 if (!unmap->page) in bnad_rxq_cleanup_page()
323 dma_unmap_addr(&unmap->vector, dma_addr), in bnad_rxq_cleanup_page()
324 unmap->vector.len, DMA_FROM_DEVICE); in bnad_rxq_cleanup_page()
325 put_page(unmap->page); in bnad_rxq_cleanup_page()
326 unmap->page = NULL; in bnad_rxq_cleanup_page()
327 dma_unmap_addr_set(&unmap->vector, dma_addr, 0); in bnad_rxq_cleanup_page()
328 unmap->vector.len = 0; in bnad_rxq_cleanup_page()
332 bnad_rxq_cleanup_skb(struct bnad *bnad, struct bnad_rx_unmap *unmap) in bnad_rxq_cleanup_skb() argument
334 if (!unmap->skb) in bnad_rxq_cleanup_skb()
338 dma_unmap_addr(&unmap->vector, dma_addr), in bnad_rxq_cleanup_skb()
339 unmap->vector.len, DMA_FROM_DEVICE); in bnad_rxq_cleanup_skb()
340 dev_kfree_skb_any(unmap->skb); in bnad_rxq_cleanup_skb()
341 unmap->skb = NULL; in bnad_rxq_cleanup_skb()
342 dma_unmap_addr_set(&unmap->vector, dma_addr, 0); in bnad_rxq_cleanup_skb()
343 unmap->vector.len = 0; in bnad_rxq_cleanup_skb()
353 struct bnad_rx_unmap *unmap = &unmap_q->unmap[i]; in bnad_rxq_cleanup() local
356 bnad_rxq_cleanup_skb(bnad, unmap); in bnad_rxq_cleanup()
358 bnad_rxq_cleanup_page(bnad, unmap); in bnad_rxq_cleanup()
368 struct bnad_rx_unmap *unmap, *prev; in bnad_rxq_refill_page() local
381 unmap = &unmap_q->unmap[prod]; in bnad_rxq_refill_page()
388 prev = &unmap_q->unmap[unmap_q->reuse_pi]; in bnad_rxq_refill_page()
403 unmap->page = page; in bnad_rxq_refill_page()
404 unmap->page_offset = page_offset; in bnad_rxq_refill_page()
405 dma_unmap_addr_set(&unmap->vector, dma_addr, dma_addr); in bnad_rxq_refill_page()
406 unmap->vector.len = unmap_q->map_size; in bnad_rxq_refill_page()
436 struct bnad_rx_unmap *unmap; in bnad_rxq_refill_skb() local
447 unmap = &unmap_q->unmap[prod]; in bnad_rxq_refill_skb()
459 unmap->skb = skb; in bnad_rxq_refill_skb()
460 dma_unmap_addr_set(&unmap->vector, dma_addr, dma_addr); in bnad_rxq_refill_skb()
461 unmap->vector.len = buff_sz; in bnad_rxq_refill_skb()
515 struct bnad_rx_unmap *unmap; in bnad_cq_drop_packet() local
520 unmap = &unmap_q->unmap[ci]; in bnad_cq_drop_packet()
524 bnad_rxq_cleanup_skb(bnad, unmap); in bnad_cq_drop_packet()
526 bnad_rxq_cleanup_page(bnad, unmap); in bnad_cq_drop_packet()
537 struct bnad_rx_unmap *unmap; in bnad_cq_setup_skb_frags() local
543 prefetch(page_address(unmap_q->unmap[sop_ci].page) + in bnad_cq_setup_skb_frags()
544 unmap_q->unmap[sop_ci].page_offset); in bnad_cq_setup_skb_frags()
547 unmap = &unmap_q->unmap[ci]; in bnad_cq_setup_skb_frags()
551 dma_unmap_addr(&unmap->vector, dma_addr), in bnad_cq_setup_skb_frags()
552 unmap->vector.len, DMA_FROM_DEVICE); in bnad_cq_setup_skb_frags()
555 last_fraglen : unmap->vector.len; in bnad_cq_setup_skb_frags()
556 skb->truesize += unmap->vector.len; in bnad_cq_setup_skb_frags()
560 unmap->page, unmap->page_offset, len); in bnad_cq_setup_skb_frags()
562 unmap->page = NULL; in bnad_cq_setup_skb_frags()
563 unmap->vector.len = 0; in bnad_cq_setup_skb_frags()
572 struct bnad_rx_unmap *unmap, u32 len) in bnad_cq_setup_skb() argument
577 dma_unmap_addr(&unmap->vector, dma_addr), in bnad_cq_setup_skb()
578 unmap->vector.len, DMA_FROM_DEVICE); in bnad_cq_setup_skb()
583 unmap->skb = NULL; in bnad_cq_setup_skb()
584 unmap->vector.len = 0; in bnad_cq_setup_skb()
593 struct bnad_rx_unmap *unmap = NULL; in bnad_cq_process() local
631 unmap = &unmap_q->unmap[sop_ci]; in bnad_cq_process()
632 skb = unmap->skb; in bnad_cq_process()
691 bnad_cq_setup_skb(bnad, skb, unmap, len); in bnad_cq_process()
2937 struct bnad_tx_unmap *unmap_q, *unmap, *head_unmap; in bnad_start_xmit() local
3034 unmap = head_unmap; in bnad_start_xmit()
3039 dma_unmap_addr_set(&unmap->vectors[0], dma_addr, dma_addr); in bnad_start_xmit()
3063 unmap = &unmap_q[prod]; in bnad_start_xmit()
3068 dma_unmap_len_set(&unmap->vectors[vect_id], dma_len, size); in bnad_start_xmit()
3071 dma_unmap_addr_set(&unmap->vectors[vect_id], dma_addr, in bnad_start_xmit()