derekf pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=e53b0c262ad27118c3f3b8aa57d02a47a50f5aa8

commit e53b0c262ad27118c3f3b8aa57d02a47a50f5aa8
Author: Derek Foreman <[email protected]>
Date:   Wed Jul 12 16:30:07 2017 -0500

    ecore_evas_drm: Provide a last_tick_get callback
    
    Allow the drm engine to provide a tick timestamp for the previous vblank
    interval.
    
    ref T5462
---
 src/modules/ecore_evas/engines/drm/ecore_evas_drm.c | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c 
b/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
index 96d0c27656..dd46ce00d0 100644
--- a/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
+++ b/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
@@ -673,6 +673,19 @@ _drm_animator_unregister(Ecore_Evas *ee)
    edata->ticking = EINA_FALSE;
 }
 
+static double
+_drm_last_tick_get(Ecore_Evas *ee)
+{
+   Ecore_Evas_Engine_Drm_Data *edata;
+   long sec, usec;
+
+   edata = ee->engine.data;
+   if (!ecore_drm2_output_blanktime_get(edata->output, &sec, &usec))
+     return -1.0;
+
+   return sec + usec / 1000000.0;
+}
+
 static Ecore_Evas_Engine_Func _ecore_evas_drm_engine_func =
 {
    _drm_free,
@@ -760,7 +773,7 @@ static Ecore_Evas_Engine_Func _ecore_evas_drm_engine_func =
    NULL, //fn_callback_device_mouse_out_set
    NULL, //fn_pointer_device_xy_get
    NULL, //fn_prepare
-   NULL, //fn_last_tick_get
+   _drm_last_tick_get,
 };
 
 static Ecore_Evas *

-- 


Reply via email to