summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorOleksandr Shulzhenko <oleksandr.shulzhenko.viktorovych@intel.com>2022-05-20 15:52:26 +0300
committerOleksandr Shulzhenko <oleksandr.shulzhenko.viktorovych@intel.com>2022-06-01 11:46:09 +0300
commite0e3e2a1c66c03c5cf77afedbac829d31ca06ec0 (patch)
tree9587ed6ac7f9922b0a7b720b50f74a41ea3e769a /include
parent426a368a8790b0561ef81bbd076fcc9c5e7e5ac1 (diff)
downloadlinux-e0e3e2a1c66c03c5cf77afedbac829d31ca06ec0.tar.xz
i3c: mctp: Add PECI-related functionality to I3C MCTP driver
- Handler for PECI messages have been added; - i3c_mctp_client and platform_device for PECI have been added. Signed-off-by: Oleksandr Shulzhenko <oleksandr.shulzhenko.viktorovych@intel.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/i3c/mctp/i3c-mctp.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/include/linux/i3c/mctp/i3c-mctp.h b/include/linux/i3c/mctp/i3c-mctp.h
index 72f6fae922b5..dd20750d79d8 100644
--- a/include/linux/i3c/mctp/i3c-mctp.h
+++ b/include/linux/i3c/mctp/i3c-mctp.h
@@ -8,6 +8,16 @@
#define I3C_MCTP_PAYLOAD_SIZE 64
#define I3C_MCTP_HDR_SIZE 4
+/* PECI MCTP Intel VDM definitions */
+#define MCTP_MSG_TYPE_VDM_PCI 0x7E
+#define MCTP_VDM_PCI_INTEL_VENDOR_ID 0x8086
+#define MCTP_VDM_PCI_INTEL_PECI 0x2
+
+/* MCTP message header offsets */
+#define MCTP_MSG_HDR_MSG_TYPE_OFFSET 0
+#define MCTP_MSG_HDR_VENDOR_OFFSET 1
+#define MCTP_MSG_HDR_OPCODE_OFFSET 4
+
struct i3c_mctp_client;
struct mctp_protocol_hdr {
@@ -34,5 +44,7 @@ int i3c_mctp_get_eid(struct i3c_mctp_client *client, u8 domain_id, u8 *eid);
int i3c_mctp_send_packet(struct i3c_device *i3c, struct i3c_mctp_packet *tx_packet);
struct i3c_mctp_packet *i3c_mctp_receive_packet(struct i3c_mctp_client *client,
unsigned long timeout);
+struct i3c_mctp_client *i3c_mctp_add_peci_client(struct i3c_device *i3c);
+void i3c_mctp_remove_peci_client(struct i3c_mctp_client *client);
#endif /* I3C_MCTP_H */