The small attached patch fixes a failure to fetch EDID for a newly connected
display, when the previously connected display did not provide EDID.
Overall I have found that hot-plugging displays with different resolutions at
run-time does not work too well with KMS, once a mode gets added to a
connector, it apparently never goes away, which means that replacing a display
with a smaller one at run-time is problematic. Is there any work in progress
to improve that?
Best regards
Helge
--
Dr.-Ing.
Helge Bahmann
Berater
Geschäftsbereich Hochsicherheit
secunet Security Networks AG
Ammonstraße 74
01067 Dresden, Germany
Fon: +49 201 54 54-3586
Fax: +49 201 54 54-1323
Email: helge.bahm...@secunet.com
Sitz: Kronprinzenstraße 30, 45128 Essen
Amtsgericht Essen HRB 13615
Vorstand: Dr. Rainer Baumgart, Thomas Koelzer, Thomas Pleines
Aufsichtsratsvorsitzender: Dr. Karsten Ottenberg
From 74ed4e8c738f00f2c5b353dc1097af4ccf0c23e5 Mon Sep 17 00:00:00 2001
From: Helge Bahmann helge.bahm...@secunet.com
Date: Tue, 8 Dec 2009 17:01:04 +0100
Subject: [PATCH] Always probe both GPIOA and GPIOD for DDC on VGA connector
When attaching a display that does not provide EDID (many
popular KVM switches), DDC probing on GPIOA fails and the driver
switches to GPIOD (which also fails). The driver does however
never switch back -- when attaching a proper display later,
probing will fail to fetch the EDID which would now be available.
Fix this by reverting to GPIOA after attempting GPIOD the probing
cycle.
---
drivers/gpu/drm/i915/intel_crt.c |3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_crt.c b/drivers/gpu/drm/i915/intel_crt.c
index 590f81c..8e50dac 100644
--- a/drivers/gpu/drm/i915/intel_crt.c
+++ b/drivers/gpu/drm/i915/intel_crt.c
@@ -455,7 +455,8 @@ static int intel_crt_get_modes(struct drm_connector *connector)
}
/* Try to get modes by GPIOD port */
ret = intel_ddc_get_modes(intel_output);
- intel_i2c_destroy(ddcbus);
+ intel_i2c_destroy(intel_output-ddc_bus);
+ intel_output-ddc_bus = ddcbus;
end:
return ret;
--
1.5.6.5
--
Return on Information:
Google Enterprise Search pays you back
Get the facts.
http://p.sf.net/sfu/google-dev2dev
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel