]> Pileus Git - ~andy/linux/blobdiff - drivers/gpu/drm/i915/intel_dp.c
Merge branch 'for-linux-next' of git://people.freedesktop.org/~danvet/drm-intel into...
[~andy/linux] / drivers / gpu / drm / i915 / intel_dp.c
index 93694da7f71790dec9ee637322a6725ae09ae4cc..b14bec93fb698106cf76c13e08620139a275a1d0 100644 (file)
@@ -2519,12 +2519,15 @@ void intel_dp_encoder_destroy(struct drm_encoder *encoder)
 {
        struct intel_digital_port *intel_dig_port = enc_to_dig_port(encoder);
        struct intel_dp *intel_dp = &intel_dig_port->dp;
+       struct drm_device *dev = intel_dp_to_dev(intel_dp);
 
        i2c_del_adapter(&intel_dp->adapter);
        drm_encoder_cleanup(encoder);
        if (is_edp(intel_dp)) {
                cancel_delayed_work_sync(&intel_dp->panel_vdd_work);
+               mutex_lock(&dev->mode_config.mutex);
                ironlake_panel_vdd_off_sync(intel_dp);
+               mutex_unlock(&dev->mode_config.mutex);
        }
        kfree(intel_dig_port);
 }