OpenBIC
OpenSource Bridge-IC
pldm_monitor.h File Reference
#include "pldm.h"
#include "pdr.h"
Include dependency graph for pldm_monitor.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _pldm_sensor_pdr_parm
 
struct  pldm_get_sensor_reading_req
 
struct  pldm_get_sensor_reading_resp
 
struct  pldm_sensor_event_op_exp_data
 
struct  pldm_sensor_event_state_exp_data
 
struct  pldm_sensor_event_numeric_exp_data
 
struct  pldm_platform_event_message_req
 
struct  pldm_platform_event_message_resp
 
struct  pldm_sensor_event_data
 
struct  pldm_sensor_event_state_sensor_state
 
struct  pldm_sensor_event_numeric_sensor_state
 
struct  pldm_sensor_event_sensor_op_state
 
struct  pldm_effecter_event_data
 
struct  pldm_effeter_event_op_state
 
struct  pldm_set_event_receiver_req
 
struct  pldm_set_event_receiver_resp
 
struct  state_field_state_effecter_set
 
struct  state_field_state_effecter_get
 
struct  pldm_set_state_effecter_states_req
 
struct  pldm_get_state_effecter_states_req
 
struct  pldm_get_state_effecter_states_resp
 
struct  pldm_event_message_buffer_size_req
 
struct  pldm_event_message_buffer_size_resp
 
struct  state_field_state_sensor_reading_get
 
struct  pldm_get_state_sensor_reading_req
 
struct  pldm_get_state_sensor_reading_resp
 
struct  pldm_get_pdr_req
 
struct  pldm_get_pdr_resp
 
struct  pldm_get_pdr_info_resp
 
struct  pldm_state_effecter_info
 

Macros

#define PLDM_GET_SENSOR_READING_REQ_BYTES   3
 
#define PLDM_SET_STATE_EFFECTER_REQ_NO_STATE_FIELD_BYTES   3
 
#define PLDM_GET_STATE_EFFECTER_RESP_NO_STATE_FIELD_BYTES   2
 
#define PLDM_MONITOR_EVENT_DATA_SIZE_MAX   16
 
#define PLDM_MONITOR_EVENT_QUEUE_MSG_NUM_MAX_DEFAULT   10
 
#define PLDM_MONITOR_SENSOR_SUPPORT_MAX   0xFF
 
#define PLDM_MONITOR_SENSOR_EVENT_SENSOR_OP_STATE_DATA_LENGTH   2
 
#define PLDM_MONITOR_SENSOR_EVENT_STATE_SENSOR_STATE_DATA_LENGTH   3
 
#define PLDM_MONITOR_SENSOR_EVENT_NUMERIC_SENSOR_STATE_MIN_DATA_LENGTH   4
 
#define PLDM_MONITOR_SENSOR_EVENT_NUMERIC_SENSOR_STATE_MAX_DATA_LENGTH   7
 
#define PLDM_MONITOR_SENSOR_DATA_SIZE_INT8   1
 
#define PLDM_MONITOR_SENSOR_DATA_SIZE_INT16   2
 
#define PLDM_MONITOR_SENSOR_DATA_SIZE_INT32   4
 
#define PLDM_PLATFORM_OEM_GPIO_EFFECTER_STATE_FIELD_COUNT   2
 
#define PLDM_PLATFORM_OEM_HOST_POWER_CTRL_EFFECTER_STATE_FIELD_COUNT   1
 
#define PLDM_PLATFORM_OEM_I3C_HUB_REINIT_EFFECTER_STATE_FIELD_COUNT   1
 
#define PLDM_PLATFORM_OEM_SPI_REINIT_EFFECTER_STATE_FIELD_COUNT   1
 
#define PLDM_PLATFORM_OEM_SWITCH_UART_EFFECTER_STATE_FIELD_COUNT   1
 
#define PLDM_PLATFORM_OEM_AST1030_GPIO_PIN_NUM_MAX   167
 
#define PLDM_COMPOSITE_EFFECTER_COUNT_MIN   0x01
 
#define PLDM_COMPOSITE_EFFECTER_COUNT_MAX   0x08
 
#define PLDM_COMPOSITE_EFFECTER_COUNT_ADDSEL   0x03
 
#define PLDM_ADDSEL_ASSERT_MASK   0x80
 
#define PLDM_ADDSEL_DEASSERT_MASK   0x7F
 

Typedefs

typedef enum pldm_platform_monitor_commands pldm_platform_monitor_commands_t
 
typedef enum pldm_sensor_readings_data_type pldm_sensor_readings_data_type_t
 
typedef struct _pldm_sensor_pdr_parm pldm_sensor_pdr_parm
 
typedef enum pldm_sensor_event_class pldm_sensor_event_class_t
 
typedef enum pldm_effecter_event_class pldm_effecter_event_class_t
 

Enumerations

enum  pldm_platform_monitor_commands {
  PLDM_MONITOR_CMD_CODE_GET_SENSOR_READING = 0x11 , PLDM_MONITOR_CMD_CODE_GET_STATE_SENSOR_READING = 0x21 , PLDM_MONITOR_CMD_CODE_SET_EVENT_RECEIVER = 0x04 , PLDM_MONITOR_CMD_CODE_PLATFORM_EVENT_MESSAGE = 0x0A ,
  PLDM_MONITOR_CMD_CODE_EVENT_MESSAGE_BUFF_SIZE = 0x0D , PLDM_MONITOR_CMD_CODE_SET_STATE_EFFECTER_STATES = 0x39 , PLDM_MONITOR_CMD_CODE_GET_STATE_EFFECTER_STATES = 0x3A , PLDM_MONITOR_CMD_CODE_GET_PDR_INFO = 0x50 ,
  PLDM_MONITOR_CMD_CODE_GET_PDR = 0x51
}
 
enum  pldm_sensor_readings_data_type {
  PLDM_SENSOR_DATA_SIZE_UINT8 , PLDM_SENSOR_DATA_SIZE_SINT8 , PLDM_SENSOR_DATA_SIZE_UINT16 , PLDM_SENSOR_DATA_SIZE_SINT16 ,
  PLDM_SENSOR_DATA_SIZE_UINT32 , PLDM_SENSOR_DATA_SIZE_SINT32
}
 
enum  pldm_sensor_operational_state {
  PLDM_SENSOR_ENABLED , PLDM_SENSOR_DISABLED , PLDM_SENSOR_UNAVAILABLE , PLDM_SENSOR_STATUSUNKOWN ,
  PLDM_SENSOR_FAILED , PLDM_SENSOR_INITIALIZING , PLDM_SENSOR_SHUTTINGDOWN , PLDM_SENSOR_INTEST
}
 
enum  pldm_effecter_operational_state {
  PLDM_EFFECTER_ENABLED_UPDATEPENDING , PLDM_EFFECTER_ENABLED_NOUPDATEPENDING , PLDM_EFFECTER_DISABLED , PLDM_EFFECTER_UNAVAILABLE ,
  PLDM_EFFECTER_STATUSUNKNOWN , PLDM_EFFECTER_FAILED , PLDM_EFFECTER_INITIALIZING , PLDM_EFFECTER_SHUTTINGDOWN ,
  PLDM_EFFECTER_INTEST
}
 
enum  set_request { PLDM_NO_CHANGE = 0x00 , PLDM_REQUEST_SET = 0x01 , PLDM_SET_REQUEST_MAX }
 
enum  oem_effecter_states_gpio_direction { EFFECTER_STATE_GPIO_DIRECTION_UNKNOWN = 0x00 , EFFECTER_STATE_GPIO_DIRECTION_INPUT = 0x01 , EFFECTER_STATE_GPIO_DIRECTION_OUTPUT = 0x02 , EFFECTER_STATE_GPIO_DIRECTION_MAX }
 
enum  oem_effecter_states_gpio_value { EFFECTER_STATE_GPIO_VALUE_UNKNOWN = 0x00 , EFFECTER_STATE_GPIO_VALUE_LOW = 0x01 , EFFECTER_STATE_GPIO_VALUE_HIGH = 0x02 , EFFECTER_STATE_GPIO_VALUE_MAX }
 
enum  oem_effecter_states_power_status {
  EFFECTER_STATE_POWER_STATUS_UNKNOWN = 0x00 , EFFECTER_STATE_POWER_STATUS_ON = 0x01 , EFFECTER_STATE_POWER_STATUS_OFF = 0x02 , EFFECTER_STATE_POWER_STATUS_CYCLE = 0x03 ,
  EFFECTER_STATE_POWER_STATUS_RESET = 0x04 , EFFECTER_STATE_POWER_STATUS_GRACEFUL_SHUTDOWN = 0x05 , EFFECTER_STATE_POWER_STATUS_MAX
}
 
enum  oem_effecter_states_reinit_i3c_hub { EFFECTER_STATE_I3C_HUB_REINIT = 0x01 , EFFECTER_STATE_I3C_HUB_MAX }
 
enum  oem_effecter_states_reinit_spi { EFFECTER_STATE_SPI_REINIT = 0x01 , EFFECTER_STATE_SPI_REINIT_MAX }
 
enum  pldm_sensor_present_state {
  PLDM_SENSOR_UNKNOWN = 0x0 , PLDM_SENSOR_NORMAL = 0x01 , PLDM_SENSOR_WARNING = 0x02 , PLDM_SENSOR_CRITICAL = 0x03 ,
  PLDM_SENSOR_FATAL = 0x04 , PLDM_SENSOR_LOWERWARNING = 0x05 , PLDM_SENSOR_LOWERCRITICAL = 0x06 , PLDM_SENSOR_LOWERFATAL = 0x07 ,
  PLDM_SENSOR_UPPERWARNING = 0x08 , PLDM_SENSOR_UPPERCRITICAL = 0x09 , PLDM_SENSOR_UPPERFATAL = 0x0a
}
 
enum  pldm_sensor_event_message_enable {
  PLDM_NO_EVENT_GENERATION , PLDM_EVENTS_DISABLED , PLDM_EVENTS_ENABLED , PLDM_OP_EVENTS_ONLY_ENABLED ,
  PLDM_STATE_EVENTS_ONLY_ENABLED
}
 
enum  pldm_platform_completion_codes {
  PLDM_PLATFORM_INVALID_SENSOR_ID = 0x80 , PLDM_PLATFORM_REARM_UNAVAILABLE_IN_PRESENT_STATE = 0x81 , PLDM_PLATFORM_INVALID_PROTOCOL_TYPE = 0x80 , PLDM_PLATFORM_ENABLE_METHOD_NOT_SUPPORTED = 0x81 ,
  PLDM_PLATFORM_HEARTBEAT_FREQUENCY_TOO_HIGH = 0x82 , PLDM_PLATFORM_INVALID_EFFECTER_ID = 0x80 , PLDM_PLATFORM_INVALID_STATE_VALUE = 0x81 , PLDM_PLATFORM_UNSUPPORTED_EFFECTERSTATE = 0x82
}
 
enum  pldm_oem_platform_completion_codes { PLDM_OEM_GPIO_UNSUPPORT_RANGE = 0x83 , PLDM_OEM_GPIO_EFFECTER_INVALID_SET_VALUE = 0x84 , PLDM_OEM_GPIO_EFFECTER_VALUE_UNKNOWN = 0x85 }
 
enum  pldm_entity_types { PLDM_ENTITY_DEVICE_DRIVER = 35 , PLDM_ENTITY_SUB_CHASSIS = 46 , PLDM_ENTITY_IO_CONTROLLER = 145 , PLDM_ENTITY_OTHER_BUS = 160 }
 
enum  pldm_event_types {
  PLDM_SENSOR_EVENT = 0x00 , PLDM_EFFECTER_EVENT = 0x01 , PLDM_REDFISH_TASK_EXECUTED_EVENT = 0x02 , PLDM_REDFISH_MESSAGE_EVENT = 0x03 ,
  PLDM_PDR_REPOSITORY_CHG_EVENT = 0x04 , PLDM_MESSAGE_POLL_EVENT = 0x05 , PLDM_HEARTBEAT_TIMER_ELAPSED_EVENT = 0x06
}
 
enum  pldm_sensor_event_class { PLDM_SENSOR_OP_STATE , PLDM_STATE_SENSOR_STATE , PLDM_NUMERIC_SENSOR_STATE }
 
enum  pldm_effecter_event_class { PLDM_EFFECTER_OP_STATE }
 
enum  pldm_platform_event_status {
  PLDM_EVENT_NO_LOGGING = 0x00 , PLDM_EVENT_LOGGING_DISABLED = 0x01 , PLDM_EVENT_LOG_FULL = 0x02 , PLDM_EVENT_ACCEPTED_FOR_LOGGING = 0x03 ,
  PLDM_EVENT_LOGGED = 0x04 , PLDM_EVENT_LOGGING_REJECTED = 0x05
}
 
enum  pldm_event_message_global_enable { PLDM_EVENT_MESSAGE_GLOBAL_DISABLE , PLDM_EVENT_MESSAGE_GLOBAL_ENABLE_ASYNC , PLDM_EVENT_MESSAGE_GLOBAL_ENABLE_POLLING , PLDM_EVENT_MESSAGE_GLOBAL_ENABLE_ASYNC_KEEP_ALIVE }
 
enum  pldm_get_pdr_transfer_flag { PLDM_TRANSFER_FLAG_START = 0x00 , PLDM_TRANSFER_FLAG_MIDDLE = 0x01 , PLDM_TRANSFER_FLAG_END = 0x04 , PLDM_TRANSFER_FLAG_START_AND_END = 0x05 }
 
enum  pldm_effecter_id_high_byte { PLDM_EFFECTER_ID_FUNC_HIGH_BYTE = 0x00 }
 
enum  pldm_effecter_id_low_byte { PLDM_EFFECTER_ID_ADDSEL_LOW_BYTE = 0x05 }
 

Functions

struct pldm_get_sensor_reading_req __attribute__ ((packed))
 
uint8_t pldm_monitor_handler_query (uint8_t code, void **ret_fn)
 
uint8_t pldm_platform_event_message_req (void *mctp_inst, mctp_ext_params ext_params, uint8_t event_class, const uint8_t *event_data, uint8_t event_data_length)
 
uint16_t pldm_platform_monitor_read (void *mctp_inst, mctp_ext_params ext_params, pldm_platform_monitor_commands_t cmd, uint8_t *req, uint16_t req_len, uint8_t *rbuf, uint16_t rbuf_len)
 
uint8_t pldm_send_platform_event (uint8_t event_class, uint16_t id, uint8_t ext_class, const uint8_t *event_data, uint8_t event_data_length)
 
void set_effecter_state_gpio_handler (const uint8_t *buf, uint16_t len, uint8_t *resp, uint16_t *resp_len, uint8_t gpio_pin)
 
void get_effecter_state_gpio_handler (const uint8_t *buf, uint16_t len, uint8_t *resp, uint16_t *resp_len, uint8_t gpio_pin)
 
void pldm_spi_reinit (const char *spi_dev_str, const uint8_t *buf, uint16_t len, uint8_t *resp, uint16_t *resp_len)
 
uint8_t plat_pldm_set_state_effecter_state_handler (const uint8_t *buf, uint16_t len, uint8_t *resp, uint16_t *resp_len, struct pldm_state_effecter_info *info_p)
 
uint8_t plat_pldm_get_state_effecter_state_handler (const uint8_t *buf, uint16_t len, uint8_t *resp, uint16_t *resp_len, struct pldm_state_effecter_info *info_p)
 
void plat_pldm_set_effecter_state_host_power_control (const uint8_t *buf, uint16_t len, uint8_t *resp, uint16_t *resp_len)
 
void plat_pldm_set_effecter_state_reinit_i3c_hub (const uint8_t *buf, uint16_t len, uint8_t *resp, uint16_t *resp_len)
 
void pldm_assign_gpio_effecter_id ()
 
void pldm_load_state_effecter_table (uint16_t state_effecter_index)
 
void plat_pldm_load_state_effecter_table ()
 
struct pldm_state_effecter_infofind_state_effecter_info (uint16_t effecter_id)
 
uint8_t pldm_event_len_check (uint8_t *buf, uint16_t len)
 PLDM event length check function. More...
 
float pldm_sensor_cal (uint8_t *buf, uint8_t len, pldm_sensor_readings_data_type_t data_type, pldm_sensor_pdr_parm parm)
 
uint8_t pldm_send_set_state_effecter_states_req (struct pldm_set_state_effecter_states_req *req, void *mctp_inst, mctp_ext_params ext_params)
 
uint8_t pldm_fill_addsel_req (struct pldm_set_state_effecter_states_req *req, uint16_t effecter_id, uint8_t device_type, uint8_t board_info, uint8_t event_type)
 

Variables

uint16_t sensor_id
 
uint8_t rearm_event_state
 
uint8_t completion_code
 
uint8_t sensor_data_size
 
uint8_t sensor_operational_state
 
uint8_t sensor_event_message_enable
 
uint8_t present_state
 
uint8_t previous_state
 
uint8_t event_state
 
uint8_t present_reading [1]
 
enum pldm_event_types __attribute__
 
uint8_t op_state
 
uint8_t pre_op_state
 
uint16_t sensor_ofst
 
uint8_t pre_event_state
 
uint8_t reading [1]
 
uint8_t format_version
 
uint8_t tid
 
uint8_t event_class
 
uint8_t event_data [PLDM_MONITOR_EVENT_DATA_SIZE_MAX]
 
uint8_t platform_event_status
 
uint8_t sensor_event_class_type
 
uint8_t event_class_data []
 
uint8_t sensor_offset
 
uint8_t previous_event_state
 
uint8_t present_op_state
 
uint8_t previous_op_state
 
uint16_t effecter_id
 
uint8_t effecter_event_class
 
uint8_t event_message_global_enable
 
uint8_t transport_protocol_type
 
uint8_t event_receiver_address_info
 
uint16_t heartbeat_timer
 
uint8_t set_request
 
uint8_t effecter_state
 
uint8_t effecter_op_state
 
uint8_t pending_state
 
uint8_t composite_effecter_count
 
set_effecter_state_field_t field [8]
 
uint16_t event_receiver_max_buffer_size
 
uint16_t term_max_buff_size
 
uint8_t sensor_op_state
 
uint8_t sensor_rearm
 
uint8_t rsv
 
uint8_t composite_sensor_count
 
uint32_t record_handle
 
uint32_t data_transfer_handle
 
uint8_t transfer_operation_flag
 
uint16_t request_count
 
uint16_t record_change_number
 
uint32_t next_record_handle
 
uint32_t next_data_transfer_handle
 
uint8_t transfer_flag
 
uint16_t response_count
 
uint8_t record_data [NUMERIC_PDR_SIZE]
 
uint8_t repository_state
 
uint8_t update_time [TIMESTAMP104_SIZE]
 
uint8_t oem_update_time [TIMESTAMP104_SIZE]
 
uint32_t record_count
 
uint32_t repository_size
 
uint32_t largest_record_size
 
uint8_t data_transfer_handle_timeout
 
struct pldm_state_effecter_infostate_effecter_table
 

Macro Definition Documentation

◆ PLDM_ADDSEL_ASSERT_MASK

#define PLDM_ADDSEL_ASSERT_MASK   0x80

◆ PLDM_ADDSEL_DEASSERT_MASK

#define PLDM_ADDSEL_DEASSERT_MASK   0x7F

◆ PLDM_COMPOSITE_EFFECTER_COUNT_ADDSEL

#define PLDM_COMPOSITE_EFFECTER_COUNT_ADDSEL   0x03

◆ PLDM_COMPOSITE_EFFECTER_COUNT_MAX

#define PLDM_COMPOSITE_EFFECTER_COUNT_MAX   0x08

◆ PLDM_COMPOSITE_EFFECTER_COUNT_MIN

#define PLDM_COMPOSITE_EFFECTER_COUNT_MIN   0x01

◆ PLDM_GET_SENSOR_READING_REQ_BYTES

#define PLDM_GET_SENSOR_READING_REQ_BYTES   3

◆ PLDM_GET_STATE_EFFECTER_RESP_NO_STATE_FIELD_BYTES

#define PLDM_GET_STATE_EFFECTER_RESP_NO_STATE_FIELD_BYTES   2

◆ PLDM_MONITOR_EVENT_DATA_SIZE_MAX

#define PLDM_MONITOR_EVENT_DATA_SIZE_MAX   16

◆ PLDM_MONITOR_EVENT_QUEUE_MSG_NUM_MAX_DEFAULT

#define PLDM_MONITOR_EVENT_QUEUE_MSG_NUM_MAX_DEFAULT   10

◆ PLDM_MONITOR_SENSOR_DATA_SIZE_INT16

#define PLDM_MONITOR_SENSOR_DATA_SIZE_INT16   2

◆ PLDM_MONITOR_SENSOR_DATA_SIZE_INT32

#define PLDM_MONITOR_SENSOR_DATA_SIZE_INT32   4

◆ PLDM_MONITOR_SENSOR_DATA_SIZE_INT8

#define PLDM_MONITOR_SENSOR_DATA_SIZE_INT8   1

◆ PLDM_MONITOR_SENSOR_EVENT_NUMERIC_SENSOR_STATE_MAX_DATA_LENGTH

#define PLDM_MONITOR_SENSOR_EVENT_NUMERIC_SENSOR_STATE_MAX_DATA_LENGTH   7

◆ PLDM_MONITOR_SENSOR_EVENT_NUMERIC_SENSOR_STATE_MIN_DATA_LENGTH

#define PLDM_MONITOR_SENSOR_EVENT_NUMERIC_SENSOR_STATE_MIN_DATA_LENGTH   4

◆ PLDM_MONITOR_SENSOR_EVENT_SENSOR_OP_STATE_DATA_LENGTH

#define PLDM_MONITOR_SENSOR_EVENT_SENSOR_OP_STATE_DATA_LENGTH   2

◆ PLDM_MONITOR_SENSOR_EVENT_STATE_SENSOR_STATE_DATA_LENGTH

#define PLDM_MONITOR_SENSOR_EVENT_STATE_SENSOR_STATE_DATA_LENGTH   3

◆ PLDM_MONITOR_SENSOR_SUPPORT_MAX

#define PLDM_MONITOR_SENSOR_SUPPORT_MAX   0xFF

◆ PLDM_PLATFORM_OEM_AST1030_GPIO_PIN_NUM_MAX

#define PLDM_PLATFORM_OEM_AST1030_GPIO_PIN_NUM_MAX   167

◆ PLDM_PLATFORM_OEM_GPIO_EFFECTER_STATE_FIELD_COUNT

#define PLDM_PLATFORM_OEM_GPIO_EFFECTER_STATE_FIELD_COUNT   2

◆ PLDM_PLATFORM_OEM_HOST_POWER_CTRL_EFFECTER_STATE_FIELD_COUNT

#define PLDM_PLATFORM_OEM_HOST_POWER_CTRL_EFFECTER_STATE_FIELD_COUNT   1

◆ PLDM_PLATFORM_OEM_I3C_HUB_REINIT_EFFECTER_STATE_FIELD_COUNT

#define PLDM_PLATFORM_OEM_I3C_HUB_REINIT_EFFECTER_STATE_FIELD_COUNT   1

◆ PLDM_PLATFORM_OEM_SPI_REINIT_EFFECTER_STATE_FIELD_COUNT

#define PLDM_PLATFORM_OEM_SPI_REINIT_EFFECTER_STATE_FIELD_COUNT   1

◆ PLDM_PLATFORM_OEM_SWITCH_UART_EFFECTER_STATE_FIELD_COUNT

#define PLDM_PLATFORM_OEM_SWITCH_UART_EFFECTER_STATE_FIELD_COUNT   1

◆ PLDM_SET_STATE_EFFECTER_REQ_NO_STATE_FIELD_BYTES

#define PLDM_SET_STATE_EFFECTER_REQ_NO_STATE_FIELD_BYTES   3

Typedef Documentation

◆ pldm_effecter_event_class_t

◆ pldm_platform_monitor_commands_t

◆ pldm_sensor_event_class_t

◆ pldm_sensor_pdr_parm

◆ pldm_sensor_readings_data_type_t

Enumeration Type Documentation

◆ oem_effecter_states_gpio_direction

Enumerator
EFFECTER_STATE_GPIO_DIRECTION_UNKNOWN 
EFFECTER_STATE_GPIO_DIRECTION_INPUT 
EFFECTER_STATE_GPIO_DIRECTION_OUTPUT 
EFFECTER_STATE_GPIO_DIRECTION_MAX 

◆ oem_effecter_states_gpio_value

Enumerator
EFFECTER_STATE_GPIO_VALUE_UNKNOWN 
EFFECTER_STATE_GPIO_VALUE_LOW 
EFFECTER_STATE_GPIO_VALUE_HIGH 
EFFECTER_STATE_GPIO_VALUE_MAX 

◆ oem_effecter_states_power_status

Enumerator
EFFECTER_STATE_POWER_STATUS_UNKNOWN 
EFFECTER_STATE_POWER_STATUS_ON 
EFFECTER_STATE_POWER_STATUS_OFF 
EFFECTER_STATE_POWER_STATUS_CYCLE 
EFFECTER_STATE_POWER_STATUS_RESET 
EFFECTER_STATE_POWER_STATUS_GRACEFUL_SHUTDOWN 
EFFECTER_STATE_POWER_STATUS_MAX 

◆ oem_effecter_states_reinit_i3c_hub

Enumerator
EFFECTER_STATE_I3C_HUB_REINIT 
EFFECTER_STATE_I3C_HUB_MAX 

◆ oem_effecter_states_reinit_spi

Enumerator
EFFECTER_STATE_SPI_REINIT 
EFFECTER_STATE_SPI_REINIT_MAX 

◆ pldm_effecter_event_class

Enumerator
PLDM_EFFECTER_OP_STATE 

◆ pldm_effecter_id_high_byte

Enumerator
PLDM_EFFECTER_ID_FUNC_HIGH_BYTE 

◆ pldm_effecter_id_low_byte

Enumerator
PLDM_EFFECTER_ID_ADDSEL_LOW_BYTE 

◆ pldm_effecter_operational_state

Enumerator
PLDM_EFFECTER_ENABLED_UPDATEPENDING 
PLDM_EFFECTER_ENABLED_NOUPDATEPENDING 
PLDM_EFFECTER_DISABLED 
PLDM_EFFECTER_UNAVAILABLE 
PLDM_EFFECTER_STATUSUNKNOWN 
PLDM_EFFECTER_FAILED 
PLDM_EFFECTER_INITIALIZING 
PLDM_EFFECTER_SHUTTINGDOWN 
PLDM_EFFECTER_INTEST 

◆ pldm_entity_types

Enumerator
PLDM_ENTITY_DEVICE_DRIVER 
PLDM_ENTITY_SUB_CHASSIS 
PLDM_ENTITY_IO_CONTROLLER 
PLDM_ENTITY_OTHER_BUS 

◆ pldm_event_message_global_enable

Enumerator
PLDM_EVENT_MESSAGE_GLOBAL_DISABLE 
PLDM_EVENT_MESSAGE_GLOBAL_ENABLE_ASYNC 
PLDM_EVENT_MESSAGE_GLOBAL_ENABLE_POLLING 
PLDM_EVENT_MESSAGE_GLOBAL_ENABLE_ASYNC_KEEP_ALIVE 

◆ pldm_event_types

Enumerator
PLDM_SENSOR_EVENT 
PLDM_EFFECTER_EVENT 
PLDM_REDFISH_TASK_EXECUTED_EVENT 
PLDM_REDFISH_MESSAGE_EVENT 
PLDM_PDR_REPOSITORY_CHG_EVENT 
PLDM_MESSAGE_POLL_EVENT 
PLDM_HEARTBEAT_TIMER_ELAPSED_EVENT 

◆ pldm_get_pdr_transfer_flag

Enumerator
PLDM_TRANSFER_FLAG_START 
PLDM_TRANSFER_FLAG_MIDDLE 
PLDM_TRANSFER_FLAG_END 
PLDM_TRANSFER_FLAG_START_AND_END 

◆ pldm_oem_platform_completion_codes

Enumerator
PLDM_OEM_GPIO_UNSUPPORT_RANGE 
PLDM_OEM_GPIO_EFFECTER_INVALID_SET_VALUE 
PLDM_OEM_GPIO_EFFECTER_VALUE_UNKNOWN 

◆ pldm_platform_completion_codes

Enumerator
PLDM_PLATFORM_INVALID_SENSOR_ID 
PLDM_PLATFORM_REARM_UNAVAILABLE_IN_PRESENT_STATE 
PLDM_PLATFORM_INVALID_PROTOCOL_TYPE 
PLDM_PLATFORM_ENABLE_METHOD_NOT_SUPPORTED 
PLDM_PLATFORM_HEARTBEAT_FREQUENCY_TOO_HIGH 
PLDM_PLATFORM_INVALID_EFFECTER_ID 
PLDM_PLATFORM_INVALID_STATE_VALUE 
PLDM_PLATFORM_UNSUPPORTED_EFFECTERSTATE 

◆ pldm_platform_event_status

Enumerator
PLDM_EVENT_NO_LOGGING 
PLDM_EVENT_LOGGING_DISABLED 
PLDM_EVENT_LOG_FULL 
PLDM_EVENT_ACCEPTED_FOR_LOGGING 
PLDM_EVENT_LOGGED 
PLDM_EVENT_LOGGING_REJECTED 

◆ pldm_platform_monitor_commands

Enumerator
PLDM_MONITOR_CMD_CODE_GET_SENSOR_READING 
PLDM_MONITOR_CMD_CODE_GET_STATE_SENSOR_READING 
PLDM_MONITOR_CMD_CODE_SET_EVENT_RECEIVER 
PLDM_MONITOR_CMD_CODE_PLATFORM_EVENT_MESSAGE 
PLDM_MONITOR_CMD_CODE_EVENT_MESSAGE_BUFF_SIZE 
PLDM_MONITOR_CMD_CODE_SET_STATE_EFFECTER_STATES 
PLDM_MONITOR_CMD_CODE_GET_STATE_EFFECTER_STATES 
PLDM_MONITOR_CMD_CODE_GET_PDR_INFO 
PLDM_MONITOR_CMD_CODE_GET_PDR 

◆ pldm_sensor_event_class

Enumerator
PLDM_SENSOR_OP_STATE 
PLDM_STATE_SENSOR_STATE 
PLDM_NUMERIC_SENSOR_STATE 

◆ pldm_sensor_event_message_enable

Enumerator
PLDM_NO_EVENT_GENERATION 
PLDM_EVENTS_DISABLED 
PLDM_EVENTS_ENABLED 
PLDM_OP_EVENTS_ONLY_ENABLED 
PLDM_STATE_EVENTS_ONLY_ENABLED 

◆ pldm_sensor_operational_state

Enumerator
PLDM_SENSOR_ENABLED 
PLDM_SENSOR_DISABLED 
PLDM_SENSOR_UNAVAILABLE 
PLDM_SENSOR_STATUSUNKOWN 
PLDM_SENSOR_FAILED 
PLDM_SENSOR_INITIALIZING 
PLDM_SENSOR_SHUTTINGDOWN 
PLDM_SENSOR_INTEST 

◆ pldm_sensor_present_state

Enumerator
PLDM_SENSOR_UNKNOWN 
PLDM_SENSOR_NORMAL 
PLDM_SENSOR_WARNING 
PLDM_SENSOR_CRITICAL 
PLDM_SENSOR_FATAL 
PLDM_SENSOR_LOWERWARNING 
PLDM_SENSOR_LOWERCRITICAL 
PLDM_SENSOR_LOWERFATAL 
PLDM_SENSOR_UPPERWARNING 
PLDM_SENSOR_UPPERCRITICAL 
PLDM_SENSOR_UPPERFATAL 

◆ pldm_sensor_readings_data_type

Enumerator
PLDM_SENSOR_DATA_SIZE_UINT8 
PLDM_SENSOR_DATA_SIZE_SINT8 
PLDM_SENSOR_DATA_SIZE_UINT16 
PLDM_SENSOR_DATA_SIZE_SINT16 
PLDM_SENSOR_DATA_SIZE_UINT32 
PLDM_SENSOR_DATA_SIZE_SINT32 

◆ set_request

Enumerator
PLDM_NO_CHANGE 
PLDM_REQUEST_SET 
PLDM_SET_REQUEST_MAX 

Function Documentation

◆ __attribute__()

◆ find_state_effecter_info()

struct pldm_state_effecter_info * find_state_effecter_info ( uint16_t  effecter_id)

◆ get_effecter_state_gpio_handler()

void get_effecter_state_gpio_handler ( const uint8_t *  buf,
uint16_t  len,
uint8_t *  resp,
uint16_t *  resp_len,
uint8_t  gpio_pin 
)
Here is the call graph for this function:

◆ plat_pldm_get_state_effecter_state_handler()

uint8_t plat_pldm_get_state_effecter_state_handler ( const uint8_t *  buf,
uint16_t  len,
uint8_t *  resp,
uint16_t *  resp_len,
struct pldm_state_effecter_info info_p 
)
Here is the call graph for this function:

◆ plat_pldm_load_state_effecter_table()

void plat_pldm_load_state_effecter_table ( )

◆ plat_pldm_set_effecter_state_host_power_control()

void plat_pldm_set_effecter_state_host_power_control ( const uint8_t *  buf,
uint16_t  len,
uint8_t *  resp,
uint16_t *  resp_len 
)
Here is the call graph for this function:

◆ plat_pldm_set_effecter_state_reinit_i3c_hub()

void plat_pldm_set_effecter_state_reinit_i3c_hub ( const uint8_t *  buf,
uint16_t  len,
uint8_t *  resp,
uint16_t *  resp_len 
)
Here is the call graph for this function:

◆ plat_pldm_set_state_effecter_state_handler()

uint8_t plat_pldm_set_state_effecter_state_handler ( const uint8_t *  buf,
uint16_t  len,
uint8_t *  resp,
uint16_t *  resp_len,
struct pldm_state_effecter_info info_p 
)
Here is the call graph for this function:

◆ pldm_assign_gpio_effecter_id()

void pldm_assign_gpio_effecter_id ( )

◆ pldm_event_len_check()

uint8_t pldm_event_len_check ( uint8_t *  buf,
uint16_t  len 
)

PLDM event length check function.

Check given event data length meet with spec.

Parameters
bufmessage data start from event class type
lenLength of buf in bytes
Returns
PLDM_BASE return value

◆ pldm_fill_addsel_req()

uint8_t pldm_fill_addsel_req ( struct pldm_set_state_effecter_states_req req,
uint16_t  effecter_id,
uint8_t  device_type,
uint8_t  board_info,
uint8_t  event_type 
)

◆ pldm_load_state_effecter_table()

void pldm_load_state_effecter_table ( uint16_t  state_effecter_index)
Here is the call graph for this function:

◆ pldm_monitor_handler_query()

uint8_t pldm_monitor_handler_query ( uint8_t  code,
void **  ret_fn 
)

◆ pldm_platform_event_message_req()

uint8_t pldm_platform_event_message_req ( void *  mctp_inst,
mctp_ext_params  ext_params,
uint8_t  event_class,
const uint8_t *  event_data,
uint8_t  event_data_length 
)
Here is the call graph for this function:

◆ pldm_platform_monitor_read()

uint16_t pldm_platform_monitor_read ( void *  mctp_inst,
mctp_ext_params  ext_params,
pldm_platform_monitor_commands_t  cmd,
uint8_t *  req,
uint16_t  req_len,
uint8_t *  rbuf,
uint16_t  rbuf_len 
)
Here is the call graph for this function:

◆ pldm_send_platform_event()

uint8_t pldm_send_platform_event ( uint8_t  event_class,
uint16_t  id,
uint8_t  ext_class,
const uint8_t *  event_data,
uint8_t  event_data_length 
)

◆ pldm_send_set_state_effecter_states_req()

uint8_t pldm_send_set_state_effecter_states_req ( struct pldm_set_state_effecter_states_req req,
void *  mctp_inst,
mctp_ext_params  ext_params 
)
Here is the call graph for this function:

◆ pldm_sensor_cal()

float pldm_sensor_cal ( uint8_t *  buf,
uint8_t  len,
pldm_sensor_readings_data_type_t  data_type,
pldm_sensor_pdr_parm  parm 
)
Here is the call graph for this function:

◆ pldm_spi_reinit()

void pldm_spi_reinit ( const char *  spi_dev_str,
const uint8_t *  buf,
uint16_t  len,
uint8_t *  resp,
uint16_t *  resp_len 
)

◆ set_effecter_state_gpio_handler()

void set_effecter_state_gpio_handler ( const uint8_t *  buf,
uint16_t  len,
uint8_t *  resp,
uint16_t *  resp_len,
uint8_t  gpio_pin 
)
Here is the call graph for this function:

Variable Documentation

◆ __attribute__

◆ completion_code

uint8_t completion_code

◆ composite_effecter_count

uint8_t composite_effecter_count

◆ composite_sensor_count

uint8_t composite_sensor_count

◆ data_transfer_handle

uint32_t data_transfer_handle

◆ data_transfer_handle_timeout

uint8_t data_transfer_handle_timeout

◆ effecter_event_class

uint8_t effecter_event_class

◆ effecter_id

uint16_t effecter_id

◆ effecter_op_state

uint8_t effecter_op_state

◆ effecter_state

uint8_t effecter_state

◆ event_class

uint8_t event_class

◆ event_class_data

uint8_t event_class_data

◆ event_data

uint8_t event_data[PLDM_MONITOR_EVENT_DATA_SIZE_MAX]

◆ event_message_global_enable

uint8_t event_message_global_enable

◆ event_receiver_address_info

uint8_t event_receiver_address_info

◆ event_receiver_max_buffer_size

uint16_t event_receiver_max_buffer_size

◆ event_state

uint8_t event_state

◆ field

state_sensor_reading_state_field_t field

◆ format_version

uint8_t format_version

◆ heartbeat_timer

uint16_t heartbeat_timer

◆ largest_record_size

uint32_t largest_record_size

◆ next_data_transfer_handle

uint32_t next_data_transfer_handle

◆ next_record_handle

uint32_t next_record_handle

◆ oem_update_time

uint8_t oem_update_time[TIMESTAMP104_SIZE]

◆ op_state

uint8_t op_state

◆ pending_state

uint8_t pending_state

◆ platform_event_status

uint8_t platform_event_status

◆ pre_event_state

uint8_t pre_event_state

◆ pre_op_state

uint8_t pre_op_state

◆ present_op_state

uint8_t present_op_state

◆ present_reading

uint8_t present_reading

◆ present_state

uint8_t present_state

◆ previous_event_state

uint8_t previous_event_state

◆ previous_op_state

uint8_t previous_op_state

◆ previous_state

uint8_t previous_state

◆ reading

uint8_t reading[1]

◆ rearm_event_state

uint8_t rearm_event_state

◆ record_change_number

uint16_t record_change_number

◆ record_count

uint32_t record_count

◆ record_data

uint8_t record_data[NUMERIC_PDR_SIZE]

◆ record_handle

uint32_t record_handle

◆ repository_size

uint32_t repository_size

◆ repository_state

uint8_t repository_state

◆ request_count

uint16_t request_count

◆ response_count

uint16_t response_count

◆ rsv

uint8_t rsv

◆ sensor_data_size

uint8_t sensor_data_size

◆ sensor_event_class_type

uint8_t sensor_event_class_type

◆ sensor_event_message_enable

uint8_t sensor_event_message_enable

◆ sensor_id

uint16_t sensor_id

◆ sensor_offset

uint8_t sensor_offset

◆ sensor_ofst

uint16_t sensor_ofst

◆ sensor_op_state

uint8_t sensor_op_state

◆ sensor_operational_state

uint8_t sensor_operational_state

◆ sensor_rearm

uint8_t sensor_rearm

◆ set_request

uint8_t set_request

◆ state_effecter_table

struct pldm_state_effecter_info* state_effecter_table
extern

◆ term_max_buff_size

uint16_t term_max_buff_size

◆ tid

uint8_t tid

◆ transfer_flag

uint8_t transfer_flag

◆ transfer_operation_flag

uint8_t transfer_operation_flag

◆ transport_protocol_type

uint8_t transport_protocol_type

◆ update_time

uint8_t update_time[TIMESTAMP104_SIZE]