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