From 088c9675efc791d3fb2d6c79d24fec53f6fcfabd Mon Sep 17 00:00:00 2001 From: Derek Foreman Date: Thu, 8 Sep 2016 13:21:32 -0500 Subject: [PATCH] ee_gl_drm: Stop calling fb_dirty So yeah, fb_dirty is for marking dirty regions when rendering directly into the front buffer attached for scanout on a manually updated display. Absolutely none of those things apply here, so let's stop doing it. --- src/modules/evas/engines/gl_drm/evas_outbuf.c | 26 ++------------------------ 1 file changed, 2 insertions(+), 24 deletions(-) diff --git a/src/modules/evas/engines/gl_drm/evas_outbuf.c b/src/modules/evas/engines/gl_drm/evas_outbuf.c index 0737c57..fb16c29 100644 --- a/src/modules/evas/engines/gl_drm/evas_outbuf.c +++ b/src/modules/evas/engines/gl_drm/evas_outbuf.c @@ -77,7 +77,7 @@ _evas_outbuf_fb_get(Outbuf *ob, struct gbm_bo *bo) } static void -_evas_outbuf_buffer_swap(Outbuf *ob, Eina_Rectangle *rects, unsigned int count) +_evas_outbuf_buffer_swap(Outbuf *ob) { Ecore_Drm2_Fb *fb; @@ -101,7 +101,6 @@ _evas_outbuf_buffer_swap(Outbuf *ob, Eina_Rectangle *rects, unsigned int count) fb = _evas_outbuf_fb_get(ob, ob->priv.bo[0]); if (fb) { - ecore_drm2_fb_dirty(fb, rects, count); ecore_drm2_fb_flip(fb, ob->priv.output); /* Ecore_Drm2_Plane *plane; */ @@ -763,28 +762,7 @@ evas_outbuf_flush(Outbuf *ob, Tilebuf_Rect *rects, Evas_Render_Mode render_mode) if (ob->info->callback.post_swap) ob->info->callback.post_swap(ob->info->callback.data, ob->evas); - if (rects) - { - Tilebuf_Rect *r; - Eina_Rectangle *res; - int num, i = 0; - - num = eina_inlist_count(EINA_INLIST_GET(rects)); - res = alloca(sizeof(Eina_Rectangle) * num); - EINA_INLIST_FOREACH(EINA_INLIST_GET(rects), r) - { - res[i].x = r->x; - res[i].y = r->y; - res[i].w = r->w; - res[i].h = r->h; - i++; - } - - _evas_outbuf_buffer_swap(ob, res, num); - } - else - //Flush GL Surface data to Framebuffer - _evas_outbuf_buffer_swap(ob, NULL, 0); + _evas_outbuf_buffer_swap(ob); end: //TODO: Need render unlock after drm page flip? -- 2.7.4