devilhorns pushed a commit to branch master.

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

commit 10474986cc691a6bc9fa39250a73a71906a94000
Author: Christopher Michael <cp.mich...@samsung.com>
Date:   Fri Mar 22 12:41:08 2019 -0400

    ecore-drm2: Update plane state values based on FB
    
    Summary:
    When we are trying to set an FB onto a plane, we need to update the
    plane state values to reflect any changes in the FB. Failure to do
    this will result in Atomic Commit failures as the plane state values
    will not match what the FB is.
    
    ref T7690
    
    @fix
    
    Depends on D8110
    
    Reviewers: raster, cedric, zmike
    
    Reviewed By: cedric
    
    Subscribers: cedric
    
    Tags: #efl, #do_not_merge
    
    Maniphest Tasks: T7690
    
    Differential Revision: https://phab.enlightenment.org/D8111
---
 src/lib/ecore_drm2/ecore_drm2_plane.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/lib/ecore_drm2/ecore_drm2_plane.c 
b/src/lib/ecore_drm2/ecore_drm2_plane.c
index b9601cc347..6dfa0bcb85 100644
--- a/src/lib/ecore_drm2/ecore_drm2_plane.c
+++ b/src/lib/ecore_drm2/ecore_drm2_plane.c
@@ -181,6 +181,13 @@ ecore_drm2_plane_fb_set(Ecore_Drm2_Plane *plane, 
Ecore_Drm2_Fb *fb)
 
    fallback_id = plane->state->fid.value;
    plane->state->fid.value = fb->id;
+
+   /* Update plane state based on fb */
+   plane->state->sw.value = fb->w << 16;
+   plane->state->sh.value = fb->h << 16;
+   plane->state->cw.value = fb->w;
+   plane->state->ch.value = fb->h;
+
    if (_fb_atomic_flip_test(plane->output))
      {
         _ecore_drm2_fb_ref(fb);

-- 


Reply via email to