diff options
author | Joerg Roedel <jroedel@suse.de> | 2016-07-05 10:28:02 -0400 |
---|---|---|
committer | Joerg Roedel <jroedel@suse.de> | 2016-07-13 06:48:06 -0400 |
commit | bda350dbdbc1ad8655ece0ec3d41bebc3ee7a77b (patch) | |
tree | a69947455eb51b53a4680edf8128fa08d3144e93 | |
parent | 2d4c515bf06c9bce87b546279413621f847ef6a3 (diff) |
iommu/amd: Remove align-parameter from __map_single()
This parameter is not required anymore because the
iova-allocations are always aligned to its size.
Signed-off-by: Joerg Roedel <jroedel@suse.de>
-rw-r--r-- | drivers/iommu/amd_iommu.c | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/drivers/iommu/amd_iommu.c b/drivers/iommu/amd_iommu.c index 2ba8b464ea1a..d218e35ed3e3 100644 --- a/drivers/iommu/amd_iommu.c +++ b/drivers/iommu/amd_iommu.c | |||
@@ -2162,22 +2162,17 @@ static dma_addr_t __map_single(struct device *dev, | |||
2162 | phys_addr_t paddr, | 2162 | phys_addr_t paddr, |
2163 | size_t size, | 2163 | size_t size, |
2164 | int direction, | 2164 | int direction, |
2165 | bool align, | ||
2166 | u64 dma_mask) | 2165 | u64 dma_mask) |
2167 | { | 2166 | { |
2168 | dma_addr_t offset = paddr & ~PAGE_MASK; | 2167 | dma_addr_t offset = paddr & ~PAGE_MASK; |
2169 | dma_addr_t address, start, ret; | 2168 | dma_addr_t address, start, ret; |
2170 | unsigned int pages; | 2169 | unsigned int pages; |
2171 | unsigned long align_mask = 0; | ||
2172 | int prot = 0; | 2170 | int prot = 0; |
2173 | int i; | 2171 | int i; |
2174 | 2172 | ||
2175 | pages = iommu_num_pages(paddr, size, PAGE_SIZE); | 2173 | pages = iommu_num_pages(paddr, size, PAGE_SIZE); |
2176 | paddr &= PAGE_MASK; | 2174 | paddr &= PAGE_MASK; |
2177 | 2175 | ||
2178 | if (align) | ||
2179 | align_mask = (1UL << get_order(size)) - 1; | ||
2180 | |||
2181 | address = dma_ops_alloc_iova(dev, dma_dom, pages, dma_mask); | 2176 | address = dma_ops_alloc_iova(dev, dma_dom, pages, dma_mask); |
2182 | if (address == DMA_ERROR_CODE) | 2177 | if (address == DMA_ERROR_CODE) |
2183 | goto out; | 2178 | goto out; |
@@ -2273,8 +2268,7 @@ static dma_addr_t map_page(struct device *dev, struct page *page, | |||
2273 | 2268 | ||
2274 | dma_mask = *dev->dma_mask; | 2269 | dma_mask = *dev->dma_mask; |
2275 | 2270 | ||
2276 | return __map_single(dev, domain->priv, paddr, size, dir, false, | 2271 | return __map_single(dev, domain->priv, paddr, size, dir, dma_mask); |
2277 | dma_mask); | ||
2278 | } | 2272 | } |
2279 | 2273 | ||
2280 | /* | 2274 | /* |
@@ -2317,8 +2311,7 @@ static int map_sg(struct device *dev, struct scatterlist *sglist, | |||
2317 | paddr = sg_phys(s); | 2311 | paddr = sg_phys(s); |
2318 | 2312 | ||
2319 | s->dma_address = __map_single(dev, domain->priv, | 2313 | s->dma_address = __map_single(dev, domain->priv, |
2320 | paddr, s->length, dir, false, | 2314 | paddr, s->length, dir, dma_mask); |
2321 | dma_mask); | ||
2322 | 2315 | ||
2323 | if (s->dma_address) { | 2316 | if (s->dma_address) { |
2324 | s->dma_length = s->length; | 2317 | s->dma_length = s->length; |
@@ -2402,7 +2395,7 @@ static void *alloc_coherent(struct device *dev, size_t size, | |||
2402 | dma_mask = *dev->dma_mask; | 2395 | dma_mask = *dev->dma_mask; |
2403 | 2396 | ||
2404 | *dma_addr = __map_single(dev, domain->priv, page_to_phys(page), | 2397 | *dma_addr = __map_single(dev, domain->priv, page_to_phys(page), |
2405 | size, DMA_BIDIRECTIONAL, true, dma_mask); | 2398 | size, DMA_BIDIRECTIONAL, dma_mask); |
2406 | 2399 | ||
2407 | if (*dma_addr == DMA_ERROR_CODE) | 2400 | if (*dma_addr == DMA_ERROR_CODE) |
2408 | goto out_free; | 2401 | goto out_free; |