From: Laurent Pinchart <laurent.pinch...@ideasonboard.com>

Test whether the pixel format changes in the mode set handler, and
perform a full mode set instead of a mode set base if it does.

Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
---
 drivers/gpu/drm/drm_crtc_helper.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/drm_crtc_helper.c 
b/drivers/gpu/drm/drm_crtc_helper.c
index 7b2d378..e974f93 100644
--- a/drivers/gpu/drm/drm_crtc_helper.c
+++ b/drivers/gpu/drm/drm_crtc_helper.c
@@ -648,6 +648,9 @@ int drm_crtc_helper_set_config(struct drm_mode_set *set)
                } else if (set->fb->bits_per_pixel !=
                           set->crtc->fb->bits_per_pixel) {
                        mode_changed = true;
+               } else if (set->fb->pixel_format !=
+                          set->crtc->fb->pixel_format) {
+                       mode_changed = true;
                } else
                        fb_changed = true;
        }
-- 
1.8.1.5

Reply via email to