diff options
Diffstat (limited to 'drivers/gpu/drm/i915/intel_lvds.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_lvds.c | 34 |
1 files changed, 2 insertions, 32 deletions
diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c index 1a311ad0111..a562bd2648c 100644 --- a/drivers/gpu/drm/i915/intel_lvds.c +++ b/drivers/gpu/drm/i915/intel_lvds.c | |||
@@ -473,19 +473,13 @@ static enum drm_connector_status | |||
473 | intel_lvds_detect(struct drm_connector *connector, bool force) | 473 | intel_lvds_detect(struct drm_connector *connector, bool force) |
474 | { | 474 | { |
475 | struct drm_device *dev = connector->dev; | 475 | struct drm_device *dev = connector->dev; |
476 | enum drm_connector_status status = connector_status_connected; | 476 | enum drm_connector_status status; |
477 | 477 | ||
478 | status = intel_panel_detect(dev); | 478 | status = intel_panel_detect(dev); |
479 | if (status != connector_status_unknown) | 479 | if (status != connector_status_unknown) |
480 | return status; | 480 | return status; |
481 | 481 | ||
482 | /* ACPI lid methods were generally unreliable in this generation, so | 482 | return connector_status_connected; |
483 | * don't even bother. | ||
484 | */ | ||
485 | if (IS_GEN2(dev) || IS_GEN3(dev)) | ||
486 | return connector_status_connected; | ||
487 | |||
488 | return status; | ||
489 | } | 483 | } |
490 | 484 | ||
491 | /** | 485 | /** |
@@ -835,25 +829,6 @@ static bool lvds_is_present_in_vbt(struct drm_device *dev, | |||
835 | return false; | 829 | return false; |
836 | } | 830 | } |
837 | 831 | ||
838 | static bool intel_lvds_ddc_probe(struct drm_device *dev, u8 pin) | ||
839 | { | ||
840 | struct drm_i915_private *dev_priv = dev->dev_private; | ||
841 | u8 buf = 0; | ||
842 | struct i2c_msg msgs[] = { | ||
843 | { | ||
844 | .addr = 0xA0, | ||
845 | .flags = 0, | ||
846 | .len = 1, | ||
847 | .buf = &buf, | ||
848 | }, | ||
849 | }; | ||
850 | struct i2c_adapter *i2c = &dev_priv->gmbus[pin].adapter; | ||
851 | /* XXX this only appears to work when using GMBUS */ | ||
852 | if (intel_gmbus_is_forced_bit(i2c)) | ||
853 | return true; | ||
854 | return i2c_transfer(i2c, msgs, 1) == 1; | ||
855 | } | ||
856 | |||
857 | /** | 832 | /** |
858 | * intel_lvds_init - setup LVDS connectors on this device | 833 | * intel_lvds_init - setup LVDS connectors on this device |
859 | * @dev: drm device | 834 | * @dev: drm device |
@@ -894,11 +869,6 @@ bool intel_lvds_init(struct drm_device *dev) | |||
894 | } | 869 | } |
895 | } | 870 | } |
896 | 871 | ||
897 | if (!intel_lvds_ddc_probe(dev, pin)) { | ||
898 | DRM_DEBUG_KMS("LVDS did not respond to DDC probe\n"); | ||
899 | return false; | ||
900 | } | ||
901 | |||
902 | intel_lvds = kzalloc(sizeof(struct intel_lvds), GFP_KERNEL); | 872 | intel_lvds = kzalloc(sizeof(struct intel_lvds), GFP_KERNEL); |
903 | if (!intel_lvds) { | 873 | if (!intel_lvds) { |
904 | return false; | 874 | return false; |