From: Fan Ni <nifan.cxl@gmail.com>
To: anisa.su887@gmail.com
Cc: qemu-devel@nongnu.org, Jonathan.Cameron@huawei.com,
nifan.cxl@gmail.com, dave@stgolabs.net,
linux-cxl@vger.kernel.org, Anisa Su <anisa.su@samsung.com>
Subject: Re: [PATCH v2 01/10] cxl-mailbox-utils: Move opcodes enum to new header file
Date: Tue, 20 May 2025 08:37:35 -0700 [thread overview]
Message-ID: <aCyhv8Qz1LUpJKd3@lg> (raw)
In-Reply-To: <20250508001754.122180-2-anisa.su887@gmail.com>
On Thu, May 08, 2025 at 12:00:57AM +0000, anisa.su887@gmail.com wrote:
> From: Anisa Su <anisa.su@samsung.com>
>
> In preparation for the next patch, move opcodes enum to new cxl_opcodes.h file
> for visibility from mailbox-utils.c and i2c_mctp_cxl.c, which checks that
> certain command sets are bound with the correct MCTP binding.
>
> Signed-off-by: Anisa Su <anisa.su@samsung.com>
> ---
> hw/cxl/cxl-mailbox-utils.c | 68 ++----------------------------------
> include/hw/cxl/cxl_opcodes.h | 64 +++++++++++++++++++++++++++++++++
Should we put the opcodes into include/hw/cxl/cxl_mailbox.h instead of
creating a new file. cxl_mailbox.h only has some macros.
Fan
> 2 files changed, 66 insertions(+), 66 deletions(-)
> create mode 100644 include/hw/cxl/cxl_opcodes.h
>
> diff --git a/hw/cxl/cxl-mailbox-utils.c b/hw/cxl/cxl-mailbox-utils.c
> index a02d130926..ed3294530f 100644
> --- a/hw/cxl/cxl-mailbox-utils.c
> +++ b/hw/cxl/cxl-mailbox-utils.c
> @@ -23,6 +23,7 @@
> #include "qemu/uuid.h"
> #include "system/hostmem.h"
> #include "qemu/range.h"
> +#include "hw/cxl/cxl_opcodes.h"
>
> #define CXL_CAPACITY_MULTIPLIER (256 * MiB)
> #define CXL_DC_EVENT_LOG_SIZE 8
> @@ -36,7 +37,7 @@
>
> /*
> * How to add a new command, example. The command set FOO, with cmd BAR.
> - * 1. Add the command set and cmd to the enum.
> + * 1. Add the command set and cmd to the enum in cxl_opcodes.h.
> * FOO = 0x7f,
> * #define BAR 0
> * 2. Implement the handler
> @@ -59,71 +60,6 @@
> * a register interface that already deals with it.
> */
>
> -enum {
> - INFOSTAT = 0x00,
> - #define IS_IDENTIFY 0x1
> - #define BACKGROUND_OPERATION_STATUS 0x2
> - #define GET_RESPONSE_MSG_LIMIT 0x3
> - #define SET_RESPONSE_MSG_LIMIT 0x4
> - #define BACKGROUND_OPERATION_ABORT 0x5
> - EVENTS = 0x01,
> - #define GET_RECORDS 0x0
> - #define CLEAR_RECORDS 0x1
> - #define GET_INTERRUPT_POLICY 0x2
> - #define SET_INTERRUPT_POLICY 0x3
> - FIRMWARE_UPDATE = 0x02,
> - #define GET_INFO 0x0
> - #define TRANSFER 0x1
> - #define ACTIVATE 0x2
> - TIMESTAMP = 0x03,
> - #define GET 0x0
> - #define SET 0x1
> - LOGS = 0x04,
> - #define GET_SUPPORTED 0x0
> - #define GET_LOG 0x1
> - #define GET_LOG_CAPABILITIES 0x2
> - #define CLEAR_LOG 0x3
> - #define POPULATE_LOG 0x4
> - FEATURES = 0x05,
> - #define GET_SUPPORTED 0x0
> - #define GET_FEATURE 0x1
> - #define SET_FEATURE 0x2
> - IDENTIFY = 0x40,
> - #define MEMORY_DEVICE 0x0
> - CCLS = 0x41,
> - #define GET_PARTITION_INFO 0x0
> - #define GET_LSA 0x2
> - #define SET_LSA 0x3
> - HEALTH_INFO_ALERTS = 0x42,
> - #define GET_ALERT_CONFIG 0x1
> - #define SET_ALERT_CONFIG 0x2
> - SANITIZE = 0x44,
> - #define OVERWRITE 0x0
> - #define SECURE_ERASE 0x1
> - #define MEDIA_OPERATIONS 0x2
> - PERSISTENT_MEM = 0x45,
> - #define GET_SECURITY_STATE 0x0
> - MEDIA_AND_POISON = 0x43,
> - #define GET_POISON_LIST 0x0
> - #define INJECT_POISON 0x1
> - #define CLEAR_POISON 0x2
> - #define GET_SCAN_MEDIA_CAPABILITIES 0x3
> - #define SCAN_MEDIA 0x4
> - #define GET_SCAN_MEDIA_RESULTS 0x5
> - DCD_CONFIG = 0x48,
> - #define GET_DC_CONFIG 0x0
> - #define GET_DYN_CAP_EXT_LIST 0x1
> - #define ADD_DYN_CAP_RSP 0x2
> - #define RELEASE_DYN_CAP 0x3
> - PHYSICAL_SWITCH = 0x51,
> - #define IDENTIFY_SWITCH_DEVICE 0x0
> - #define GET_PHYSICAL_PORT_STATE 0x1
> - TUNNEL = 0x53,
> - #define MANAGEMENT_COMMAND 0x0
> - MHD = 0x55,
> - #define GET_MHD_INFO 0x0
> -};
> -
> /* CCI Message Format CXL r3.1 Figure 7-19 */
> typedef struct CXLCCIMessage {
> uint8_t category;
> diff --git a/include/hw/cxl/cxl_opcodes.h b/include/hw/cxl/cxl_opcodes.h
> new file mode 100644
> index 0000000000..26d3a99e8a
> --- /dev/null
> +++ b/include/hw/cxl/cxl_opcodes.h
> @@ -0,0 +1,64 @@
> +enum {
> + INFOSTAT = 0x00,
> + #define IS_IDENTIFY 0x1
> + #define BACKGROUND_OPERATION_STATUS 0x2
> + #define GET_RESPONSE_MSG_LIMIT 0x3
> + #define SET_RESPONSE_MSG_LIMIT 0x4
> + #define BACKGROUND_OPERATION_ABORT 0x5
> + EVENTS = 0x01,
> + #define GET_RECORDS 0x0
> + #define CLEAR_RECORDS 0x1
> + #define GET_INTERRUPT_POLICY 0x2
> + #define SET_INTERRUPT_POLICY 0x3
> + FIRMWARE_UPDATE = 0x02,
> + #define GET_INFO 0x0
> + #define TRANSFER 0x1
> + #define ACTIVATE 0x2
> + TIMESTAMP = 0x03,
> + #define GET 0x0
> + #define SET 0x1
> + LOGS = 0x04,
> + #define GET_SUPPORTED 0x0
> + #define GET_LOG 0x1
> + #define GET_LOG_CAPABILITIES 0x2
> + #define CLEAR_LOG 0x3
> + #define POPULATE_LOG 0x4
> + FEATURES = 0x05,
> + #define GET_SUPPORTED 0x0
> + #define GET_FEATURE 0x1
> + #define SET_FEATURE 0x2
> + IDENTIFY = 0x40,
> + #define MEMORY_DEVICE 0x0
> + CCLS = 0x41,
> + #define GET_PARTITION_INFO 0x0
> + #define GET_LSA 0x2
> + #define SET_LSA 0x3
> + HEALTH_INFO_ALERTS = 0x42,
> + #define GET_ALERT_CONFIG 0x1
> + #define SET_ALERT_CONFIG 0x2
> + SANITIZE = 0x44,
> + #define OVERWRITE 0x0
> + #define SECURE_ERASE 0x1
> + #define MEDIA_OPERATIONS 0x2
> + PERSISTENT_MEM = 0x45,
> + #define GET_SECURITY_STATE 0x0
> + MEDIA_AND_POISON = 0x43,
> + #define GET_POISON_LIST 0x0
> + #define INJECT_POISON 0x1
> + #define CLEAR_POISON 0x2
> + #define GET_SCAN_MEDIA_CAPABILITIES 0x3
> + #define SCAN_MEDIA 0x4
> + #define GET_SCAN_MEDIA_RESULTS 0x5
> + DCD_CONFIG = 0x48,
> + #define GET_DC_CONFIG 0x0
> + #define GET_DYN_CAP_EXT_LIST 0x1
> + #define ADD_DYN_CAP_RSP 0x2
> + #define RELEASE_DYN_CAP 0x3
> + PHYSICAL_SWITCH = 0x51,
> + #define IDENTIFY_SWITCH_DEVICE 0x0
> + #define GET_PHYSICAL_PORT_STATE 0x1
> + TUNNEL = 0x53,
> + #define MANAGEMENT_COMMAND 0x0
> + MHD = 0x55,
> + #define GET_MHD_INFO 0x0
> +};
> --
> 2.47.2
>
--
Fan Ni
next prev parent reply other threads:[~2025-05-20 15:37 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-08 0:00 [PATCH v2 00/10] CXL: FMAPI DCD Management Commands 0x5600-0x5605 anisa.su887
2025-05-08 0:00 ` [PATCH v2 01/10] cxl-mailbox-utils: Move opcodes enum to new header file anisa.su887
2025-05-20 15:37 ` Fan Ni [this message]
2025-05-20 17:33 ` Anisa Su
2025-05-30 13:43 ` Jonathan Cameron
2025-05-30 13:43 ` Jonathan Cameron via
2025-05-30 19:57 ` Anisa Su
2025-05-08 0:00 ` [PATCH v2 02/10] cxl-mailbox-utils: 0x5600 - FMAPI Get DCD Info anisa.su887
2025-05-20 15:59 ` Fan Ni
2025-05-30 14:07 ` Jonathan Cameron
2025-05-30 14:07 ` Jonathan Cameron via
2025-05-08 0:00 ` [PATCH v2 03/10] cxl/type3: Add dsmas_flags to CXLDCRegion struct anisa.su887
2025-05-20 16:05 ` Fan Ni
2025-05-08 0:01 ` [PATCH v2 04/10] cxl-mailbox-utils: 0x5601 - FMAPI Get Host Region Config anisa.su887
2025-05-20 16:23 ` Fan Ni
2025-05-08 0:01 ` [PATCH v2 05/10] cxl_events.h: Move definition for dynamic_capacity_uuid and enum for DC event types anisa.su887
2025-05-20 16:44 ` Fan Ni
2025-05-08 0:01 ` [PATCH v2 06/10] hw/cxl_type3: Add DC Region bitmap lock anisa.su887
2025-05-20 16:56 ` Fan Ni
2025-05-08 0:01 ` [PATCH v2 07/10] cxl-mailbox-utils: 0x5602 - FMAPI Set DC Region Config anisa.su887
2025-05-20 13:29 ` Jonathan Cameron
2025-05-20 13:29 ` Jonathan Cameron via
2025-05-20 17:07 ` Fan Ni
2025-05-08 0:01 ` [PATCH v2 08/10] cxl-mailbox-utils: 0x5603 - FMAPI Get DC Region Extent Lists anisa.su887
2025-05-20 17:18 ` Fan Ni
2025-05-08 0:01 ` [PATCH v2 09/10] cxl-mailbox-utils: 0x5604 - FMAPI Initiate DC Add anisa.su887
2025-05-20 13:34 ` Jonathan Cameron
2025-05-20 13:34 ` Jonathan Cameron via
2025-05-20 18:08 ` Fan Ni
2025-05-08 0:01 ` [PATCH v2 10/10] cxl-mailbox-utils: 0x5605 - FMAPI Initiate DC Release anisa.su887
2025-05-20 13:39 ` [PATCH v2 00/10] CXL: FMAPI DCD Management Commands 0x5600-0x5605 Jonathan Cameron
2025-05-20 13:39 ` Jonathan Cameron via
2025-05-30 14:26 ` Jonathan Cameron
2025-05-30 14:26 ` Jonathan Cameron via
2025-06-02 17:46 ` Anisa Su
2025-06-06 0:28 ` Anisa Su
2025-06-10 14:47 ` Jonathan Cameron
2025-06-10 14:47 ` Jonathan Cameron via
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aCyhv8Qz1LUpJKd3@lg \
--to=nifan.cxl@gmail.com \
--cc=Jonathan.Cameron@huawei.com \
--cc=anisa.su887@gmail.com \
--cc=anisa.su@samsung.com \
--cc=dave@stgolabs.net \
--cc=linux-cxl@vger.kernel.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.