derekf pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=d8c9f8ef17b0e52ec6e7d07ac33b5a54777d0de7
commit d8c9f8ef17b0e52ec6e7d07ac33b5a54777d0de7 Author: Derek Foreman <der...@osg.samsung.com> Date: Fri Sep 2 12:17:01 2016 -0500 ecore_drm2: Add busy status to ecore_drm2_fb We've been tracking this in the outbuf code, but that logic is going to be moved into ecore_evas_drm to use the new ticking paradigm. --- src/lib/ecore_drm2/Ecore_Drm2.h | 23 +++++++++++++++++++++++ src/lib/ecore_drm2/ecore_drm2_fb.c | 12 ++++++++++++ src/lib/ecore_drm2/ecore_drm2_private.h | 1 + 3 files changed, 36 insertions(+) diff --git a/src/lib/ecore_drm2/Ecore_Drm2.h b/src/lib/ecore_drm2/Ecore_Drm2.h index 3de7999..ce9340f 100644 --- a/src/lib/ecore_drm2/Ecore_Drm2.h +++ b/src/lib/ecore_drm2/Ecore_Drm2.h @@ -779,6 +779,29 @@ EAPI void ecore_drm2_fb_dirty(Ecore_Drm2_Fb *fb, Eina_Rectangle *rects, unsigned */ EAPI int ecore_drm2_fb_flip(Ecore_Drm2_Fb *fb, Ecore_Drm2_Output *output, void *data); +/** + * Return the Ecore_Drm2_Fb's busy status + * + * @param fb + * + * @return The busy status + * + * @ingroup Ecore_Drm2_Fb_Group + * @since 1.19 + */ +EAPI Eina_Bool ecore_drm2_fb_busy_get(Ecore_Drm2_Fb *fb); + +/** + * Change the Ecore_Drm2_Fb's busy status + * + * @param fb + * @param busy The new busy status + * + * @ingroup Ecore_Drm2_Fb_Group + * @since 1.19 + */ +EAPI void ecore_drm2_fb_busy_set(Ecore_Drm2_Fb *fb, Eina_Bool busy); + # endif #endif diff --git a/src/lib/ecore_drm2/ecore_drm2_fb.c b/src/lib/ecore_drm2/ecore_drm2_fb.c index f91a477..6ac0dde 100644 --- a/src/lib/ecore_drm2/ecore_drm2_fb.c +++ b/src/lib/ecore_drm2/ecore_drm2_fb.c @@ -272,3 +272,15 @@ ecore_drm2_fb_flip(Ecore_Drm2_Fb *fb, Ecore_Drm2_Output *output, void *data) output->current = fb; return 0; } + +EAPI Eina_Bool +ecore_drm2_fb_busy_get(Ecore_Drm2_Fb *fb) +{ + return fb->busy; +} + +EAPI void +ecore_drm2_fb_busy_set(Ecore_Drm2_Fb *fb, Eina_Bool busy) +{ + fb->busy = busy; +} diff --git a/src/lib/ecore_drm2/ecore_drm2_private.h b/src/lib/ecore_drm2/ecore_drm2_private.h index e3a9c90..05f7102 100644 --- a/src/lib/ecore_drm2/ecore_drm2_private.h +++ b/src/lib/ecore_drm2/ecore_drm2_private.h @@ -94,6 +94,7 @@ struct _Ecore_Drm2_Fb uint32_t format; Eina_Bool gbm : 1; + Eina_Bool busy : 1; void *mmap; }; --