@@ -2847,6 +2847,8 @@ int i915_gem_reset_prepare(struct drm_i915_private *dev_priv)
i915_gem_revoke_fences(dev_priv);
+ intel_uc_reset_prepare(dev_priv);
+
return err;
}
@@ -470,3 +470,8 @@ int intel_uc_resume(struct drm_i915_private *dev_priv)
{
return 0;
}
+
+int intel_uc_reset_prepare(struct drm_i915_private *dev_priv)
+{
+ return intel_uc_suspend(dev_priv);
+}
@@ -69,5 +69,6 @@ static inline const char *intel_uc_fw_type_repr(enum intel_uc_fw_type type)
int intel_uc_runtime_resume(struct drm_i915_private *dev_priv);
int intel_uc_suspend(struct drm_i915_private *dev_priv);
int intel_uc_resume(struct drm_i915_private *dev_priv);
+int intel_uc_reset_prepare(struct drm_i915_private *dev_priv);
#endif
With this patch we reuse the complete sanitization done via intel_uc_suspend called in new function intel_uc_reset_prepare. Post reset this state is recreated by intel_uc_init_hw. Cc: Michal Wajdeczko <michal.wajdeczko@intel.com> Cc: MichaĆ Winiarski <michal.winiarski@intel.com> Signed-off-by: Sagar Arun Kamble <sagar.a.kamble@intel.com> --- drivers/gpu/drm/i915/i915_gem.c | 2 ++ drivers/gpu/drm/i915/intel_uc.c | 5 +++++ drivers/gpu/drm/i915/intel_uc.h | 1 + 3 files changed, 8 insertions(+)