diff options
author | Christophe Lombard <clombard@linux.ibm.com> | 2023-08-29 11:23:20 +0200 |
---|---|---|
committer | Reza Arbab <arbab@linux.ibm.com> | 2023-09-12 14:22:11 -0500 |
commit | 1a3ba1ec80071a031e793fc51954c88bbdfca645 (patch) | |
tree | b1c46010a7b6d580a9c65fa5b00f814f35e62980 /include | |
parent | 4fc06a6cb136a0acaef03e603bb906a6e6c48788 (diff) | |
download | skiboot-1a3ba1ec80071a031e793fc51954c88bbdfca645.zip skiboot-1a3ba1ec80071a031e793fc51954c88bbdfca645.tar.gz skiboot-1a3ba1ec80071a031e793fc51954c88bbdfca645.tar.bz2 |
core/pldm: PLDM over MCTP Binding
Enable the mctp binding over LPC bus interface and new wrappers to send
and receive PLDM messages over the mctp library.
PLDM is supported as a message type over MCTP. PLDM over MCTP binding
defines the format of PLDM over MCTP messages.
An MCTP Endpoint is the terminus for MCTP communication. A physical device
that supports MCTP may provide one or more MCTP Endpoints. Endpoints are
addressed using a logical address called the Endpoint ID, or EID. EIDs in
MCTP are analogous to IP Addresses in Internet Protocol networking.
The BMC EID default is 8.
First byte of the PLDM over MCTP Message Fields identifies the MCTP
message as carrying a PLDM message:
Message Type (7 bits) PLDM = 0x01 (000_0001b).
Reviewed-by: Abhishek Singh Tomar <abhishek@linux.ibm.com>
Signed-off-by: Christophe Lombard <clombard@linux.ibm.com>
Signed-off-by: Reza Arbab <arbab@linux.ibm.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/pldm.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/include/pldm.h b/include/pldm.h new file mode 100644 index 0000000..617287f --- /dev/null +++ b/include/pldm.h @@ -0,0 +1,24 @@ +/* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later + * Copyright 2022 IBM Corp. + */ + +#ifndef __PLDM_H__ +#define __PLDM_H__ + +/** + * Handle PLDM messages received from MCTP + */ +int pldm_mctp_message_rx(uint8_t eid, bool tag_owner, uint8_t msg_tag, + const uint8_t *buf, int len); + +/** + * PLDM over MCTP initialization + */ +int pldm_mctp_init(void); + +/** + * PLDM over MCTP stop + */ +void pldm_mctp_exit(void); + +#endif /* __PLDM_H__ */ |