diff options
author | Jani Nikula <jani.nikula@intel.com> | 2012-10-12 03:33:05 -0400 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2012-10-12 04:59:12 -0400 |
commit | be3cd5e37716bcf1579f63bdd919345a1f9692b9 (patch) | |
tree | e705a609412cc8eec3dd8fc99117aedbcff59ae1 | |
parent | eda2d7f582d51a4b5e01d48845ea28321357b136 (diff) |
drm/i915: fix non-DP-D eDP backlight cleanup and module reload
Backlight is initialized for eDP, but cleaned up only for eDP on DP-D
port. This leaves behind a dangling backlight interface on module unload on
machines that have eDP connected to something other than DP-D, and breaks
the backlight interface for subsequent module reloads. Fix the cleanup, and
thus module reload on affected machines.
Reported-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com>
Tested-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-rw-r--r-- | drivers/gpu/drm/i915/intel_dp.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c index c14d407d41e8..bd2c34a0aa9a 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c | |||
@@ -2370,8 +2370,9 @@ static void | |||
2370 | intel_dp_destroy(struct drm_connector *connector) | 2370 | intel_dp_destroy(struct drm_connector *connector) |
2371 | { | 2371 | { |
2372 | struct drm_device *dev = connector->dev; | 2372 | struct drm_device *dev = connector->dev; |
2373 | struct intel_dp *intel_dp = intel_attached_dp(connector); | ||
2373 | 2374 | ||
2374 | if (intel_dpd_is_edp(dev)) | 2375 | if (is_edp(intel_dp)) |
2375 | intel_panel_destroy_backlight(dev); | 2376 | intel_panel_destroy_backlight(dev); |
2376 | 2377 | ||
2377 | drm_sysfs_connector_remove(connector); | 2378 | drm_sysfs_connector_remove(connector); |