Add some debug info related with output/crtc. --- drivers/gpu/drm/drm_crtc_helper.c | 7 +++++++ drivers/gpu/drm/i915/intel_sdvo.c | 2 ++ 2 files changed, 9 insertions(+) Index: linux-2.6/drivers/gpu/drm/i915/intel_sdvo.c =================================================================== --- linux-2.6.orig/drivers/gpu/drm/i915/intel_sdvo.c 2010-02-06 17:22:38.000000000 +0800 +++ linux-2.6/drivers/gpu/drm/i915/intel_sdvo.c 2010-02-06 17:52:46.000000000 +0800 @@ -2768,6 +2768,8 @@ intel_sdvo_get_input_pixel_clock_range(intel_output, &sdvo_priv->pixel_clock_min, &sdvo_priv->pixel_clock_max); + printk("possible CRTC mask 0x%x for SDVO%c\n", + intel_output->crtc_mask, (output_device == SDVOB) ? 'B' : 'C'); DRM_DEBUG_KMS("%s device VID/DID: %02X:%02X.%02X, " Index: linux-2.6/drivers/gpu/drm/drm_crtc_helper.c =================================================================== --- linux-2.6.orig/drivers/gpu/drm/drm_crtc_helper.c 2010-02-06 17:22:38.000000000 +0800 +++ linux-2.6/drivers/gpu/drm/drm_crtc_helper.c 2010-02-06 17:41:40.000000000 +0800 @@ -537,6 +537,8 @@ struct drm_crtc *crtc = crtcs[i]; if (connector->encoder == NULL) { + printk("No encoder is found for %s\n", + drm_get_connector_name(connector)); i++; continue; } @@ -544,9 +546,14 @@ if (mode && crtc) { DRM_DEBUG_KMS("desired mode %s set on crtc %d\n", mode->name, crtc->base.id); + printk("possible crtc mask %x for %s\n", + connector->encoder->possible_crtcs, + drm_get_connector_name(connector)); crtc->desired_mode = mode; connector->encoder->crtc = crtc; } else { + printk("No mode or crtc is found for %s\n", + drm_get_connector_name(connector)); connector->encoder->crtc = NULL; connector->encoder = NULL; }