diff options
-rw-r--r-- | drivers/gpu/drm/i915/i915_dma.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c index f64ef4b723fd..9cf7dfe022b9 100644 --- a/drivers/gpu/drm/i915/i915_dma.c +++ b/drivers/gpu/drm/i915/i915_dma.c | |||
@@ -1781,7 +1781,13 @@ void i915_driver_lastclose(struct drm_device * dev) | |||
1781 | { | 1781 | { |
1782 | drm_i915_private_t *dev_priv = dev->dev_private; | 1782 | drm_i915_private_t *dev_priv = dev->dev_private; |
1783 | 1783 | ||
1784 | if (!dev_priv || drm_core_check_feature(dev, DRIVER_MODESET)) { | 1784 | /* On gen6+ we refuse to init without kms enabled, but then the drm core |
1785 | * goes right around and calls lastclose. Check for this and don't clean | ||
1786 | * up anything. */ | ||
1787 | if (!dev_priv) | ||
1788 | return; | ||
1789 | |||
1790 | if (drm_core_check_feature(dev, DRIVER_MODESET)) { | ||
1785 | intel_fb_restore_mode(dev); | 1791 | intel_fb_restore_mode(dev); |
1786 | vga_switcheroo_process_delayed_switch(); | 1792 | vga_switcheroo_process_delayed_switch(); |
1787 | return; | 1793 | return; |