]> Pileus Git - ~andy/linux/blobdiff - drivers/gpu/drm/i915/intel_lvds.c
Merge tag 'drm-intel-next-2013-06-18' of git://people.freedesktop.org/~danvet/drm...
[~andy/linux] / drivers / gpu / drm / i915 / intel_lvds.c
index 0ef8b4dc835f856f56412164c42e7c3647cc1390..2abb2d3c727b8044fc3eef6a6929769d8d4a0cd7 100644 (file)
@@ -264,9 +264,6 @@ static bool intel_lvds_compute_config(struct intel_encoder *intel_encoder,
                return false;
        }
 
-       if (intel_encoder_check_is_cloned(&lvds_encoder->base))
-               return false;
-
        if ((I915_READ(lvds_encoder->reg) & LVDS_A3_POWER_MASK) ==
            LVDS_A3_POWER_UP)
                lvds_bpp = 8*3;
@@ -880,7 +877,7 @@ static bool intel_lvds_supported(struct drm_device *dev)
  * Create the connector, register the LVDS DDC bus, and try to figure out what
  * modes we can display on the LVDS panel (if present).
  */
-bool intel_lvds_init(struct drm_device *dev)
+void intel_lvds_init(struct drm_device *dev)
 {
        struct drm_i915_private *dev_priv = dev->dev_private;
        struct intel_lvds_encoder *lvds_encoder;
@@ -898,35 +895,35 @@ bool intel_lvds_init(struct drm_device *dev)
        u8 pin;
 
        if (!intel_lvds_supported(dev))
-               return false;
+               return;
 
        /* Skip init on machines we know falsely report LVDS */
        if (dmi_check_system(intel_no_lvds))
-               return false;
+               return;
 
        pin = GMBUS_PORT_PANEL;
        if (!lvds_is_present_in_vbt(dev, &pin)) {
                DRM_DEBUG_KMS("LVDS is not present in VBT\n");
-               return false;
+               return;
        }
 
        if (HAS_PCH_SPLIT(dev)) {
                if ((I915_READ(PCH_LVDS) & LVDS_DETECTED) == 0)
-                       return false;
+                       return;
                if (dev_priv->vbt.edp_support) {
                        DRM_DEBUG_KMS("disable LVDS for eDP support\n");
-                       return false;
+                       return;
                }
        }
 
        lvds_encoder = kzalloc(sizeof(struct intel_lvds_encoder), GFP_KERNEL);
        if (!lvds_encoder)
-               return false;
+               return;
 
        lvds_connector = kzalloc(sizeof(struct intel_lvds_connector), GFP_KERNEL);
        if (!lvds_connector) {
                kfree(lvds_encoder);
-               return false;
+               return;
        }
 
        lvds_encoder->attached_connector = lvds_connector;
@@ -1097,7 +1094,7 @@ out:
        intel_panel_init(&intel_connector->panel, fixed_mode);
        intel_panel_setup_backlight(connector);
 
-       return true;
+       return;
 
 failed:
        DRM_DEBUG_KMS("No LVDS modes found, disabling.\n");
@@ -1107,5 +1104,5 @@ failed:
                drm_mode_destroy(dev, fixed_mode);
        kfree(lvds_encoder);
        kfree(lvds_connector);
-       return false;
+       return;
 }