diff mbox

[2/5] drm/i915/crt: Explicitly return false if connected to a digital monitor

Message ID 1301995458-2699-3-git-send-email-chris@chris-wilson.co.uk (mailing list archive)
State New, archived
Headers show

Commit Message

Chris Wilson April 5, 2011, 9:24 a.m. UTC
Rather than proceed on and return false by default, return the result
from detecting a connection but to a digital panel and include some
debug output as to why.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Keith Packard <keithp@keithp.com>
---
 drivers/gpu/drm/i915/intel_crt.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

Comments

Keith Packard April 5, 2011, 8:57 p.m. UTC | #1
On Tue,  5 Apr 2011 10:24:15 +0100, Chris Wilson <chris@chris-wilson.co.uk> wrote:

> Rather than proceed on and return false by default, return the result
> from detecting a connection but to a digital panel and include some
> debug output as to why.

This comment does not match the patch anymore; there is no new return
point, just an added comment (which doesn't even need to be in an else
block now).
> +		} else {
> +			DRM_DEBUG_KMS("CRT not detected via DDC:0x50 [EDID reports a digital panel]\n");
diff mbox

Patch

diff --git a/drivers/gpu/drm/i915/intel_crt.c b/drivers/gpu/drm/i915/intel_crt.c
index 8342259..49ce713 100644
--- a/drivers/gpu/drm/i915/intel_crt.c
+++ b/drivers/gpu/drm/i915/intel_crt.c
@@ -308,6 +308,8 @@  static bool intel_crt_detect_ddc(struct drm_connector *connector)
 		 * This may be a DVI-I connector with a shared DDC
 		 * link between analog and digital outputs, so we
 		 * have to check the EDID input spec of the attached device.
+		 *
+		 * On the other hand, what should we do if it is a broken EDID?
 		 */
 		if (edid != NULL) {
 			is_digital = edid->input & DRM_EDID_INPUT_DIGITAL;
@@ -318,6 +320,8 @@  static bool intel_crt_detect_ddc(struct drm_connector *connector)
 		if (!is_digital) {
 			DRM_DEBUG_KMS("CRT detected via DDC:0x50 [EDID]\n");
 			return true;
+		} else {
+			DRM_DEBUG_KMS("CRT not detected via DDC:0x50 [EDID reports a digital panel]\n");
 		}
 	}