From: Jon Medhurst (Tixy) <tixy@linaro.org>
Date: Fri, 17 Jul 2015 11:01:29 +0000 (+0100)
Subject: staging: ion: ion_cma_heap: Don't directly use dma_common_get_sgtable
X-Git-Tag: firefly_0821_release~176^2~1221^2~504
X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=56fa2ece881348d314800b858581f2ae950f8e20;p=firefly-linux-kernel-4.4.55.git

staging: ion: ion_cma_heap: Don't directly use dma_common_get_sgtable

Use dma_get_sgtable rather than dma_common_get_sgtable so a device's
dma_ops aren't bypassed. This is essential in situations where a device
uses an IOMMU and the physical memory is not contiguous (as the common
function assumes).

Signed-off-by: Jon Medhurst <tixy@linaro.org>
Reviewed-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---

diff --git a/drivers/staging/android/ion/ion_cma_heap.c b/drivers/staging/android/ion/ion_cma_heap.c
index f4211f1be488..86b91fd53852 100644
--- a/drivers/staging/android/ion/ion_cma_heap.c
+++ b/drivers/staging/android/ion/ion_cma_heap.c
@@ -73,8 +73,7 @@ static int ion_cma_allocate(struct ion_heap *heap, struct ion_buffer *buffer,
 	if (!info->table)
 		goto free_mem;
 
-	if (dma_common_get_sgtable
-	    (dev, info->table, info->cpu_addr, info->handle, len))
+	if (dma_get_sgtable(dev, info->table, info->cpu_addr, info->handle, len))
 		goto free_table;
 	/* keep this for memory release */
 	buffer->priv_virt = info;