[Skiboot] [PATCH V3 00/21] Implement MCTP and PLDM features
Christophe Lombard
clombard at linux.vnet.ibm.com
Sat Mar 19 01:35:58 AEDT 2022
PLDM is designed to be an interface and data model that provides efficient
access to low-level platform inventory, monitoring, control, event, and
data/parameters transfer functions. For example, temperature, voltage, or
fan sensors can have a PLDM representation that can be used to monitor or
control the platform using a set of PLDM messages. PLDM over MCTP binding
defines the format of PLDM over MCTP messages.
This patch set covers these following steps:
- initialize MCTP binding over LPC Bus interface.
- define PLDM responder and PLDM control and discovery requests.
- define PLDM requester and define the functions and data structures used
for discovering, describing, initializing, and accessing sensors and
effecters within the management controllers and management devices of a
platform management subsystem using PLDM messaging.
- encode and decode APIs for in-band readFile and writeFile commands.
To enable the new PLDM features, add CONFIG_PLDM as a parameter:
make .... CONFIG_PLDM=1
This patch set should be applied on top of this previous set:
Import external libraries for MCTP/PLDM protocols.
Changelog[v3]
- Rebase to latest upstream.
- patch1 : - Current IPMI testcase broken.
- patch9 : - Consider the dest_id in pldm_send().
- patch10: - Add a comment.
- patch15: - Update find_lid_by_attr_name().
- patch16: - Copy fsdata.length in the returned structure.
- patch20: - Cleanup write_file_req().
Changelog[v2]
- Rebase to latest upstream.
- patch3 : - Patch is now correctly built.
- patch9 : - Update number of retries.
- patch10: - Update traces.
- patch11: - Add new parameter (no_timeout) for the api:
set_state_effecter_states_req().
- patch12: - Call set_state_effecter_states_req() with the new parameter.
- patch13: - Call set_state_effecter_states_req() with the new parameter.
- patch14: - Update traces.
- patch15: - Change the signature of pldm_bios_get_lids_id().
- patch16: - Add new PLDM FRU requests.
Christophe Lombard (21):
hw: Move lpc firmware space helpers
hw/ast-bmc: Initialize ast lpc mctp binding
core/pldm: PLDM over MCTP Binding
core/pldm: Add PLDM responder support
core/pldm: Encode GetTID response
core/pldm: Encode GetPLDMTypes response
core/pldm: Encode GetPLDMCommands response
core/pldm: Encode GetPLDMVersion response
core/pldm: Implement PLDM requester
core/pldm: PLDM for Platform Monitoring and Control Specification
core/pldm: Encode state effecter request
core/pldm: Send a system firmware Graceful Restart request
core/pldm: Send a system chassis Off-Soft Graceful request
core/pldm: PLDM for BIOS Control and Configuration Specification
core/pldm: Find lid attribute from bios tables
core/pldm: PLDM for FRU data Specification
core/pldm: Update "bmc-firmware-version" device-tree field
core/pldm: PLDM for File-IO operations
core/pldm: Add file io read request
core/pldm: Add file io write request
core/pldm: Get file handle and file length
core/Makefile.inc | 6 +-
core/pldm/Makefile.inc | 18 ++
core/pldm/pldm-bios-requests.c | 358 ++++++++++++++++++++++
core/pldm/pldm-common.c | 154 ++++++++++
core/pldm/pldm-file-io-requests.c | 468 +++++++++++++++++++++++++++++
core/pldm/pldm-fru-requests.c | 148 +++++++++
core/pldm/pldm-platform-requests.c | 407 +++++++++++++++++++++++++
core/pldm/pldm-requester.c | 268 +++++++++++++++++
core/pldm/pldm-responder.c | 328 ++++++++++++++++++++
core/pldm/pldm.h | 79 +++++
hw/ast-bmc/Makefile.inc | 7 +
hw/ast-bmc/ast-mctp.c | 347 +++++++++++++++++++++
hw/lpc.c | 74 +++++
include/ast.h | 7 +
include/lpc.h | 6 +
include/pldm.h | 28 ++
16 files changed, 2702 insertions(+), 1 deletion(-)
create mode 100644 core/pldm/Makefile.inc
create mode 100644 core/pldm/pldm-bios-requests.c
create mode 100644 core/pldm/pldm-common.c
create mode 100644 core/pldm/pldm-file-io-requests.c
create mode 100644 core/pldm/pldm-fru-requests.c
create mode 100644 core/pldm/pldm-platform-requests.c
create mode 100644 core/pldm/pldm-requester.c
create mode 100644 core/pldm/pldm-responder.c
create mode 100644 core/pldm/pldm.h
create mode 100644 hw/ast-bmc/ast-mctp.c
create mode 100644 include/pldm.h
--
2.35.1
More information about the Skiboot
mailing list