accel/habanalabs: send disable pci when compute ctx is active
authorTal Cohen <talcohen@habana.ai>
Wed, 22 Mar 2023 09:20:05 +0000 (11:20 +0200)
committerOded Gabbay <ogabbay@kernel.org>
Sat, 8 Apr 2023 07:39:33 +0000 (10:39 +0300)
Fix an issue in hard reset flow in which the driver didn't send a
disable pci message if there was an active compute context.
In hard reset, disable pci message should be sent no matter if
a compute context exists or not.

Signed-off-by: Tal Cohen <talcohen@habana.ai>
Reviewed-by: Oded Gabbay <ogabbay@kernel.org>
Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
Reviewed-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
drivers/accel/habanalabs/common/device.c

index c36de13..3c1af9d 100644 (file)
@@ -1386,7 +1386,7 @@ static void handle_reset_trigger(struct hl_device *hdev, u32 flags)
 
        /* No consecutive mechanism when user context exists */
        if (hdev->is_compute_ctx_active)
-               return;
+               goto disable_pci;
 
        /*
         * 'reset cause' is being updated here, because getting here
@@ -1425,6 +1425,8 @@ static void handle_reset_trigger(struct hl_device *hdev, u32 flags)
         * If F/W is performing the reset, no need to send it a message to disable
         * PCI access
         */
+
+disable_pci:
        if ((flags & HL_DRV_RESET_HARD) &&
                        !(flags & (HL_DRV_RESET_HEARTBEAT | HL_DRV_RESET_BYPASS_REQ_TO_FW))) {
                /* Disable PCI access from device F/W so he won't send