aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2010-09-05 11:55:25 -0400
committerDave Airlie <airlied@redhat.com>2010-09-06 18:05:38 -0400
commitc7ef35a960369bcad733b92868e4befe03ba9234 (patch)
tree98c53eab39f74d3259a6d0a55e82a2944b302c24 /drivers/gpu/drm
parente58f637bb96d5a0ae0919b9998b891d1ba7e47c9 (diff)
drm: Do not force 1024x768 modes on unknown connectors
Only fallback to a set of default modes on a connector iff that connector is known to be connected. The issue occurs that with limited hardware which cannot probe a connector and so reports the connector status as unknown will then attempt to retrieve the modes for it during drm_helper_probe_single_connector_modes(). Should that fail, the helper then generates a default set which fools the fb_helper and causes havoc with the console and beyond. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r--drivers/gpu/drm/drm_crtc_helper.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/gpu/drm/drm_crtc_helper.c b/drivers/gpu/drm/drm_crtc_helper.c
index 06fc0bccaff7..d2ab01e90a96 100644
--- a/drivers/gpu/drm/drm_crtc_helper.c
+++ b/drivers/gpu/drm/drm_crtc_helper.c
@@ -115,11 +115,10 @@ int drm_helper_probe_single_connector_modes(struct drm_connector *connector,
115 } 115 }
116 116
117 count = (*connector_funcs->get_modes)(connector); 117 count = (*connector_funcs->get_modes)(connector);
118 if (!count) { 118 if (count == 0 && connector->status == connector_status_connected)
119 count = drm_add_modes_noedid(connector, 1024, 768); 119 count = drm_add_modes_noedid(connector, 1024, 768);
120 if (!count) 120 if (count == 0)
121 return 0; 121 goto prune;
122 }
123 122
124 drm_mode_connector_list_update(connector); 123 drm_mode_connector_list_update(connector);
125 124