[PATCH v3] drm/i915: Honor SSC quirk table over the default, unless set by user

From: Michel Alexandre Salim
Date: Wed Nov 09 2011 - 08:18:45 EST


Commit 72bbe58cd9568c7766cc219a779ea68a02132797 makes the check against
the quirk table unreachable if i915_panel_use_ssc is automatically set
to a non-zero value. This patch changes the tests so that unless
i915_panel_use_ssc is set to exactly 1, the quirk table is checked.

This ensures that on known quirky hardware, SSC is disabled unless
specifically enabled by the user.

Signed-off-by: Michel Alexandre Salim <salimma@xxxxxxxxxxxxxxxxx>
---
drivers/gpu/drm/i915/intel_display.c | 7 +++++--
1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 981b1f1..aa7b0c8 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -4660,10 +4660,13 @@ static void intel_update_watermarks(struct drm_device *dev)

static inline bool intel_panel_use_ssc(struct drm_i915_private *dev_priv)
{
+ if (i915_panel_use_ssc == 1)
+ return true;
+ if (dev_priv->quirks & QUIRK_LVDS_SSC_DISABLE)
+ return false;
if (i915_panel_use_ssc >= 0)
return i915_panel_use_ssc != 0;
- return dev_priv->lvds_use_ssc
- && !(dev_priv->quirks & QUIRK_LVDS_SSC_DISABLE);
+ return dev_priv->lvds_use_ssc;
}

/**
--
1.7.7



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/