Skip to content

Commit 02a416a

Browse files
committed
drm/xe/gsc: Wedge the device if the GSCCS reset fails
Due to the special handling of the GSCCS in HW, we can't escalate to GT reset when we receive the reset failure interrupt; the specs indicate that we should trigger an FLR instead, but we do not have support for that at the moment, so the HW will stay permanently in a broken state. We should therefore mark the device as wedged, the same as if the GT reset had failed. Signed-off-by: Daniele Ceraolo Spurio <[email protected]> Reviewed-by: Julia Filipchuk <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
1 parent 5ee2d63 commit 02a416a

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

drivers/gpu/drm/xe/xe_gsc.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -335,9 +335,11 @@ static int gsc_er_complete(struct xe_gt *gt)
335335
if (er_status == GSCI_TIMER_STATUS_TIMER_EXPIRED) {
336336
/*
337337
* XXX: we should trigger an FLR here, but we don't have support
338-
* for that yet.
338+
* for that yet. Since we can't recover from the error, we
339+
* declare the device as wedged.
339340
*/
340341
xe_gt_err(gt, "GSC ER timed out!\n");
342+
xe_device_declare_wedged(gt_to_xe(gt));
341343
return -EIO;
342344
}
343345

0 commit comments

Comments
 (0)