Commit b11a020d authored by Jouni Högander's avatar Jouni Högander Committed by Lucas De Marchi
Browse files

drm/xe: Do clean shutdown also when using flr



Currently Xe driver is triggering flr without any clean-up on
shutdown. This is causing random warnings from pending related works as the
underlying hardware is reset in the middle of their execution.

Fix this by performing clean shutdown also when using flr.

Fixes: 501d799a ("drm/xe: Wire up device shutdown handler")
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Signed-off-by: default avatarJouni Högander <jouni.hogander@intel.com>
Reviewed-by: default avatarMaarten Lankhorst <dev@lankhorst.se>
Link: https://patch.msgid.link/20251031122312.1836534-1-jouni.hogander@intel.com


Signed-off-by: default avatarMaarten Lankhorst <dev@lankhorst.se>
(cherry picked from commit a4ff26b7)
Signed-off-by: default avatarLucas De Marchi <lucas.demarchi@intel.com>
parent 9cd27eec
Loading
Loading
Loading
Loading
+9 −9
Original line number Diff line number Diff line
@@ -983,12 +983,11 @@ void xe_device_remove(struct xe_device *xe)

void xe_device_shutdown(struct xe_device *xe)
{
	drm_dbg(&xe->drm, "Shutting down device\n");

	if (xe_driver_flr_disabled(xe)) {
	struct xe_gt *gt;
	u8 id;

	drm_dbg(&xe->drm, "Shutting down device\n");

	xe_display_pm_shutdown(xe);

	xe_irq_suspend(xe);
@@ -997,7 +996,8 @@ void xe_device_shutdown(struct xe_device *xe)
		xe_gt_shutdown(gt);

	xe_display_pm_shutdown_late(xe);
	} else {

	if (!xe_driver_flr_disabled(xe)) {
		/* BOOM! */
		__xe_driver_flr(xe);
	}