提交 500f7147 编写于 作者: C 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: NTakashi Iwai <tiwai@suse.de>
Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
上级 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% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册