1
0
Fork 0

iommu/dma: Remove __iommu_dma_free

We only have a single caller of this function left, so open code it there.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
alistair/sunxi64-5.4-dsi
Christoph Hellwig 2019-05-20 09:29:35 +02:00 committed by Joerg Roedel
parent 21b95aaf5f
commit aa8ba22757
1 changed files with 2 additions and 19 deletions

View File

@ -563,24 +563,6 @@ static struct page **__iommu_dma_get_pages(void *cpu_addr)
return area->pages;
}
/**
* iommu_dma_free - Free a buffer allocated by iommu_dma_alloc_remap()
* @dev: Device which owns this buffer
* @pages: Array of buffer pages as returned by __iommu_dma_alloc_remap()
* @size: Size of buffer in bytes
* @handle: DMA address of buffer
*
* Frees both the pages associated with the buffer, and the array
* describing them
*/
static void __iommu_dma_free(struct device *dev, struct page **pages,
size_t size, dma_addr_t *handle)
{
__iommu_dma_unmap(dev, *handle, size);
__iommu_dma_free_pages(pages, PAGE_ALIGN(size) >> PAGE_SHIFT);
*handle = DMA_MAPPING_ERROR;
}
/**
* iommu_dma_alloc_remap - Allocate and map a buffer contiguous in IOVA space
* @dev: Device to allocate memory for. Must be a real device
@ -1053,7 +1035,8 @@ static void iommu_dma_free(struct device *dev, size_t size, void *cpu_addr,
if (!pages)
return;
__iommu_dma_free(dev, pages, iosize, &handle);
__iommu_dma_unmap(dev, handle, iosize);
__iommu_dma_free_pages(pages, size >> PAGE_SHIFT);
dma_common_free_remap(cpu_addr, size, VM_USERMAP);
} else {
__iommu_dma_unmap(dev, handle, iosize);