Merge remote-tracking branch 'cxl/for-6.10/add-log-mbox-cmds' into cxl-for-next
Add CXL log related mailbox commands - Add Get Log Capabilities command - Add Get Supported Log Sub-List Commands command - Add Clear Log command
This commit is contained in:
commit
db4fdb73f9
@ -56,6 +56,9 @@ static struct cxl_mem_command cxl_mem_commands[CXL_MEM_COMMAND_ID_MAX] = {
|
|||||||
CXL_CMD(GET_LSA, 0x8, CXL_VARIABLE_PAYLOAD, 0),
|
CXL_CMD(GET_LSA, 0x8, CXL_VARIABLE_PAYLOAD, 0),
|
||||||
CXL_CMD(GET_HEALTH_INFO, 0, 0x12, 0),
|
CXL_CMD(GET_HEALTH_INFO, 0, 0x12, 0),
|
||||||
CXL_CMD(GET_LOG, 0x18, CXL_VARIABLE_PAYLOAD, CXL_CMD_FLAG_FORCE_ENABLE),
|
CXL_CMD(GET_LOG, 0x18, CXL_VARIABLE_PAYLOAD, CXL_CMD_FLAG_FORCE_ENABLE),
|
||||||
|
CXL_CMD(GET_LOG_CAPS, 0x10, 0x4, 0),
|
||||||
|
CXL_CMD(CLEAR_LOG, 0x10, 0, 0),
|
||||||
|
CXL_CMD(GET_SUP_LOG_SUBLIST, 0x2, CXL_VARIABLE_PAYLOAD, 0),
|
||||||
CXL_CMD(SET_PARTITION_INFO, 0x0a, 0, 0),
|
CXL_CMD(SET_PARTITION_INFO, 0x0a, 0, 0),
|
||||||
CXL_CMD(SET_LSA, CXL_VARIABLE_PAYLOAD, 0, 0),
|
CXL_CMD(SET_LSA, CXL_VARIABLE_PAYLOAD, 0, 0),
|
||||||
CXL_CMD(GET_ALERT_CONFIG, 0, 0x10, 0),
|
CXL_CMD(GET_ALERT_CONFIG, 0, 0x10, 0),
|
||||||
@ -331,6 +334,15 @@ static bool cxl_payload_from_user_allowed(u16 opcode, void *payload_in)
|
|||||||
return false;
|
return false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case CXL_MBOX_OP_CLEAR_LOG: {
|
||||||
|
const uuid_t *uuid = (uuid_t *)payload_in;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Restrict the ‘Clear log’ action to only apply to
|
||||||
|
* Vendor debug logs.
|
||||||
|
*/
|
||||||
|
return uuid_equal(uuid, &DEFINE_CXL_VENDOR_DEBUG_UUID);
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -527,6 +527,9 @@ enum cxl_opcode {
|
|||||||
CXL_MBOX_OP_SET_TIMESTAMP = 0x0301,
|
CXL_MBOX_OP_SET_TIMESTAMP = 0x0301,
|
||||||
CXL_MBOX_OP_GET_SUPPORTED_LOGS = 0x0400,
|
CXL_MBOX_OP_GET_SUPPORTED_LOGS = 0x0400,
|
||||||
CXL_MBOX_OP_GET_LOG = 0x0401,
|
CXL_MBOX_OP_GET_LOG = 0x0401,
|
||||||
|
CXL_MBOX_OP_GET_LOG_CAPS = 0x0402,
|
||||||
|
CXL_MBOX_OP_CLEAR_LOG = 0x0403,
|
||||||
|
CXL_MBOX_OP_GET_SUP_LOG_SUBLIST = 0x0405,
|
||||||
CXL_MBOX_OP_IDENTIFY = 0x4000,
|
CXL_MBOX_OP_IDENTIFY = 0x4000,
|
||||||
CXL_MBOX_OP_GET_PARTITION_INFO = 0x4100,
|
CXL_MBOX_OP_GET_PARTITION_INFO = 0x4100,
|
||||||
CXL_MBOX_OP_SET_PARTITION_INFO = 0x4101,
|
CXL_MBOX_OP_SET_PARTITION_INFO = 0x4101,
|
||||||
|
@ -47,6 +47,9 @@
|
|||||||
___DEPRECATED(SCAN_MEDIA, "Scan Media"), \
|
___DEPRECATED(SCAN_MEDIA, "Scan Media"), \
|
||||||
___DEPRECATED(GET_SCAN_MEDIA, "Get Scan Media Results"), \
|
___DEPRECATED(GET_SCAN_MEDIA, "Get Scan Media Results"), \
|
||||||
___C(GET_TIMESTAMP, "Get Timestamp"), \
|
___C(GET_TIMESTAMP, "Get Timestamp"), \
|
||||||
|
___C(GET_LOG_CAPS, "Get Log Capabilities"), \
|
||||||
|
___C(CLEAR_LOG, "Clear Log"), \
|
||||||
|
___C(GET_SUP_LOG_SUBLIST, "Get Supported Logs Sub-List"), \
|
||||||
___C(MAX, "invalid / last command")
|
___C(MAX, "invalid / last command")
|
||||||
|
|
||||||
#define ___C(a, b) CXL_MEM_COMMAND_ID_##a
|
#define ___C(a, b) CXL_MEM_COMMAND_ID_##a
|
||||||
|
Loading…
Reference in New Issue
Block a user