Commit 500f7147 authored by Chris Wilson's avatar Chris Wilson

drm/i915: Reset state after a GPU reset or resume

Call drm_mode_config_reset() after an invalidation event to restore any
cached state to unknown.
Tested-by: default avatarTakashi Iwai <tiwai@suse.de>
Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
parent eb033556
...@@ -354,6 +354,7 @@ static int i915_drm_thaw(struct drm_device *dev) ...@@ -354,6 +354,7 @@ static int i915_drm_thaw(struct drm_device *dev)
error = i915_gem_init_ringbuffer(dev); error = i915_gem_init_ringbuffer(dev);
mutex_unlock(&dev->struct_mutex); mutex_unlock(&dev->struct_mutex);
drm_mode_config_reset(dev);
drm_irq_install(dev); drm_irq_install(dev);
/* Resume the modeset for every activated CRTC */ /* Resume the modeset for every activated CRTC */
...@@ -542,6 +543,7 @@ int i915_reset(struct drm_device *dev, u8 flags) ...@@ -542,6 +543,7 @@ int i915_reset(struct drm_device *dev, u8 flags)
mutex_unlock(&dev->struct_mutex); mutex_unlock(&dev->struct_mutex);
drm_irq_uninstall(dev); drm_irq_uninstall(dev);
drm_mode_config_reset(dev);
drm_irq_install(dev); drm_irq_install(dev);
mutex_lock(&dev->struct_mutex); mutex_lock(&dev->struct_mutex);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment