28typedef uint8_t (*
mctp_ctrl_cmd_fn)(
void *, uint8_t *, uint16_t, uint8_t *, uint16_t *,
void *);
35#define MCTP_BASE_LINE_UNIT 64
37#define MCTP_CTRL_CMD_SET_ENDPOINT_ID 0x01
38#define MCTP_CTRL_CMD_GET_ENDPOINT_ID 0x02
40#define MCTP_CTRL_CMD_GET_MESSAGE_TYPE_SUPPORT 0x05
42#define MCTP_CTRL_CMD_GET_ENDPOINT_ID_REQ_LEN 0x00
44#define MCTP_CTRL_READ_STATUS_SUCCESS 0x00
45#define MCTP_CTRL_READ_STATUS_CC_ERROR 0x01
46#define MCTP_CTRL_READ_STATUS_TIMEOUT 0x02
52#define MCTP_CTRL_CC_SUCCESS 0x00
53#define MCTP_CTRL_CC_ERROR 0x01
54#define MCTP_CTRL_CC_ERROR_INVALID_DATA 0x02
55#define MCTP_CTRL_CC_ERROR_INVALID_LENGTH 0x03
56#define MCTP_CTRL_CC_ERROR_NOT_READY 0x04
57#define MCTP_CTRL_CC_ERROR_UNSUPPORTED_CMD 0x05
59#define SET_EID_REQ_OP_SET_EID 0x00
60#define SET_EID_REQ_OP_FORCE_EID 0x01
110 uint8_t msg_type : 7;
131 void (*recv_resp_cb_fn)(
void *, uint8_t *, uint16_t);
134 void (*timeout_cb_fn)(
void *);
uint8_t cmd
Definition: isl69259.c:1
uint8_t eid
Definition: mctp_ctrl.h:1
struct _mctp_ctrl_resp_arg mctp_ctrl_resp_arg
endpoint_type
Definition: mctp_ctrl.h:74
@ SIMPLE_ENDPOINT
Definition: mctp_ctrl.h:75
@ BRIDGE
Definition: mctp_ctrl.h:76
void plat_update_mctp_routing_table(uint8_t eid)
Definition: mctp_ctrl.c:52
message_type
Definition: mctp_ctrl.h:87
@ TYPE_MAX_SIZE
Definition: mctp_ctrl.h:90
@ TYPE_PLDM
Definition: mctp_ctrl.h:89
@ TYPE_MCTP_CONTROL
Definition: mctp_ctrl.h:88
typedef __attribute__
Definition: mctp_ctrl.h:109
uint8_t mctp_ctrl_read(void *mctp_p, mctp_ctrl_msg *msg, uint8_t *read_buf, uint16_t read_len)
Definition: mctp_ctrl.c:423
struct _mctp_ctrl_cmd_handler mctp_ctrl_cmd_handler_t
mctp_ctrl_hdr
Definition: mctp_ctrl.h:124
uint8_t(* mctp_ctrl_cmd_fn)(void *, uint8_t *, uint16_t, uint8_t *, uint16_t *, void *)
Definition: mctp_ctrl.h:28
uint8_t mctp_ctrl_cmd_handler(void *mctp_p, uint8_t *buf, uint32_t len, mctp_ext_params ext_params)
Definition: mctp_ctrl.c:257
uint8_t mctp_ctrl_send_msg(void *mctp_p, mctp_ctrl_msg *msg)
Definition: mctp_ctrl.c:362
eid_type
Definition: mctp_ctrl.h:79
@ DYNAMIC_EID
Definition: mctp_ctrl.h:80
@ STATIC_EID
Definition: mctp_ctrl.h:81
Definition: pldm_smbios.h:61
Definition: mctp_ctrl.h:99
uint8_t medium_specific_info
Definition: mctp_ctrl.h:106
uint8_t eid
Definition: mctp_ctrl.h:101
uint8_t completion_code
Definition: mctp_ctrl.h:100
uint8_t endpoint_type
Definition: mctp_ctrl.h:104
uint8_t eid_type
Definition: mctp_ctrl.h:102
Definition: mctp_ctrl.h:93
uint8_t type_count
Definition: mctp_ctrl.h:95
uint8_t type_number[0]
Definition: mctp_ctrl.h:96
uint8_t completion_code
Definition: mctp_ctrl.h:94
Definition: mctp_ctrl.h:30
uint8_t cmd_code
Definition: mctp_ctrl.h:31
mctp_ctrl_cmd_fn fn
Definition: mctp_ctrl.h:32
Definition: mctp_ctrl.h:138
struct k_msgq * msgq
Definition: mctp_ctrl.h:139
uint16_t read_len
Definition: mctp_ctrl.h:141
uint16_t return_len
Definition: mctp_ctrl.h:142
uint8_t * read_buf
Definition: mctp_ctrl.h:140
Definition: mctp_ctrl.h:62
uint8_t eid
Definition: mctp_ctrl.h:64
uint8_t op
Definition: mctp_ctrl.h:63
Definition: mctp_ctrl.h:67
uint8_t eid_pool_size
Definition: mctp_ctrl.h:71
uint8_t status
Definition: mctp_ctrl.h:69
uint8_t completion_code
Definition: mctp_ctrl.h:68
uint8_t eid
Definition: mctp_ctrl.h:70
Definition: mctp_ctrl.h:126
void * recv_resp_cb_args
Definition: mctp_ctrl.h:132
mctp_ctrl_hdr hdr
Definition: mctp_ctrl.h:127
void * timeout_cb_fn_args
Definition: mctp_ctrl.h:135
uint16_t timeout_ms
Definition: mctp_ctrl.h:133
uint16_t cmd_data_len
Definition: mctp_ctrl.h:129
mctp_ext_params ext_params
Definition: mctp_ctrl.h:130
uint8_t * cmd_data
Definition: mctp_ctrl.h:128