Skip to content

Commit e8ab57b

Browse files
committed
accel/ivpu: Add disable clock relinquish workaround for NVL-A0
Turn on disable clock relinquish workaround for Nova Lake A0. Without this workaround NPU may not power off correctly after inference, leading to unexpected system behavior. Fixes: 550f4dd ("accel/ivpu: Add support for Nova Lake's NPU") Cc: <[email protected]> # v6.19+ Reviewed-by: Lizhi.hou <[email protected]> Signed-off-by: Karol Wachowski <[email protected]> Link: https://patch.msgid.link/[email protected]
1 parent fc3bbf3 commit e8ab57b

2 files changed

Lines changed: 5 additions & 2 deletions

File tree

drivers/accel/ivpu/ivpu_drv.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
#define IVPU_HW_IP_60XX 60
3636

3737
#define IVPU_HW_IP_REV_LNL_B0 4
38+
#define IVPU_HW_IP_REV_NVL_A0 0
3839

3940
#define IVPU_HW_BTRS_MTL 1
4041
#define IVPU_HW_BTRS_LNL 2

drivers/accel/ivpu/ivpu_hw.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,8 +70,10 @@ static void wa_init(struct ivpu_device *vdev)
7070
if (ivpu_hw_btrs_gen(vdev) == IVPU_HW_BTRS_MTL)
7171
vdev->wa.interrupt_clear_with_0 = ivpu_hw_btrs_irqs_clear_with_0_mtl(vdev);
7272

73-
if (ivpu_device_id(vdev) == PCI_DEVICE_ID_LNL &&
74-
ivpu_revision(vdev) < IVPU_HW_IP_REV_LNL_B0)
73+
if ((ivpu_device_id(vdev) == PCI_DEVICE_ID_LNL &&
74+
ivpu_revision(vdev) < IVPU_HW_IP_REV_LNL_B0) ||
75+
(ivpu_device_id(vdev) == PCI_DEVICE_ID_NVL &&
76+
ivpu_revision(vdev) == IVPU_HW_IP_REV_NVL_A0))
7577
vdev->wa.disable_clock_relinquish = true;
7678

7779
if (ivpu_test_mode & IVPU_TEST_MODE_CLK_RELINQ_ENABLE)

0 commit comments

Comments
 (0)