aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_display.c
diff options
context:
space:
mode:
authorVille Syrjälä <ville.syrjala@linux.intel.com>2018-11-20 08:54:49 -0500
committerVille Syrjälä <ville.syrjala@linux.intel.com>2018-11-21 07:01:54 -0500
commitfa6af5145b4e87a30a530be0d80734a9dd40da77 (patch)
tree7a325020b28a2b86cd4a7586ac9298228989433e /drivers/gpu/drm/i915/intel_display.c
parent8f19b401a6fc6d1262c5bfbfc18146c5e8ecb491 (diff)
drm/i915: Force a LUT update in intel_initial_commit()
If we force a plane update to fix up our half populated plane state we'll also force on the pipe gamma for the plane (since we always enable pipe gamma currently). If the BIOS hasn't programmed a sensible LUT into the hardware this will cause the image to become corrupted. Typical symptoms are a purple/yellow/etc. flash when the driver loads. To avoid this let's program something sensible into the LUT when we do the plane update. In the future I plan to add proper plane gamma enable readout so this is just a temporary measure. Cc: Hans de Goede <hdegoede@redhat.com> Fixes: 516a49cc1946 ("drm/i915: Fix assert_plane() warning on bootup with external display") Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20181120135450.3634-1-ville.syrjala@linux.intel.com Tested-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_display.c')
-rw-r--r--drivers/gpu/drm/i915/intel_display.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 132e978227fb..60c1e54285c1 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -15011,6 +15011,14 @@ retry:
15011 ret = drm_atomic_add_affected_planes(state, crtc); 15011 ret = drm_atomic_add_affected_planes(state, crtc);
15012 if (ret) 15012 if (ret)
15013 goto out; 15013 goto out;
15014
15015 /*
15016 * FIXME hack to force a LUT update to avoid the
15017 * plane update forcing the pipe gamma on without
15018 * having a proper LUT loaded. Remove once we
15019 * have readout for pipe gamma enable.
15020 */
15021 crtc_state->color_mgmt_changed = true;
15014 } 15022 }
15015 } 15023 }
15016 15024