Lines Matching refs:lli_pool
395 struct d40_lli_pool lli_pool; member
670 base = d40d->lli_pool.pre_alloc_lli; in d40_pool_lli_alloc()
671 d40d->lli_pool.size = sizeof(d40d->lli_pool.pre_alloc_lli); in d40_pool_lli_alloc()
672 d40d->lli_pool.base = NULL; in d40_pool_lli_alloc()
674 d40d->lli_pool.size = lli_len * 2 * align; in d40_pool_lli_alloc()
676 base = kmalloc(d40d->lli_pool.size + align, GFP_NOWAIT); in d40_pool_lli_alloc()
677 d40d->lli_pool.base = base; in d40_pool_lli_alloc()
679 if (d40d->lli_pool.base == NULL) in d40_pool_lli_alloc()
687 d40d->lli_pool.dma_addr = 0; in d40_pool_lli_alloc()
692 d40d->lli_pool.dma_addr = dma_map_single(d40c->base->dev, in d40_pool_lli_alloc()
694 d40d->lli_pool.size, in d40_pool_lli_alloc()
698 d40d->lli_pool.dma_addr)) { in d40_pool_lli_alloc()
699 kfree(d40d->lli_pool.base); in d40_pool_lli_alloc()
700 d40d->lli_pool.base = NULL; in d40_pool_lli_alloc()
701 d40d->lli_pool.dma_addr = 0; in d40_pool_lli_alloc()
711 if (d40d->lli_pool.dma_addr) in d40_pool_lli_free()
712 dma_unmap_single(d40c->base->dev, d40d->lli_pool.dma_addr, in d40_pool_lli_free()
713 d40d->lli_pool.size, DMA_TO_DEVICE); in d40_pool_lli_free()
715 kfree(d40d->lli_pool.base); in d40_pool_lli_free()
716 d40d->lli_pool.base = NULL; in d40_pool_lli_free()
717 d40d->lli_pool.size = 0; in d40_pool_lli_free()
2180 dma_sync_single_for_device(chan->base->dev, desc->lli_pool.dma_addr, in d40_prep_sg_phy()
2181 desc->lli_pool.size, DMA_TO_DEVICE); in d40_prep_sg_phy()