From: Hen Alon <ha...@habana.ai>

Add tsc clock to clock sync info, to enable using this clock for
sampling and sync it with device time.

Signed-off-by: Hen Alon <ha...@habana.ai>
Reviewed-by: Oded Gabbay <ogab...@kernel.org>
Signed-off-by: Oded Gabbay <ogab...@kernel.org>
---
 drivers/accel/habanalabs/common/habanalabs_ioctl.c | 1 +
 include/uapi/drm/habanalabs_accel.h                | 1 +
 2 files changed, 2 insertions(+)

diff --git a/drivers/accel/habanalabs/common/habanalabs_ioctl.c 
b/drivers/accel/habanalabs/common/habanalabs_ioctl.c
index 8c3f1e2de2fe..a428226a0425 100644
--- a/drivers/accel/habanalabs/common/habanalabs_ioctl.c
+++ b/drivers/accel/habanalabs/common/habanalabs_ioctl.c
@@ -320,6 +320,7 @@ static int time_sync_info(struct hl_device *hdev, struct 
hl_info_args *args)
 
        time_sync.device_time = hdev->asic_funcs->get_device_time(hdev);
        time_sync.host_time = ktime_get_raw_ns();
+       time_sync.tsc_time = rdtsc();
 
        return copy_to_user(out, &time_sync,
                min((size_t) max_size, sizeof(time_sync))) ? -EFAULT : 0;
diff --git a/include/uapi/drm/habanalabs_accel.h 
b/include/uapi/drm/habanalabs_accel.h
index e7893b082bf8..dfe47db24ae6 100644
--- a/include/uapi/drm/habanalabs_accel.h
+++ b/include/uapi/drm/habanalabs_accel.h
@@ -991,6 +991,7 @@ struct hl_info_reset_count {
 struct hl_info_time_sync {
        __u64 device_time;
        __u64 host_time;
+       __u64 tsc_time;
 };
 
 /**
-- 
2.34.1

Reply via email to