| #ifndef PLATFORM_OEM_IBM_H |
| #define PLATFORM_OEM_IBM_H |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| #include "base.h" |
| #include <stddef.h> |
| #include <stdint.h> |
| |
| enum pldm_event_types_ibm_oem { |
| PLDM_EVENT_TYPE_OEM_EVENT_BIOS_ATTRIBUTE_UPDATE = 0xF0, |
| }; |
| |
| /** @struct pldm_bios_attribute_update_event_req |
| * |
| * Structure representing PlatformEventMessage command request data for OEM |
| * event type BIOS attribute update. |
| */ |
| struct pldm_bios_attribute_update_event_req { |
| uint8_t format_version; |
| uint8_t tid; |
| uint8_t event_class; |
| uint8_t num_handles; |
| uint8_t bios_attribute_handles[1]; |
| } __attribute__((packed)); |
| |
| /** @brief Encode PlatformEventMessage request data for BIOS attribute update |
| * |
| * @param[in] instance_id - Message's instance id |
| * @param[in] format_version - Version of the event format |
| * @param[in] tid - Terminus ID for the terminus that originated the event |
| * message |
| * @param[in] num_handles - Number of BIOS handles with an update |
| * @param[in] list_of_handles - Pointer to the list of BIOS attribute handles |
| * @param[in] payload_length - Length of request message payload |
| * @param[out] msg - Message will be written to this |
| * |
| * @return pldm_completion_codes |
| * |
| * @note Caller is responsible for memory alloc and dealloc of param |
| * 'msg.payload' |
| */ |
| int encode_bios_attribute_update_event_req(uint8_t instance_id, |
| uint8_t format_version, uint8_t tid, |
| uint8_t num_handles, |
| const uint8_t *list_of_handles, |
| size_t payload_length, |
| struct pldm_msg *msg); |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| #endif /* PLATFORM_OEM_IBM_H */ |