On 9/24/2024 2:17 AM, Jacek Lawrynowicz wrote:
From: Andrzej Kacprowski <andrzej.kacprow...@intel.com>

Add new test_mode BIT(9) that forces firmware to
enable turbo burst mode.

Signed-off-by: Andrzej Kacprowski <andrzej.kacprow...@intel.com>
Reviewed-by: Jacek Lawrynowicz <jacek.lawrynow...@linux.intel.com>
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynow...@linux.intel.com>
---
  drivers/accel/ivpu/ivpu_drv.h | 1 +
  drivers/accel/ivpu/ivpu_job.c | 5 +++++
  2 files changed, 6 insertions(+)

diff --git a/drivers/accel/ivpu/ivpu_drv.h b/drivers/accel/ivpu/ivpu_drv.h
index 9acef14deab57..151ab9f2ddc9b 100644
--- a/drivers/accel/ivpu/ivpu_drv.h
+++ b/drivers/accel/ivpu/ivpu_drv.h
@@ -197,6 +197,7 @@ extern bool ivpu_force_snoop;
  #define IVPU_TEST_MODE_PREEMPTION_DISABLE BIT(6)
  #define IVPU_TEST_MODE_HWS_EXTRA_EVENTS         BIT(7)
  #define IVPU_TEST_MODE_DISABLE_TIMEOUTS   BIT(8)
+#define IVPU_TEST_MODE_TURBO             BIT(9)
  extern int ivpu_test_mode;
struct ivpu_file_priv *ivpu_file_priv_get(struct ivpu_file_priv *file_priv);
diff --git a/drivers/accel/ivpu/ivpu_job.c b/drivers/accel/ivpu/ivpu_job.c
index 8798fb2046abc..dc5cf7ded9439 100644
--- a/drivers/accel/ivpu/ivpu_job.c
+++ b/drivers/accel/ivpu/ivpu_job.c
@@ -202,6 +202,11 @@ ivpu_cmdq_init(struct ivpu_file_priv *file_priv, struct 
ivpu_cmdq *cmdq, u16 eng
        jobq_header->engine_idx = engine;
        jobq_header->head = 0;
        jobq_header->tail = 0;
+       if (ivpu_test_mode & IVPU_TEST_MODE_TURBO) {
+               ivpu_dbg(vdev, JOB, "Turbo mode enabled");
+               jobq_header->flags = VPU_JOB_QUEUE_FLAGS_TURBO_MODE;

I don't see VPU_JOB_QUEUE_FLAGS_TURBO_MODE defined.  What am I missing?

+       }
+
        wmb(); /* Flush WC buffer for jobq->header */
if (vdev->fw->sched_mode == VPU_SCHEDULING_MODE_HW) {

Reply via email to