提交 bcbc324a 编写于 作者: D Daniel Vetter

drm/i915: simplify i915_reset a bit

- need_display is always true, scrap it.
- don't reacquire the mutex to do nothing after having restored the
  gem state.
Reviewed-by: NEugeni Dodonov <eugeni.dodonov@intel.com>
Signed-Off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
上级 d5442303
...@@ -787,11 +787,6 @@ static int gen6_do_reset(struct drm_device *dev, u8 flags) ...@@ -787,11 +787,6 @@ static int gen6_do_reset(struct drm_device *dev, u8 flags)
int i915_reset(struct drm_device *dev, u8 flags) int i915_reset(struct drm_device *dev, u8 flags)
{ {
drm_i915_private_t *dev_priv = dev->dev_private; drm_i915_private_t *dev_priv = dev->dev_private;
/*
* We really should only reset the display subsystem if we actually
* need to
*/
bool need_display = true;
int ret; int ret;
if (!i915_try_reset) if (!i915_try_reset)
...@@ -865,22 +860,18 @@ int i915_reset(struct drm_device *dev, u8 flags) ...@@ -865,22 +860,18 @@ int i915_reset(struct drm_device *dev, u8 flags)
drm_irq_uninstall(dev); drm_irq_uninstall(dev);
drm_mode_config_reset(dev); drm_mode_config_reset(dev);
drm_irq_install(dev); drm_irq_install(dev);
} else {
mutex_lock(&dev->struct_mutex); mutex_unlock(&dev->struct_mutex);
} }
mutex_unlock(&dev->struct_mutex);
/* /*
* Perform a full modeset as on later generations, e.g. Ironlake, we may * Perform a full modeset as on later generations, e.g. Ironlake, we may
* need to retrain the display link and cannot just restore the register * need to retrain the display link and cannot just restore the register
* values. * values.
*/ */
if (need_display) { mutex_lock(&dev->mode_config.mutex);
mutex_lock(&dev->mode_config.mutex); drm_helper_resume_force_mode(dev);
drm_helper_resume_force_mode(dev); mutex_unlock(&dev->mode_config.mutex);
mutex_unlock(&dev->mode_config.mutex);
}
return 0; return 0;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册