Commit 37280ef5 authored by Nirmoy Das's avatar Nirmoy Das

drm/i915: Clean steer semaphore on resume

During resume, the steer semaphore on GT1 was observed to be held. The
hardware team has confirmed the safety of clearing steer semaphores
for all GTs during driver load/resume, as no lock acquisitions can occur
in this process by other agents.

v2: reset on resume not in intel_gt_init().
v3: do the reset on intel_gt_resume_early()
v4: do general sanitization for all GTs(Matt)
Signed-off-by: default avatarNirmoy Das <nirmoy.das@intel.com>
Reviewed-by: default avatarAndi Shyti <andi.shyti@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230928130015.6758-3-nirmoy.das@intel.com
parent 35ba33f7
......@@ -13,6 +13,7 @@
#include "intel_engine_pm.h"
#include "intel_gt.h"
#include "intel_gt_clock_utils.h"
#include "intel_gt_mcr.h"
#include "intel_gt_pm.h"
#include "intel_gt_print.h"
#include "intel_gt_requests.h"
......@@ -218,6 +219,15 @@ void intel_gt_pm_fini(struct intel_gt *gt)
void intel_gt_resume_early(struct intel_gt *gt)
{
/*
* Sanitize steer semaphores during driver resume. This is necessary
* to address observed cases of steer semaphores being
* held after a suspend operation. Confirmation from the hardware team
* assures the safety of this operation, as no lock acquisitions
* by other agents occur during driver load/resume process.
*/
intel_gt_mcr_lock_sanitize(gt);
intel_uncore_resume_early(gt->uncore);
intel_gt_check_and_clear_faults(gt);
}
......
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