[COMMON] g2d: add support for dma-buf fence
authorCho KyongHo <pullip.cho@samsung.com>
Mon, 1 May 2017 11:13:54 +0000 (20:13 +0900)
committerSeungchul Kim <sc377.kim@samsung.com>
Mon, 28 May 2018 05:27:16 +0000 (14:27 +0900)
commitfcdda8fa1c183e8efce5fd46f900116967080601
tree16d1b809aca229a2e56f9fed665b0a00ef378da4
parent8ec099dc665b05b1e8d1b32b0b8253613de8002e
[COMMON] g2d: add support for dma-buf fence

G2D driver needs to wait for the fences to be signaled to schedlue a
task if they are attached to layers of that task. Users may needs G2D
driver to deliver fences to know when the G2D H/W completes processing
on a job.
G2D driver impelements such buffer synchronization with dma-buf fence
and exports the fence to sync_file to give the fences for the job
completion, which are called release fences. The driver does not
generate a new fence for every single buffers that needs release
fences. Instead, it generates a single release fence and exports to
multiple sync_files as many as the user required. It reduces the use
of resources and simplifies the fence management in the driver.

Change-Id: I31f2c5156b29d7a1bb8096b4c34811cbc75c679a
Signed-off-by: Cho KyongHo <pullip.cho@samsung.com>
drivers/gpu/exynos/g2d/Kconfig
drivers/gpu/exynos/g2d/Makefile
drivers/gpu/exynos/g2d/g2d.h
drivers/gpu/exynos/g2d/g2d_drv.c
drivers/gpu/exynos/g2d/g2d_fence.c [new file with mode: 0644]
drivers/gpu/exynos/g2d/g2d_fence.h [new file with mode: 0644]
drivers/gpu/exynos/g2d/g2d_task.c
drivers/gpu/exynos/g2d/g2d_task.h
drivers/gpu/exynos/g2d/g2d_uapi_process.c
drivers/gpu/exynos/g2d/g2d_uapi_process.h