aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/exynos/exynos_drm_fb.c
diff options
context:
space:
mode:
authorGustavo Padovan <gustavo.padovan@collabora.co.uk>2015-06-01 11:04:48 -0400
committerInki Dae <daeinki@gmail.com>2015-06-19 11:32:49 -0400
commit9d5ab6a0ff7bb9565e8e1bcce5648964b6434470 (patch)
tree181628385329a710653c190cc5a2986016db9f9f /drivers/gpu/drm/exynos/exynos_drm_fb.c
parent47a7deff3606c4455f0abf0cdb1a9c89ba722a6b (diff)
drm/exynos: atomic phase 3: convert page flips
PageFlips now use the atomic helper to work through the atomic modesetting API. Async page flips are not supported yet. v2: Add .atomic_begin() step to handle the vblank part we removed from exynos page_flip code. Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk> Reviewed-by: Joonyoung Shim <jy0922.shim@samsung.com> Tested-by: Tobias Jakobi <tjakobi@math.uni-bielefeld.de> Signed-off-by: Inki Dae <inki.dae@samsung.com>
Diffstat (limited to 'drivers/gpu/drm/exynos/exynos_drm_fb.c')
-rw-r--r--drivers/gpu/drm/exynos/exynos_drm_fb.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_drm_fb.c b/drivers/gpu/drm/exynos/exynos_drm_fb.c
index 19c06429fc45..05d229c1629a 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_fb.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_fb.c
@@ -266,11 +266,18 @@ static void exynos_drm_output_poll_changed(struct drm_device *dev)
266 exynos_drm_fbdev_init(dev); 266 exynos_drm_fbdev_init(dev);
267} 267}
268 268
269static int exynos_atomic_commit(struct drm_device *dev,
270 struct drm_atomic_state *state,
271 bool async)
272{
273 return drm_atomic_helper_commit(dev, state, false);
274}
275
269static const struct drm_mode_config_funcs exynos_drm_mode_config_funcs = { 276static const struct drm_mode_config_funcs exynos_drm_mode_config_funcs = {
270 .fb_create = exynos_user_fb_create, 277 .fb_create = exynos_user_fb_create,
271 .output_poll_changed = exynos_drm_output_poll_changed, 278 .output_poll_changed = exynos_drm_output_poll_changed,
272 .atomic_check = drm_atomic_helper_check, 279 .atomic_check = drm_atomic_helper_check,
273 .atomic_commit = drm_atomic_helper_commit, 280 .atomic_commit = exynos_atomic_commit,
274}; 281};
275 282
276void exynos_drm_mode_config_init(struct drm_device *dev) 283void exynos_drm_mode_config_init(struct drm_device *dev)