From: Ville Syrjälä Date: Thu, 28 Nov 2013 20:10:38 +0000 (+0200) Subject: drm/i915: Fix pipe CSC post offset calculation X-Git-Tag: v3.13-rc4~39^2~3^2~4 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=32cf0cb0294814cb1ee5d8727e9aac0e9aa80d2e;p=profile%2Fivi%2Fkernel-x86-ivi.git drm/i915: Fix pipe CSC post offset calculation We were miscalculating the pipe CSC post offset for the full->limited range conversion. The resulting post offset was double what it was supposed to be, which caused blacks to come out grey when using limited range output on HSW+. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=71769 Cc: stable@vger.kernel.org Tested-by: Lauri Mylläri Signed-off-by: Ville Syrjälä Signed-off-by: Daniel Vetter --- diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 0d93695..898bd98 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -5815,7 +5815,7 @@ static void intel_set_pipe_csc(struct drm_crtc *crtc) uint16_t postoff = 0; if (intel_crtc->config.limited_color_range) - postoff = (16 * (1 << 13) / 255) & 0x1fff; + postoff = (16 * (1 << 12) / 255) & 0x1fff; I915_WRITE(PIPE_CSC_POSTOFF_HI(pipe), postoff); I915_WRITE(PIPE_CSC_POSTOFF_ME(pipe), postoff);