diff options
author | Ben Skeggs <bskeggs@redhat.com> | 2010-02-24 21:12:09 -0500 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2010-02-25 00:09:44 -0500 |
commit | b30083bdb990bcc2829fce83d871a86059ff4fc1 (patch) | |
tree | 44d6f2d48e11a31a51cadad4305b4d4666a0a440 /drivers/gpu/drm/nouveau | |
parent | c52e53fd38b195169c67a8cc9ed1af0125d2655c (diff) |
drm/nouveau: report unknown connector state if lid closed
This is in preference to disconnected. If there's no other outputs
connected this will cause LVDS to be programmed even with the lid
closed rather than having X fail to start because of no available
outputs.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau')
-rw-r--r-- | drivers/gpu/drm/nouveau/nouveau_connector.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_connector.c b/drivers/gpu/drm/nouveau/nouveau_connector.c index dee52c81b100..24327f468c4b 100644 --- a/drivers/gpu/drm/nouveau/nouveau_connector.c +++ b/drivers/gpu/drm/nouveau/nouveau_connector.c | |||
@@ -239,12 +239,14 @@ nouveau_connector_detect(struct drm_connector *connector) | |||
239 | if (nv_connector->dcb->type == DCB_CONNECTOR_LVDS) | 239 | if (nv_connector->dcb->type == DCB_CONNECTOR_LVDS) |
240 | nv_encoder = find_encoder_by_type(connector, OUTPUT_LVDS); | 240 | nv_encoder = find_encoder_by_type(connector, OUTPUT_LVDS); |
241 | if (nv_encoder && nv_connector->native_mode) { | 241 | if (nv_encoder && nv_connector->native_mode) { |
242 | unsigned status = connector_status_connected; | ||
243 | |||
242 | #ifdef CONFIG_ACPI | 244 | #ifdef CONFIG_ACPI |
243 | if (!nouveau_ignorelid && !acpi_lid_open()) | 245 | if (!nouveau_ignorelid && !acpi_lid_open()) |
244 | return connector_status_disconnected; | 246 | status = connector_status_unknown; |
245 | #endif | 247 | #endif |
246 | nouveau_connector_set_encoder(connector, nv_encoder); | 248 | nouveau_connector_set_encoder(connector, nv_encoder); |
247 | return connector_status_connected; | 249 | return status; |
248 | } | 250 | } |
249 | 251 | ||
250 | /* Cleanup the previous EDID block. */ | 252 | /* Cleanup the previous EDID block. */ |