diff options
Diffstat (limited to 'drivers/gpu/drm/i915/intel_dp.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_dp.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c index b30e82b98439..a3288376ac71 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c | |||
@@ -353,10 +353,14 @@ intel_dp_aux_ch(struct intel_dp *intel_dp, | |||
353 | aux_clock_divider = 200; /* SNB & IVB eDP input clock at 400Mhz */ | 353 | aux_clock_divider = 200; /* SNB & IVB eDP input clock at 400Mhz */ |
354 | else | 354 | else |
355 | aux_clock_divider = 225; /* eDP input clock at 450Mhz */ | 355 | aux_clock_divider = 225; /* eDP input clock at 450Mhz */ |
356 | } else if (HAS_PCH_SPLIT(dev)) | 356 | } else if (dev_priv->pch_id == INTEL_PCH_LPT_DEVICE_ID_TYPE) { |
357 | /* Workaround for non-ULT HSW */ | ||
358 | aux_clock_divider = 74; | ||
359 | } else if (HAS_PCH_SPLIT(dev)) { | ||
357 | aux_clock_divider = DIV_ROUND_UP(intel_pch_rawclk(dev), 2); | 360 | aux_clock_divider = DIV_ROUND_UP(intel_pch_rawclk(dev), 2); |
358 | else | 361 | } else { |
359 | aux_clock_divider = intel_hrawclk(dev) / 2; | 362 | aux_clock_divider = intel_hrawclk(dev) / 2; |
363 | } | ||
360 | 364 | ||
361 | if (IS_GEN6(dev)) | 365 | if (IS_GEN6(dev)) |
362 | precharge = 3; | 366 | precharge = 3; |
@@ -2470,17 +2474,14 @@ done: | |||
2470 | static void | 2474 | static void |
2471 | intel_dp_destroy(struct drm_connector *connector) | 2475 | intel_dp_destroy(struct drm_connector *connector) |
2472 | { | 2476 | { |
2473 | struct drm_device *dev = connector->dev; | ||
2474 | struct intel_dp *intel_dp = intel_attached_dp(connector); | 2477 | struct intel_dp *intel_dp = intel_attached_dp(connector); |
2475 | struct intel_connector *intel_connector = to_intel_connector(connector); | 2478 | struct intel_connector *intel_connector = to_intel_connector(connector); |
2476 | 2479 | ||
2477 | if (!IS_ERR_OR_NULL(intel_connector->edid)) | 2480 | if (!IS_ERR_OR_NULL(intel_connector->edid)) |
2478 | kfree(intel_connector->edid); | 2481 | kfree(intel_connector->edid); |
2479 | 2482 | ||
2480 | if (is_edp(intel_dp)) { | 2483 | if (is_edp(intel_dp)) |
2481 | intel_panel_destroy_backlight(dev); | ||
2482 | intel_panel_fini(&intel_connector->panel); | 2484 | intel_panel_fini(&intel_connector->panel); |
2483 | } | ||
2484 | 2485 | ||
2485 | drm_sysfs_connector_remove(connector); | 2486 | drm_sysfs_connector_remove(connector); |
2486 | drm_connector_cleanup(connector); | 2487 | drm_connector_cleanup(connector); |
@@ -2789,7 +2790,6 @@ intel_dp_init_connector(struct intel_digital_port *intel_dig_port, | |||
2789 | drm_connector_init(dev, connector, &intel_dp_connector_funcs, type); | 2790 | drm_connector_init(dev, connector, &intel_dp_connector_funcs, type); |
2790 | drm_connector_helper_add(connector, &intel_dp_connector_helper_funcs); | 2791 | drm_connector_helper_add(connector, &intel_dp_connector_helper_funcs); |
2791 | 2792 | ||
2792 | connector->polled = DRM_CONNECTOR_POLL_HPD; | ||
2793 | connector->interlace_allowed = true; | 2793 | connector->interlace_allowed = true; |
2794 | connector->doublescan_allowed = 0; | 2794 | connector->doublescan_allowed = 0; |
2795 | 2795 | ||