aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorJani Nikula <jani.nikula@intel.com>2012-10-12 10:33:05 +0300
committerDaniel Vetter <daniel.vetter@ffwll.ch>2012-10-12 10:59:12 +0200
commitbe3cd5e37716bcf1579f63bdd919345a1f9692b9 (patch)
treee705a609412cc8eec3dd8fc99117aedbcff59ae1 /drivers/gpu
parentdrm/i915: HSW CRW stability magic (diff)
downloadlinux-dev-be3cd5e37716bcf1579f63bdd919345a1f9692b9.tar.xz
linux-dev-be3cd5e37716bcf1579f63bdd919345a1f9692b9.zip
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>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/i915/intel_dp.c3
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
intel_dp_destroy(struct drm_connector *connector)
{
struct drm_device *dev = connector->dev;
+ struct intel_dp *intel_dp = intel_attached_dp(connector);
- if (intel_dpd_is_edp(dev))
+ if (is_edp(intel_dp))
intel_panel_destroy_backlight(dev);
drm_sysfs_connector_remove(connector);