habanalabs: do not halt CoreSight during hard reset
authorOmer Shpigelman <oshpigelman@habana.ai>
Sun, 5 Jan 2020 09:05:45 +0000 (09:05 +0000)
committerOded Gabbay <oded.gabbay@gmail.com>
Tue, 11 Feb 2020 09:12:47 +0000 (11:12 +0200)
During hard reset we must not write to the device.
Hence avoid halting CoreSight during user context close if it is done
during hard reset.
In addition, we must not re-enable clock gating afterwards as it was
deliberately disabled in the beginning of the hard reset flow.

Signed-off-by: Omer Shpigelman <oshpigelman@habana.ai>
Reviewed-by: Oded Gabbay <oded.gabbay@gmail.com>
Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com>
drivers/misc/habanalabs/device.c

index 166883b..b680b0c 100644 (file)
@@ -598,7 +598,9 @@ int hl_device_set_debug_mode(struct hl_device *hdev, bool enable)
                        goto out;
                }
 
-               hdev->asic_funcs->halt_coresight(hdev);
+               if (!hdev->hard_reset_pending)
+                       hdev->asic_funcs->halt_coresight(hdev);
+
                hdev->in_debug = 0;
 
                goto out;