summaryrefslogtreecommitdiff
path: root/src/lib/ecore_drm2
diff options
context:
space:
mode:
authorDerek Foreman <derekf@osg.samsung.com>2017-06-16 16:32:45 -0500
committerDerek Foreman <derekf@osg.samsung.com>2017-06-23 08:15:41 -0500
commit1552f85edeb7bd137d0a2215df3f03e8572483aa (patch)
tree97d1497ee1661758c0b37648f020b9a4d3a64ab1 /src/lib/ecore_drm2
parent5f2d4e75ab9d778ca6deeae7eabe3f406a4bdb3c (diff)
ecore_drm2: Add scanout status callbacks
This generates callbacks when a fb becomes scanned out on a hardware plane or when it no longer is.
Diffstat (limited to 'src/lib/ecore_drm2')
-rw-r--r--src/lib/ecore_drm2/ecore_drm2_fb.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/lib/ecore_drm2/ecore_drm2_fb.c b/src/lib/ecore_drm2/ecore_drm2_fb.c
index 8977528937..d601803f83 100644
--- a/src/lib/ecore_drm2/ecore_drm2_fb.c
+++ b/src/lib/ecore_drm2/ecore_drm2_fb.c
@@ -299,6 +299,10 @@ ecore_drm2_fb_flip_complete(Ecore_Drm2_Output *output)
299 fb->scanout_count++; 299 fb->scanout_count++;
300 300
301 plane->scanout = EINA_TRUE; 301 plane->scanout = EINA_TRUE;
302 if (fb->status_handler && (fb->scanout_count == 1))
303 fb->status_handler(fb,
304 ECORE_DRM2_FB_STATUS_SCANOUT_ON,
305 fb->status_data);
302 continue; 306 continue;
303 } 307 }
304 plane_scanout = plane->scanout; 308 plane_scanout = plane->scanout;
@@ -307,6 +311,10 @@ ecore_drm2_fb_flip_complete(Ecore_Drm2_Output *output)
307 if (!plane_scanout) continue; 311 if (!plane_scanout) continue;
308 312
309 fb->scanout_count--; 313 fb->scanout_count--;
314 if (fb->status_handler && (fb->scanout_count == 0))
315 fb->status_handler(fb,
316 ECORE_DRM2_FB_STATUS_SCANOUT_OFF,
317 fb->status_data);
310 } 318 }
311 } 319 }
312 320