All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/i915: Initialize drm_crtc gamma ramp
@ 2013-06-26 21:44 Chris Wilson
  2013-06-26 22:04 ` Chris Wilson
  0 siblings, 1 reply; 4+ messages in thread
From: Chris Wilson @ 2013-06-26 21:44 UTC (permalink / raw)
  To: intel-gfx; +Cc: Chris Wilson, stable

As we initialize our own gamma LUT to sane values during initialisation,
we should also update the user visible gamma ramp to match our settings.
And before touching the storage for the user visible gamma ramp, we also
need to check for an allocation failure.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: stable@vger.kernel.org
---
 drivers/gpu/drm/i915/intel_display.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 5988bda..041e07a 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -8983,11 +8983,18 @@ static void intel_crtc_init(struct drm_device *dev, int pipe)
 
 	drm_crtc_init(dev, &intel_crtc->base, &intel_crtc_funcs);
 
-	drm_mode_crtc_set_gamma_size(&intel_crtc->base, 256);
+	if (!drm_mode_crtc_set_gamma_size(&intel_crtc->base, 256)) {
+		drm_crtc_cleanup(&intel_crtc->base);
+		kfree(intel_crtc);
+		return;
+	}
 	for (i = 0; i < 256; i++) {
 		intel_crtc->lut_r[i] = i;
 		intel_crtc->lut_g[i] = i;
 		intel_crtc->lut_b[i] = i;
+		intel_crtc->base.gamma_store[i + 0*256] = i << 8;
+		intel_crtc->base.gamma_store[i + 1*256] = i << 8;
+		intel_crtc->base.gamma_store[i + 2*256] = i << 8;
 	}
 
 	/* Swap pipes & planes for FBC on pre-965 */
-- 
1.8.3.1

^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2013-06-28 17:41 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-06-26 21:44 [PATCH] drm/i915: Initialize drm_crtc gamma ramp Chris Wilson
2013-06-26 22:04 ` Chris Wilson
2013-06-28  8:35   ` [Intel-gfx] " Ville Syrjälä
2013-06-28 17:41     ` Chris Wilson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.