android: ion: add dmabuf cpu access ops for exynos
authorCho KyongHo <pullip.cho@samsung.com>
Fri, 2 Mar 2018 14:03:48 +0000 (23:03 +0900)
committerSangwook Ju <sw.ju@samsung.com>
Mon, 14 May 2018 10:45:24 +0000 (19:45 +0900)
commit6f51c5003d3dab4291d6b7276d98dcb99ac00024
tree37413232af2027d51d1bcc559764fe8f4a9f07ff
parent42da552e21f92f1b055b3137d7a5450c605976b4
android: ion: add dmabuf cpu access ops for exynos

.begin_cpu_access and .end_cpu_access of dmabuf ops provided by ION
needs scatter-gather list because they rely on dma-mapping api.

After 'commit 8dbbf7b ("android: ion: do not map in dma_map_attach()
for Exynos")', ion_dma_buf_begin_cpu_access() and
ion_dma_buf_end_cpu_access() loose scatter-gather list stored in
the dma-buf attachment that is eliminated by the above commit.

Instead, dma-mapping api can be used with ion_buffer.sg_table and the
miscdevice of ion_device because they are initialized at buffer
allocation and ION initialization, respectively since 'commit 10a41c2
("android: ion: add fixups to ion exynos extension")'.

Uncached buffers are not required to maintain CPU caches for CPU
accesses because dma_buf_kmap() returns the kernel address with the
cacheability attribute of the buffer.

Change-Id: I6656f22b696ae96de9f2766751970b25f17572f6
Signed-off-by: Cho KyongHo <pullip.cho@samsung.com>
drivers/staging/android/ion/ion.c