From 607dda5ce5406835a8cc7aeba6443fa12136361b Mon Sep 17 00:00:00 2001 From: Andrzej Kacprowski Date: Thu, 8 Oct 2026 12:00:13 +0200 Subject: [PATCH] accel/ivpu: Improve IVPU_TEST_MODE_FW_TEST handling In FW_TEST mode, boot the firmware but skip the ready wait and all subsequent firmware communication. The firmware test reports its results through the firmware log. Disable driver timeouts in this mode so timeout handling does not interrupt the firmware test. Signed-off-by: Andrzej Kacprowski Reviewed-by: Jeff Hugo Reviewed-by: Karol Wachowski Signed-off-by: Karol Wachowski Link: https://patch.msgid.link/20261008100013.3006983-1-andrzej.kacprowski@linux.intel.com --- drivers/accel/ivpu/ivpu_drv.c | 3 +++ drivers/accel/ivpu/ivpu_hw.c | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/accel/ivpu/ivpu_drv.c b/drivers/accel/ivpu/ivpu_drv.c index 6b71edf566e7..8c3fb0f01a31 100644 --- a/drivers/accel/ivpu/ivpu_drv.c +++ b/drivers/accel/ivpu/ivpu_drv.c @@ -539,6 +539,9 @@ int ivpu_boot(struct ivpu_device *vdev) ivpu_hw_irq_enable(vdev); ivpu_ipc_enable(vdev); + if (ivpu_test_mode & IVPU_TEST_MODE_FW_TEST) + return 0; + if (!ivpu_fw_is_warm_boot(vdev)) { ret = ivpu_pm_dct_init(vdev); if (ret) diff --git a/drivers/accel/ivpu/ivpu_hw.c b/drivers/accel/ivpu/ivpu_hw.c index 59a5de8d9270..8b63140e3160 100644 --- a/drivers/accel/ivpu/ivpu_hw.c +++ b/drivers/accel/ivpu/ivpu_hw.c @@ -94,7 +94,7 @@ static void wa_init(struct ivpu_device *vdev) static void timeouts_init(struct ivpu_device *vdev) { - if (ivpu_test_mode & IVPU_TEST_MODE_DISABLE_TIMEOUTS) { + if (ivpu_test_mode & (IVPU_TEST_MODE_DISABLE_TIMEOUTS | IVPU_TEST_MODE_FW_TEST)) { /* in milliseconds, negative value disables the timeout */ vdev->timeout.boot = -1; vdev->timeout.jsm = -1;