public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
* [PATCH 1/4] drm/i915: preserve SSC if previously set v3
@ 2014-10-09 19:57 Jesse Barnes
  2014-10-09 19:57 ` [PATCH 2/4] drm/i915: preserve swizzle settings if necessary v4 Jesse Barnes
                   ` (3 more replies)
  0 siblings, 4 replies; 14+ messages in thread
From: Jesse Barnes @ 2014-10-09 19:57 UTC (permalink / raw)
  To: intel-gfx; +Cc: shuang.he

Some machines may have a broken VBT or no VBT at all, but we still want
to use SSC there.  So check for it and keep it enabled if we see it
already on.  Based on an earlier fix from Kristian.

v2: honor modparam if set too (Daniel)
    read out at init time and store for panel_use_ssc() use (Jesse)
v3: trust BIOS configuration over VBT like we do for DP (Jani)

Reported-by: Kristian Høgsberg <hoegsberg@gmail.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
---
 drivers/gpu/drm/i915/intel_display.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 1363a93..3823135 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -13333,6 +13333,7 @@ void intel_modeset_setup_hw_state(struct drm_device *dev,
 
 void intel_modeset_gem_init(struct drm_device *dev)
 {
+	struct drm_i915_private *dev_priv = dev->dev_private;
 	struct drm_crtc *c;
 	struct drm_i915_gem_object *obj;
 
@@ -13340,6 +13341,16 @@ void intel_modeset_gem_init(struct drm_device *dev)
 	intel_init_gt_powersave(dev);
 	mutex_unlock(&dev->struct_mutex);
 
+	/*
+	 * There may be no VBT; and if the BIOS enabled SSC we can
+	 * just keep using it to avoid unnecessary flicker.  Whereas if the
+	 * BIOS isn't using it, don't assume it will work even if the VBT
+	 * indicates as much.
+	 */
+	if (HAS_PCH_IBX(dev) || HAS_PCH_CPT(dev))
+		dev_priv->vbt.lvds_use_ssc = !!(I915_READ(PCH_DREF_CONTROL) &
+						DREF_SSC1_ENABLE);
+
 	intel_modeset_init_hw(dev);
 
 	intel_setup_overlay(dev);
-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

end of thread, other threads:[~2014-11-14  9:35 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-10-09 19:57 [PATCH 1/4] drm/i915: preserve SSC if previously set v3 Jesse Barnes
2014-10-09 19:57 ` [PATCH 2/4] drm/i915: preserve swizzle settings if necessary v4 Jesse Barnes
2014-10-21 14:49   ` Daniel Vetter
2014-10-30 21:25     ` Jesse Barnes
2014-10-09 19:57 ` [PATCH 3/4] drm: add drm_mode_same_size function Jesse Barnes
2014-10-21 14:49   ` Daniel Vetter
2014-10-22 15:40     ` Jesse Barnes
2014-10-09 19:57 ` [PATCH 4/4] drm/i915: use current mode if the size matches the preferred mode Jesse Barnes
2014-10-10 14:44   ` [PATCH 4/4] drm/i915: use current mode if the size shuang.he
2014-10-21 14:53   ` [PATCH 4/4] drm/i915: use current mode if the size matches the preferred mode Daniel Vetter
2014-10-22 15:42     ` Jesse Barnes
2014-10-23 10:23       ` Daniel Vetter
2014-11-13  8:42 ` [PATCH 1/4] drm/i915: preserve SSC if previously set v3 Jani Nikula
2014-11-14  9:36   ` Daniel Vetter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox