cxl: Add Support for Get Timestamp
authorDavidlohr Bueso <dave@stgolabs.net>
Tue, 29 Aug 2023 15:20:14 +0000 (08:20 -0700)
committerDan Williams <dan.j.williams@intel.com>
Thu, 7 Dec 2023 20:44:19 +0000 (12:44 -0800)
Add the call to the UAPI such that userspace may corelate the
timestamps from the device log with system wall time, if, for
example there's any sort of inaccuracy or skew in the device.

Signed-off-by: Davidlohr Bueso <dave@stgolabs.net>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Link: https://lore.kernel.org/r/20230829152014.15452-1-dave@stgolabs.net
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/cxl/core/mbox.c
drivers/cxl/cxlmem.h
include/uapi/linux/cxl_mem.h

index 36270dcfb42ef2f6917ea9036c8903e44584e4a2..b86dbd25740c38e5e452e02200414a9a17f946c2 100644 (file)
@@ -63,6 +63,7 @@ static struct cxl_mem_command cxl_mem_commands[CXL_MEM_COMMAND_ID_MAX] = {
        CXL_CMD(GET_SHUTDOWN_STATE, 0, 0x1, 0),
        CXL_CMD(SET_SHUTDOWN_STATE, 0x1, 0, 0),
        CXL_CMD(GET_SCAN_MEDIA_CAPS, 0x10, 0x4, 0),
+       CXL_CMD(GET_TIMESTAMP, 0, 0x8, 0),
 };
 
 /*
index a2fcbca253f3983a6c4bfb1b2f964314e1b250d6..6a6becee402b98958724bafaace3bec359373678 100644 (file)
@@ -503,6 +503,7 @@ enum cxl_opcode {
        CXL_MBOX_OP_GET_FW_INFO         = 0x0200,
        CXL_MBOX_OP_TRANSFER_FW         = 0x0201,
        CXL_MBOX_OP_ACTIVATE_FW         = 0x0202,
+       CXL_MBOX_OP_GET_TIMESTAMP       = 0x0300,
        CXL_MBOX_OP_SET_TIMESTAMP       = 0x0301,
        CXL_MBOX_OP_GET_SUPPORTED_LOGS  = 0x0400,
        CXL_MBOX_OP_GET_LOG             = 0x0401,
index 14bc6e7421483105c7ab0fd4e664d354cc3386b1..42066f4eb890362b2c4f150245db5bd1bf399a10 100644 (file)
@@ -46,6 +46,7 @@
        ___C(GET_SCAN_MEDIA_CAPS, "Get Scan Media Capabilities"),         \
        ___DEPRECATED(SCAN_MEDIA, "Scan Media"),                          \
        ___DEPRECATED(GET_SCAN_MEDIA, "Get Scan Media Results"),          \
+       ___C(GET_TIMESTAMP, "Get Timestamp"),                             \
        ___C(MAX, "invalid / last command")
 
 #define ___C(a, b) CXL_MEM_COMMAND_ID_##a