diff options
author | Christophe Lombard <clombard@linux.ibm.com> | 2023-08-29 11:23:27 +0200 |
---|---|---|
committer | Reza Arbab <arbab@linux.ibm.com> | 2023-09-12 14:22:11 -0500 |
commit | ce16acd4390aba8661b6a9f41d025c25895a8371 (patch) | |
tree | f2548286e3fca2a0690582b319a851a527e6f635 /core/pldm/pldm-mctp.c | |
parent | 819a4145a85f05c465899d5777d8f94dc3619052 (diff) | |
download | skiboot-ce16acd4390aba8661b6a9f41d025c25895a8371.zip skiboot-ce16acd4390aba8661b6a9f41d025c25895a8371.tar.gz skiboot-ce16acd4390aba8661b6a9f41d025c25895a8371.tar.bz2 |
core/pldm: PLDM for Platform Monitoring and Control Specification
This specification defines 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.
A PDR (Platform Descriptor Record) is a set of data that is used to
provide semantic information about sensors, effecters, monitored or
controller entities, and functions and services within a PLDM
implementation.
PDRs are mostly used to support PLDM monitoring and control and platform
events.
The PDRs for a PLDM subsystem are collected into a single, central PDR
Repository. A central repository provides a single place from which PDR
information can be retrieved.
The GetPDR command is used to retrieve individual PDRs from a PDR
Repository. The record is identified by the PDR recordHandle value that is
passed in the request.
The patch dump all the PDRs within a PDR Repository.
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 'core/pldm/pldm-mctp.c')
-rw-r--r-- | core/pldm/pldm-mctp.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/core/pldm/pldm-mctp.c b/core/pldm/pldm-mctp.c index 569fe25..a07d950 100644 --- a/core/pldm/pldm-mctp.c +++ b/core/pldm/pldm-mctp.c @@ -74,18 +74,22 @@ out: int pldm_mctp_init(void) { - int nbr_elt = 3, rc = OPAL_SUCCESS; + int nbr_elt = 5, rc = OPAL_SUCCESS; int (*pldm_config[])(void) = { ast_mctp_init, /* MCTP Binding */ pldm_responder_init, /* Register mandatory commands we'll respond to */ pldm_requester_init, /* Requester implementation */ + pldm_base_get_tid_req, /* Get BMC tid */ + pldm_platform_init, /* Get PDRs data */ }; const char *pldm_config_error[] = { "Failed to bind MCTP", "Failed to register mandatory commands", "Failed to configure requister", + "Failed to retrieve BMC Tid", + "Failed to retrieve Data Records", }; prlog(PR_NOTICE, "%s - Getting PLDM data\n", __func__); @@ -105,5 +109,7 @@ out: void pldm_mctp_exit(void) { + pldm_platform_exit(); + ast_mctp_exit(); } |