linux-yocto/drivers/accel/ivpu
Karol Wachowski 6420a8d27e accel/ivpu: Trigger device recovery on engine reset/resume failure
[ Upstream commit a47e36dc5d ]

Trigger full device recovery when the driver fails to restore device state
via engine reset and resume operations. This is necessary because, even if
submissions from a faulty context are blocked, the NPU may still process
previously submitted faulty jobs if the engine reset fails to abort them.
Such jobs can continue to generate faults and occupy device resources.
When engine reset is ineffective, the only way to recover is to perform
a full device recovery.

Fixes: dad945c27a ("accel/ivpu: Add handling of VPU_JSM_STATUS_MVNCI_CONTEXT_VIOLATION_HW")
Cc: stable@vger.kernel.org # v6.15+
Signed-off-by: Karol Wachowski <karol.wachowski@intel.com>
Reviewed-by: Lizhi Hou <lizhi.hou@amd.com>
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com>
Link: https://lore.kernel.org/r/20250528154253.500556-1-jacek.lawrynowicz@linux.intel.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-07-06 11:01:38 +02:00
..
ivpu_coredump.c accel/ivpu: Add coredump support 2025-02-27 04:30:15 -08:00
ivpu_coredump.h accel/ivpu: Add coredump support 2025-02-27 04:30:15 -08:00
ivpu_debugfs.c accel/ivpu: Add debugfs interface for setting HWS priority bands 2025-07-06 11:01:38 +02:00
ivpu_debugfs.h
ivpu_drv.c accel/ivpu: Make command queue ID allocated on XArray 2025-07-06 11:01:38 +02:00
ivpu_drv.h accel/ivpu: Make command queue ID allocated on XArray 2025-07-06 11:01:38 +02:00
ivpu_fw_log.c accel/ivpu: Fix fw log printing 2025-05-22 14:29:53 +02:00
ivpu_fw_log.h accel/ivpu: Refactor functions in ivpu_fw_log.c 2025-05-22 14:29:52 +02:00
ivpu_fw.c accel/ivpu: Use firmware names from upstream repo 2025-06-27 11:11:25 +01:00
ivpu_fw.h accel/ivpu: Add auto selection logic for job scheduler 2025-05-02 07:58:56 +02:00
ivpu_gem.c accel/ivpu: Fix warning in ivpu_gem_bo_free() 2025-06-27 11:11:25 +01:00
ivpu_gem.h accel/ivpu: Use dma_resv_lock() instead of a custom mutex 2025-06-27 11:11:25 +01:00
ivpu_hw_37xx_reg.h accel/ivpu: Split IP and buttress headers 2024-05-17 08:30:23 +02:00
ivpu_hw_40xx_reg.h accel/ivpu: Update power island delays 2025-06-10 07:12:59 -04:00
ivpu_hw_btrs_lnl_reg.h accel/ivpu: Implement DCT handling 2024-06-14 09:13:32 +02:00
ivpu_hw_btrs_mtl_reg.h accel/ivpu: Split IP and buttress headers 2024-05-17 08:30:23 +02:00
ivpu_hw_btrs.c accel/ivpu: Fix the NPU's DPU frequency calculation 2025-05-02 07:58:56 +02:00
ivpu_hw_btrs.h accel/ivpu: Correct DCT interrupt handling 2025-05-09 09:50:39 +02:00
ivpu_hw_ip.c accel/ivpu: Update power island delays 2025-06-10 07:12:59 -04:00
ivpu_hw_ip.h accel/ivpu: Replace wake_thread with kfifo 2024-05-17 08:30:27 +02:00
ivpu_hw_reg_io.h
ivpu_hw.c accel/ivpu: Add debugfs interface for setting HWS priority bands 2025-07-06 11:01:38 +02:00
ivpu_hw.h accel/ivpu: Add debugfs interface for setting HWS priority bands 2025-07-06 11:01:38 +02:00
ivpu_ipc.c accel/ivpu: Fix warning in ivpu_ipc_send_receive_internal() 2025-04-20 10:15:42 +02:00
ivpu_ipc.h accel/ivpu: Add FW state dump on TDR 2025-02-27 04:30:15 -08:00
ivpu_job.c accel/ivpu: Trigger device recovery on engine reset/resume failure 2025-07-06 11:01:38 +02:00
ivpu_job.h accel/ivpu: Make command queue ID allocated on XArray 2025-07-06 11:01:38 +02:00
ivpu_jsm_msg.c accel/ivpu: Trigger device recovery on engine reset/resume failure 2025-07-06 11:01:38 +02:00
ivpu_jsm_msg.h accel/ivpu: Add FW state dump on TDR 2025-02-27 04:30:15 -08:00
ivpu_mmu_context.c accel/ivpu: Make parts of FW image read-only 2024-06-14 09:14:29 +02:00
ivpu_mmu_context.h accel/ivpu: Make parts of FW image read-only 2024-06-14 09:14:29 +02:00
ivpu_mmu.c accel/ivpu: Abort all jobs after command queue unregister 2025-05-09 09:50:50 +02:00
ivpu_mmu.h accel/ivpu: Dump MMU events in case of VPU boot timeout 2024-01-22 10:27:37 +01:00
ivpu_ms.c accel/ivpu: Fix deadlock in ivpu_ms_cleanup() 2025-04-20 10:15:42 +02:00
ivpu_ms.h accel/ivpu: Add NPU profiling support 2024-05-15 07:42:23 +02:00
ivpu_pm.c accel/ivpu: Reset fw log on cold boot 2025-05-22 14:29:52 +02:00
ivpu_pm.h accel/ivpu: Remove unused ivpu_rpm_get_if_active() 2024-06-14 09:15:28 +02:00
ivpu_sysfs.c accel/ivpu: Abort all jobs after command queue unregister 2025-05-09 09:50:50 +02:00
ivpu_sysfs.h accel/ivpu: Share NPU busy time in sysfs 2024-05-15 07:42:29 +02:00
Kconfig accel/ivpu: Add coredump support 2025-02-27 04:30:15 -08:00
Makefile accel/ivpu: Add coredump support 2025-02-27 04:30:15 -08:00
vpu_boot_api.h accel/ivpu: Update VPU FW API headers 2025-05-09 09:50:49 +02:00
vpu_jsm_api.h accel/ivpu: Update VPU FW API headers 2025-05-09 09:50:49 +02:00