Lines Matching full:mctp

42 		__mctp_msg_alloc(sizeof(*resp), bus->mctp);  in mctp_ctrl_set_endpoint_id()
54 int rc = mctp_message_tx_alloced(bus->mctp, src_eid, false, msg_tag, in mctp_ctrl_set_endpoint_id()
73 __mctp_msg_alloc(sizeof(*resp), bus->mctp); in mctp_ctrl_get_endpoint_id()
86 int rc = mctp_message_tx_alloced(bus->mctp, src_eid, false, msg_tag, in mctp_ctrl_get_endpoint_id()
131 /* Only have versions for MCTP base or control */ in mctp_ctrl_get_version()
137 /* Return only the versions for MCTP */ in mctp_ctrl_get_version()
142 __mctp_msg_alloc(total_sz, bus->mctp); in mctp_ctrl_get_version()
154 int rc = mctp_message_tx_alloced(bus->mctp, src_eid, false, msg_tag, in mctp_ctrl_get_version()
157 mctp_prdebug("mctp get_version response send failed: %d", rc); in mctp_ctrl_get_version()
172 bus->mctp->control.num_msg_types; in mctp_ctrl_get_types()
175 __mctp_msg_alloc(total_sz, bus->mctp); in mctp_ctrl_get_types()
183 resp->type_count = bus->mctp->control.num_msg_types; in mctp_ctrl_get_types()
184 memcpy(resp->types, bus->mctp->control.msg_types, in mctp_ctrl_get_types()
185 bus->mctp->control.num_msg_types); in mctp_ctrl_get_types()
187 int rc = mctp_message_tx_alloced(bus->mctp, src_eid, false, msg_tag, in mctp_ctrl_get_types()
190 mctp_prdebug("mctp get_types response send failed: %d", rc); in mctp_ctrl_get_types()
195 static void reply_error(struct mctp *mctp, uint8_t src_eid, uint8_t msg_tag, in reply_error() argument
199 __mctp_msg_alloc(sizeof(*resp), mctp); in reply_error()
208 int rc = mctp_message_tx_alloced(mctp, src_eid, false, msg_tag, resp, in reply_error()
215 /* Control message request handler. This will respond to the mandatory MCTP control
250 // A valid MCTP Control request has been received, process it in mctp_control_handler()
274 reply_error(bus->mctp, src_eid, msg_tag, ctrl_hdr, cc); in mctp_control_handler()
281 int mctp_control_add_type(struct mctp *mctp, uint8_t msg_type) in mctp_control_add_type() argument
284 for (size_t i = 0; i < mctp->control.num_msg_types; i++) { in mctp_control_add_type()
285 if (mctp->control.msg_types[i] == msg_type) { in mctp_control_add_type()
290 if (mctp->control.num_msg_types == MCTP_CONTROL_MAX_TYPES) { in mctp_control_add_type()
294 mctp->control.msg_types[mctp->control.num_msg_types] = msg_type; in mctp_control_add_type()
295 mctp->control.num_msg_types++; in mctp_control_add_type()
299 void mctp_control_remove_type(struct mctp *mctp, uint8_t msg_type) in mctp_control_remove_type() argument
301 for (size_t i = 0; i < mctp->control.num_msg_types; i++) { in mctp_control_remove_type()
302 if (mctp->control.msg_types[i] == msg_type) { in mctp_control_remove_type()
303 memmove(&mctp->control.msg_types[i], in mctp_control_remove_type()
304 &mctp->control.msg_types[i + 1], in mctp_control_remove_type()
305 mctp->control.num_msg_types - (i + 1)); in mctp_control_remove_type()
306 mctp->control.num_msg_types--; in mctp_control_remove_type()