Lines Matching refs:meta
74 struct b43_dmadesc_meta **meta) in op32_idx2desc() argument
78 *meta = &(ring->meta[slot]); in op32_idx2desc()
166 struct b43_dmadesc_meta **meta) in op64_idx2desc() argument
170 *meta = &(ring->meta[slot]); in op64_idx2desc()
396 struct b43_dmadesc_meta *meta) in free_descriptor_buffer() argument
398 if (meta->skb) { in free_descriptor_buffer()
400 ieee80211_free_txskb(ring->dev->wl->hw, meta->skb); in free_descriptor_buffer()
402 dev_kfree_skb_any(meta->skb); in free_descriptor_buffer()
403 meta->skb = NULL; in free_descriptor_buffer()
594 struct b43_dmadesc_meta *meta, gfp_t gfp_flags) in setup_rx_descbuffer() argument
625 meta->skb = skb; in setup_rx_descbuffer()
626 meta->dmaaddr = dmaaddr; in setup_rx_descbuffer()
640 struct b43_dmadesc_meta *meta; in alloc_initial_descbuffers() local
643 desc = ring->ops->idx2desc(ring, i, &meta); in alloc_initial_descbuffers()
645 err = setup_rx_descbuffer(ring, desc, meta, GFP_KERNEL); in alloc_initial_descbuffers()
660 desc = ring->ops->idx2desc(ring, i, &meta); in alloc_initial_descbuffers()
662 unmap_descbuffer(ring, meta->dmaaddr, ring->rx_buffersize, 0); in alloc_initial_descbuffers()
663 dev_kfree_skb(meta->skb); in alloc_initial_descbuffers()
776 struct b43_dmadesc_meta *meta; in free_all_descbuffers() local
783 ring->ops->idx2desc(ring, i, &meta); in free_all_descbuffers()
785 if (!meta->skb || b43_dma_ptr_is_poisoned(meta->skb)) { in free_all_descbuffers()
790 unmap_descbuffer(ring, meta->dmaaddr, in free_all_descbuffers()
791 meta->skb->len, 1); in free_all_descbuffers()
793 unmap_descbuffer(ring, meta->dmaaddr, in free_all_descbuffers()
796 free_descriptor_buffer(ring, meta); in free_all_descbuffers()
849 ring->meta = kcalloc(ring->nr_slots, sizeof(struct b43_dmadesc_meta), in b43_setup_dmaring()
851 if (!ring->meta) in b43_setup_dmaring()
854 ring->meta->skb = B43_DMA_PTR_POISON; in b43_setup_dmaring()
947 kfree(ring->meta); in b43_setup_dmaring()
1008 kfree(ring->meta); in b43_destroy_dmaring()
1199 struct b43_dmadesc_meta *meta; in dma_tx_fragment() local
1239 desc = ops->idx2desc(ring, slot, &meta); in dma_tx_fragment()
1240 memset(meta, 0, sizeof(*meta)); in dma_tx_fragment()
1242 meta->skb = skb; in dma_tx_fragment()
1243 meta->is_last_fragment = true; in dma_tx_fragment()
1246 meta->dmaaddr = map_descbuffer(ring, skb->data, skb->len, 1); in dma_tx_fragment()
1248 if (b43_dma_mapping_error(ring, meta->dmaaddr, skb->len, 1)) { in dma_tx_fragment()
1258 meta->dmaaddr = map_descbuffer(ring, priv_info->bouncebuffer, skb->len, 1); in dma_tx_fragment()
1259 if (b43_dma_mapping_error(ring, meta->dmaaddr, skb->len, 1)) { in dma_tx_fragment()
1269 ops->fill_descriptor(ring, desc, meta->dmaaddr, skb->len, 0, 1, 1); in dma_tx_fragment()
1419 struct b43_dmadesc_meta *meta; in b43_dma_handle_txstatus() local
1476 ops->idx2desc(ring, slot, &meta); in b43_dma_handle_txstatus()
1478 if (b43_dma_ptr_is_poisoned(meta->skb)) { in b43_dma_handle_txstatus()
1485 if (meta->skb) { in b43_dma_handle_txstatus()
1487 b43_get_priv_tx_info(IEEE80211_SKB_CB(meta->skb)); in b43_dma_handle_txstatus()
1489 unmap_descbuffer(ring, meta->dmaaddr, in b43_dma_handle_txstatus()
1490 meta->skb->len, 1); in b43_dma_handle_txstatus()
1494 unmap_descbuffer(ring, meta->dmaaddr, in b43_dma_handle_txstatus()
1498 if (meta->is_last_fragment) { in b43_dma_handle_txstatus()
1501 if (unlikely(!meta->skb)) { in b43_dma_handle_txstatus()
1511 info = IEEE80211_SKB_CB(meta->skb); in b43_dma_handle_txstatus()
1534 ieee80211_tx_status(dev->wl->hw, meta->skb); in b43_dma_handle_txstatus()
1538 meta->skb = B43_DMA_PTR_POISON; in b43_dma_handle_txstatus()
1543 if (unlikely(meta->skb)) { in b43_dma_handle_txstatus()
1554 if (meta->is_last_fragment && !skip) { in b43_dma_handle_txstatus()
1586 struct b43_dmadesc_meta *meta; in dma_rx() local
1593 desc = ops->idx2desc(ring, *slot, &meta); in dma_rx()
1595 sync_descbuffer_for_cpu(ring, meta->dmaaddr, ring->rx_buffersize); in dma_rx()
1596 skb = meta->skb; in dma_rx()
1609 dmaaddr = meta->dmaaddr; in dma_rx()
1617 dmaaddr = meta->dmaaddr; in dma_rx()
1630 desc = ops->idx2desc(ring, *slot, &meta); in dma_rx()
1632 b43_poison_rx_buffer(ring, meta->skb); in dma_rx()
1633 sync_descbuffer_for_device(ring, meta->dmaaddr, in dma_rx()
1647 dmaaddr = meta->dmaaddr; in dma_rx()
1648 err = setup_rx_descbuffer(ring, desc, meta, GFP_ATOMIC); in dma_rx()