|
@@ -23,7 +23,7 @@
|
|
|
* FOO = 0x7f,
|
|
|
* #define BAR 0
|
|
|
* 2. Implement the handler
|
|
|
- * static ret_code cmd_foo_bar(struct cxl_cmd *cmd,
|
|
|
+ * static CXLRetCode cmd_foo_bar(struct cxl_cmd *cmd,
|
|
|
* CXLDeviceState *cxl_dstate, uint16_t *len)
|
|
|
* 3. Add the command to the cxl_cmd_set[][]
|
|
|
* [FOO][BAR] = { "FOO_BAR", cmd_foo_bar, x, y },
|
|
@@ -90,10 +90,10 @@ typedef enum {
|
|
|
CXL_MBOX_UNSUPPORTED_MAILBOX = 0x15,
|
|
|
CXL_MBOX_INVALID_PAYLOAD_LENGTH = 0x16,
|
|
|
CXL_MBOX_MAX = 0x17
|
|
|
-} ret_code;
|
|
|
+} CXLRetCode;
|
|
|
|
|
|
struct cxl_cmd;
|
|
|
-typedef ret_code (*opcode_handler)(struct cxl_cmd *cmd,
|
|
|
+typedef CXLRetCode (*opcode_handler)(struct cxl_cmd *cmd,
|
|
|
CXLDeviceState *cxl_dstate, uint16_t *len);
|
|
|
struct cxl_cmd {
|
|
|
const char *name;
|
|
@@ -105,16 +105,16 @@ struct cxl_cmd {
|
|
|
|
|
|
#define DEFINE_MAILBOX_HANDLER_ZEROED(name, size) \
|
|
|
uint16_t __zero##name = size; \
|
|
|
- static ret_code cmd_##name(struct cxl_cmd *cmd, \
|
|
|
- CXLDeviceState *cxl_dstate, uint16_t *len) \
|
|
|
+ static CXLRetCode cmd_##name(struct cxl_cmd *cmd, \
|
|
|
+ CXLDeviceState *cxl_dstate, uint16_t *len) \
|
|
|
{ \
|
|
|
*len = __zero##name; \
|
|
|
memset(cmd->payload, 0, *len); \
|
|
|
return CXL_MBOX_SUCCESS; \
|
|
|
}
|
|
|
#define DEFINE_MAILBOX_HANDLER_NOP(name) \
|
|
|
- static ret_code cmd_##name(struct cxl_cmd *cmd, \
|
|
|
- CXLDeviceState *cxl_dstate, uint16_t *len) \
|
|
|
+ static CXLRetCode cmd_##name(struct cxl_cmd *cmd, \
|
|
|
+ CXLDeviceState *cxl_dstate, uint16_t *len) \
|
|
|
{ \
|
|
|
return CXL_MBOX_SUCCESS; \
|
|
|
}
|
|
@@ -125,9 +125,9 @@ DEFINE_MAILBOX_HANDLER_ZEROED(events_get_interrupt_policy, 4);
|
|
|
DEFINE_MAILBOX_HANDLER_NOP(events_set_interrupt_policy);
|
|
|
|
|
|
/* 8.2.9.2.1 */
|
|
|
-static ret_code cmd_firmware_update_get_info(struct cxl_cmd *cmd,
|
|
|
- CXLDeviceState *cxl_dstate,
|
|
|
- uint16_t *len)
|
|
|
+static CXLRetCode cmd_firmware_update_get_info(struct cxl_cmd *cmd,
|
|
|
+ CXLDeviceState *cxl_dstate,
|
|
|
+ uint16_t *len)
|
|
|
{
|
|
|
struct {
|
|
|
uint8_t slots_supported;
|
|
@@ -159,9 +159,9 @@ static ret_code cmd_firmware_update_get_info(struct cxl_cmd *cmd,
|
|
|
}
|
|
|
|
|
|
/* 8.2.9.3.1 */
|
|
|
-static ret_code cmd_timestamp_get(struct cxl_cmd *cmd,
|
|
|
- CXLDeviceState *cxl_dstate,
|
|
|
- uint16_t *len)
|
|
|
+static CXLRetCode cmd_timestamp_get(struct cxl_cmd *cmd,
|
|
|
+ CXLDeviceState *cxl_dstate,
|
|
|
+ uint16_t *len)
|
|
|
{
|
|
|
uint64_t time, delta;
|
|
|
uint64_t final_time = 0;
|
|
@@ -181,7 +181,7 @@ static ret_code cmd_timestamp_get(struct cxl_cmd *cmd,
|
|
|
}
|
|
|
|
|
|
/* 8.2.9.3.2 */
|
|
|
-static ret_code cmd_timestamp_set(struct cxl_cmd *cmd,
|
|
|
+static CXLRetCode cmd_timestamp_set(struct cxl_cmd *cmd,
|
|
|
CXLDeviceState *cxl_dstate,
|
|
|
uint16_t *len)
|
|
|
{
|
|
@@ -201,9 +201,9 @@ static const QemuUUID cel_uuid = {
|
|
|
};
|
|
|
|
|
|
/* 8.2.9.4.1 */
|
|
|
-static ret_code cmd_logs_get_supported(struct cxl_cmd *cmd,
|
|
|
- CXLDeviceState *cxl_dstate,
|
|
|
- uint16_t *len)
|
|
|
+static CXLRetCode cmd_logs_get_supported(struct cxl_cmd *cmd,
|
|
|
+ CXLDeviceState *cxl_dstate,
|
|
|
+ uint16_t *len)
|
|
|
{
|
|
|
struct {
|
|
|
uint16_t entries;
|
|
@@ -224,9 +224,9 @@ static ret_code cmd_logs_get_supported(struct cxl_cmd *cmd,
|
|
|
}
|
|
|
|
|
|
/* 8.2.9.4.2 */
|
|
|
-static ret_code cmd_logs_get_log(struct cxl_cmd *cmd,
|
|
|
- CXLDeviceState *cxl_dstate,
|
|
|
- uint16_t *len)
|
|
|
+static CXLRetCode cmd_logs_get_log(struct cxl_cmd *cmd,
|
|
|
+ CXLDeviceState *cxl_dstate,
|
|
|
+ uint16_t *len)
|
|
|
{
|
|
|
struct {
|
|
|
QemuUUID uuid;
|
|
@@ -265,9 +265,9 @@ static ret_code cmd_logs_get_log(struct cxl_cmd *cmd,
|
|
|
}
|
|
|
|
|
|
/* 8.2.9.5.1.1 */
|
|
|
-static ret_code cmd_identify_memory_device(struct cxl_cmd *cmd,
|
|
|
- CXLDeviceState *cxl_dstate,
|
|
|
- uint16_t *len)
|
|
|
+static CXLRetCode cmd_identify_memory_device(struct cxl_cmd *cmd,
|
|
|
+ CXLDeviceState *cxl_dstate,
|
|
|
+ uint16_t *len)
|
|
|
{
|
|
|
struct {
|
|
|
char fw_revision[0x10];
|
|
@@ -309,9 +309,9 @@ static ret_code cmd_identify_memory_device(struct cxl_cmd *cmd,
|
|
|
return CXL_MBOX_SUCCESS;
|
|
|
}
|
|
|
|
|
|
-static ret_code cmd_ccls_get_partition_info(struct cxl_cmd *cmd,
|
|
|
- CXLDeviceState *cxl_dstate,
|
|
|
- uint16_t *len)
|
|
|
+static CXLRetCode cmd_ccls_get_partition_info(struct cxl_cmd *cmd,
|
|
|
+ CXLDeviceState *cxl_dstate,
|
|
|
+ uint16_t *len)
|
|
|
{
|
|
|
struct {
|
|
|
uint64_t active_vmem;
|
|
@@ -339,9 +339,9 @@ static ret_code cmd_ccls_get_partition_info(struct cxl_cmd *cmd,
|
|
|
return CXL_MBOX_SUCCESS;
|
|
|
}
|
|
|
|
|
|
-static ret_code cmd_ccls_get_lsa(struct cxl_cmd *cmd,
|
|
|
- CXLDeviceState *cxl_dstate,
|
|
|
- uint16_t *len)
|
|
|
+static CXLRetCode cmd_ccls_get_lsa(struct cxl_cmd *cmd,
|
|
|
+ CXLDeviceState *cxl_dstate,
|
|
|
+ uint16_t *len)
|
|
|
{
|
|
|
struct {
|
|
|
uint32_t offset;
|
|
@@ -364,9 +364,9 @@ static ret_code cmd_ccls_get_lsa(struct cxl_cmd *cmd,
|
|
|
return CXL_MBOX_SUCCESS;
|
|
|
}
|
|
|
|
|
|
-static ret_code cmd_ccls_set_lsa(struct cxl_cmd *cmd,
|
|
|
- CXLDeviceState *cxl_dstate,
|
|
|
- uint16_t *len)
|
|
|
+static CXLRetCode cmd_ccls_set_lsa(struct cxl_cmd *cmd,
|
|
|
+ CXLDeviceState *cxl_dstate,
|
|
|
+ uint16_t *len)
|
|
|
{
|
|
|
struct set_lsa_pl {
|
|
|
uint32_t offset;
|