Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds
[pandora-kernel.git] / drivers / gpu / drm / nouveau / nouveau_connector.c
index 14afe1e..266b0ff 100644 (file)
@@ -241,7 +241,8 @@ nouveau_connector_detect(struct drm_connector *connector)
        if (nv_encoder && nv_connector->native_mode) {
                unsigned status = connector_status_connected;
 
-#ifdef CONFIG_ACPI
+#if defined(CONFIG_ACPI_BUTTON) || \
+       (defined(CONFIG_ACPI_BUTTON_MODULE) && defined(MODULE))
                if (!nouveau_ignorelid && !acpi_lid_open())
                        status = connector_status_unknown;
 #endif
@@ -843,6 +844,7 @@ nouveau_connector_create(struct drm_device *dev,
 
        switch (dcb->type) {
        case DCB_CONNECTOR_VGA:
+               connector->polled = DRM_CONNECTOR_POLL_CONNECT;
                if (dev_priv->card_type >= NV_50) {
                        drm_connector_attach_property(connector,
                                        dev->mode_config.scaling_mode_property,
@@ -854,6 +856,17 @@ nouveau_connector_create(struct drm_device *dev,
        case DCB_CONNECTOR_TV_3:
                nv_connector->scaling_mode = DRM_MODE_SCALE_NONE;
                break;
+       case DCB_CONNECTOR_DP:
+       case DCB_CONNECTOR_eDP:
+       case DCB_CONNECTOR_HDMI_0:
+       case DCB_CONNECTOR_HDMI_1:
+       case DCB_CONNECTOR_DVI_I:
+       case DCB_CONNECTOR_DVI_D:
+               if (dev_priv->card_type >= NV_50)
+                       connector->polled = DRM_CONNECTOR_POLL_HPD;
+               else
+                       connector->polled = DRM_CONNECTOR_POLL_CONNECT;
+               /* fall-through */
        default:
                nv_connector->scaling_mode = DRM_MODE_SCALE_FULLSCREEN;