diff options
author | Derek Foreman <derekf@osg.samsung.com> | 2016-09-02 12:17:01 -0500 |
---|---|---|
committer | Derek Foreman <derekf@osg.samsung.com> | 2016-09-07 22:37:12 -0500 |
commit | ac32901aef5f9dc7fb72ec6b4012558d07623f13 (patch) | |
tree | 4ebd54c862d33b4b05f96ee09a337480e438af54 | |
parent | 8cc6e1373a296c558c181eec36ff213845831ece (diff) | |
download | efl-ac32901aef5f9dc7fb72ec6b4012558d07623f13.tar.gz |
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.
-rw-r--r-- | src/lib/ecore_drm2/Ecore_Drm2.h | 23 | ||||
-rw-r--r-- | src/lib/ecore_drm2/ecore_drm2_fb.c | 12 | ||||
-rw-r--r-- | src/lib/ecore_drm2/ecore_drm2_private.h | 1 |
3 files changed, 36 insertions, 0 deletions
diff --git a/src/lib/ecore_drm2/Ecore_Drm2.h b/src/lib/ecore_drm2/Ecore_Drm2.h index 3de799933b..ce9340f901 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 f91a477182..6ac0dde2e8 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 e3a9c90850..05f7102418 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; }; |