tools/testing/cxl: Use named effects for the Command Effect Log
authorVishal Verma <vishal.l.verma@intel.com>
Wed, 14 Jun 2023 17:17:42 +0000 (11:17 -0600)
committerDan Williams <dan.j.williams@intel.com>
Sun, 25 Jun 2023 22:58:40 +0000 (15:58 -0700)
As more emulated mailbox commands are added to cxl_test, it is a pain
point to look up command effect numbers for each effect. Replace the
bare numbers in the mock driver with an enum that lists all possible
effects.

Cc: Davidlohr Bueso <dave@stgolabs.net>
Cc: Jonathan Cameron <Jonathan.Cameron@Huawei.com>
Cc: Russ Weight <russell.h.weight@intel.com>
Cc: Alison Schofield <alison.schofield@intel.com>
Cc: Ira Weiny <ira.weiny@intel.com>
Cc: Dave Jiang <dave.jiang@intel.com>
Cc: Ben Widawsky <bwidawsk@kernel.org>
Cc: Dan Williams <dan.j.williams@intel.com>
Suggested-by: Jonathan Cameron <Jonathan.Cameron@Huawei.com>
Reviewed-by: Alison Schofield <alison.schofield@intel.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Signed-off-by: Vishal Verma <vishal.l.verma@intel.com>
Link: https://lore.kernel.org/r/20230602-vv-fw_update-v4-3-c6265bd7343b@intel.com
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
tools/testing/cxl/test/mem.c

index 403cd360877260c9302bf9aab5c56529b1c6ac92..68668d8df1cda911b97c30559d84cd6f1c06c948 100644 (file)
 
 static unsigned int poison_inject_dev_max = MOCK_INJECT_DEV_MAX;
 
+enum cxl_command_effects {
+       CONF_CHANGE_COLD_RESET = 0,
+       CONF_CHANGE_IMMEDIATE,
+       DATA_CHANGE_IMMEDIATE,
+       POLICY_CHANGE_IMMEDIATE,
+       LOG_CHANGE_IMMEDIATE,
+       SECURITY_CHANGE_IMMEDIATE,
+       BACKGROUND_OP,
+       SECONDARY_MBOX_SUPPORTED,
+};
+
+#define CXL_CMD_EFFECT_NONE cpu_to_le16(0)
+
 static struct cxl_cel_entry mock_cel[] = {
        {
                .opcode = cpu_to_le16(CXL_MBOX_OP_GET_SUPPORTED_LOGS),
-               .effect = cpu_to_le16(0),
+               .effect = CXL_CMD_EFFECT_NONE,
        },
        {
                .opcode = cpu_to_le16(CXL_MBOX_OP_IDENTIFY),
-               .effect = cpu_to_le16(0),
+               .effect = CXL_CMD_EFFECT_NONE,
        },
        {
                .opcode = cpu_to_le16(CXL_MBOX_OP_GET_LSA),
-               .effect = cpu_to_le16(0),
+               .effect = CXL_CMD_EFFECT_NONE,
        },
        {
                .opcode = cpu_to_le16(CXL_MBOX_OP_GET_PARTITION_INFO),
-               .effect = cpu_to_le16(0),
+               .effect = CXL_CMD_EFFECT_NONE,
        },
        {
                .opcode = cpu_to_le16(CXL_MBOX_OP_SET_LSA),
-               .effect = cpu_to_le16(EFFECT(1) | EFFECT(2)),
+               .effect = cpu_to_le16(EFFECT(CONF_CHANGE_IMMEDIATE) |
+                                     EFFECT(DATA_CHANGE_IMMEDIATE)),
        },
        {
                .opcode = cpu_to_le16(CXL_MBOX_OP_GET_HEALTH_INFO),
-               .effect = cpu_to_le16(0),
+               .effect = CXL_CMD_EFFECT_NONE,
        },
        {
                .opcode = cpu_to_le16(CXL_MBOX_OP_GET_POISON),
-               .effect = cpu_to_le16(0),
+               .effect = CXL_CMD_EFFECT_NONE,
        },
        {
                .opcode = cpu_to_le16(CXL_MBOX_OP_INJECT_POISON),
-               .effect = cpu_to_le16(EFFECT(2)),
+               .effect = cpu_to_le16(EFFECT(DATA_CHANGE_IMMEDIATE)),
        },
        {
                .opcode = cpu_to_le16(CXL_MBOX_OP_CLEAR_POISON),
-               .effect = cpu_to_le16(EFFECT(2)),
+               .effect = cpu_to_le16(EFFECT(DATA_CHANGE_IMMEDIATE)),
        },
 };