aboutsummaryrefslogtreecommitdiff
path: root/include/uapi/misc
diff options
context:
space:
mode:
authorGravatar Tomer Tayar <ttayar@habana.ai> 2020-03-31 22:46:36 +0300
committerGravatar Oded Gabbay <oded.gabbay@gmail.com> 2020-05-19 14:48:41 +0300
commit25e7aeba601c1776cd21d610e3afc8768d0c7f2e (patch)
tree1a6c207adeafa3eebcca5627f1ef58e9705bbd8c /include/uapi/misc
parenthabanalabs: hl_pci_set_dma_mask() can be static (diff)
downloadlinux-25e7aeba601c1776cd21d610e3afc8768d0c7f2e.tar.gz
linux-25e7aeba601c1776cd21d610e3afc8768d0c7f2e.tar.bz2
linux-25e7aeba601c1776cd21d610e3afc8768d0c7f2e.zip
habanalabs: Add INFO IOCTL opcode for time sync information
Add a new opcode to the INFO IOCTL that retrieves the device time alongside the host time, to allow a user application that want to measure device time together with host time (such as a profiler) to synchronize these times. Signed-off-by: Tomer Tayar <ttayar@habana.ai> Reviewed-by: Oded Gabbay <oded.gabbay@gmail.com> Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com>
Diffstat (limited to 'include/uapi/misc')
-rw-r--r--include/uapi/misc/habanalabs.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/uapi/misc/habanalabs.h b/include/uapi/misc/habanalabs.h
index 4faa2c9767e5..4d593050c42b 100644
--- a/include/uapi/misc/habanalabs.h
+++ b/include/uapi/misc/habanalabs.h
@@ -101,6 +101,8 @@ enum hl_device_status {
* HL_INFO_RESET_COUNT - Retrieve the counts of the soft and hard reset
* operations performed on the device since the last
* time the driver was loaded.
+ * HL_INFO_TIME_SYNC - Retrieve the device's time alongside the host's time
+ * for synchronization.
*/
#define HL_INFO_HW_IP_INFO 0
#define HL_INFO_HW_EVENTS 1
@@ -111,6 +113,7 @@ enum hl_device_status {
#define HL_INFO_HW_EVENTS_AGGREGATE 7
#define HL_INFO_CLK_RATE 8
#define HL_INFO_RESET_COUNT 9
+#define HL_INFO_TIME_SYNC 10
#define HL_INFO_VERSION_MAX_LEN 128
#define HL_INFO_CARD_NAME_MAX_LEN 16
@@ -169,6 +172,11 @@ struct hl_info_reset_count {
__u32 soft_reset_cnt;
};
+struct hl_info_time_sync {
+ __u64 device_time;
+ __u64 host_time;
+};
+
struct hl_info_args {
/* Location of relevant struct in userspace */
__u64 return_pointer;