[COMMON] g2d: add request the job and schedule
authorCho KyongHo <pullip.cho@samsung.com>
Sun, 23 Apr 2017 07:34:36 +0000 (16:34 +0900)
committerSeungchul Kim <sc377.kim@samsung.com>
Mon, 28 May 2018 05:27:12 +0000 (14:27 +0900)
commit96df4ea52944b66f9f7d2e9cc46e7f1657aa931f
tree9fbad4b3b9d14205e42dafe6741c83a84f1849da
parenta6e6adeee67e48eb7d8b7a487ca0d97a30a7c2ed
[COMMON] g2d: add request the job and schedule

This patch implements the life cycle of a task to G2D. A task has a
completion object to signal the user's request to let it know if its
requested task is completed.
All tasks are pushed to a workqueue that pushes tasks to H/W. It is
required for the tasks that have fences to wait because G2D driver
waits fences asynchronously Because the callback function called when
a fence is signaled is invoked under irq disabled. For the simplicity,
tasks without fences are also pushed to the workqueue because it does
not harm the responsibility to the users seriously.

Change-Id: I3c7ac1cc18212c3ea4b9a22d78a9236ee8491567
Signed-off-by: hyesoo.yu <hyesoo.yu@samsung.com>
Signed-off-by: Cho KyongHo <pullip.cho@samsung.com>
drivers/gpu/exynos/g2d/g2d.h
drivers/gpu/exynos/g2d/g2d_drv.c
drivers/gpu/exynos/g2d/g2d_task.c
drivers/gpu/exynos/g2d/g2d_task.h
drivers/gpu/exynos/g2d/g2d_uapi.h [new file with mode: 0644]