commit: bd6946e87a98fea11907b2a47368e13044458a35
From: Daniel Vetter <[email protected]>
Date: Tue, 2 Apr 2013 21:30:34 +0200
Subject: drm/i915: Fix sdvo connector get_hw_state function

The active output is only the currently selected one, which does not
imply that it's actually enabled. Since we don't use the sdvo encoder
side dpms support, we need to check whether the chip-side sdvo port is
enabled instead.

v2: Fix up Bugzilla links.

v3: Simplify logic a bit (Chris).

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=60138
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=63031
Cc: Egbert Eich <[email protected]>
Cc: Chris Wilson <[email protected]>
Tested-by: Egbert Eich <[email protected]> (v2)
Cc: [email protected]
Signed-off-by: Daniel Vetter <[email protected]>
---
 drivers/gpu/drm/i915/intel_sdvo.c |    4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/gpu/drm/i915/intel_sdvo.c 
b/drivers/gpu/drm/i915/intel_sdvo.c
index 80f8680..298dc85 100644
--- a/drivers/gpu/drm/i915/intel_sdvo.c
+++ b/drivers/gpu/drm/i915/intel_sdvo.c
@@ -1231,8 +1231,12 @@ static bool intel_sdvo_connector_get_hw_state(struct 
intel_connector *connector)
        struct intel_sdvo_connector *intel_sdvo_connector =
                to_intel_sdvo_connector(&connector->base);
        struct intel_sdvo *intel_sdvo = intel_attached_sdvo(&connector->base);
+       struct drm_i915_private *dev_priv = 
intel_sdvo->base.base.dev->dev_private;
        u16 active_outputs;
 
+       if (!(I915_READ(intel_sdvo->sdvo_reg) & SDVO_ENABLE))
+               return false;
+
        intel_sdvo_get_active_outputs(intel_sdvo, &active_outputs);
 
        if (active_outputs & intel_sdvo_connector->output_flag)
-- 
1.7.10.4
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to