Lines Matching refs:msg
299 struct ipmi_smi_msg *msg);
319 struct ipmi_smi_msg *msg) in deliver_recv_msg() argument
324 ipmi_free_smi_msg(msg); in deliver_recv_msg()
325 } else if (msg->rsp_size < 0) { in deliver_recv_msg()
326 return_hosed_msg(ssif_info, msg); in deliver_recv_msg()
329 msg->rsp_size); in deliver_recv_msg()
331 ipmi_smi_msg_received(intf, msg); in deliver_recv_msg()
336 struct ipmi_smi_msg *msg) in return_hosed_msg() argument
341 msg->rsp[0] = msg->data[0] | 4; in return_hosed_msg()
342 msg->rsp[1] = msg->data[1]; in return_hosed_msg()
343 msg->rsp[2] = 0xFF; /* Unknown error. */ in return_hosed_msg()
344 msg->rsp_size = 3; in return_hosed_msg()
346 deliver_recv_msg(ssif_info, msg); in return_hosed_msg()
357 unsigned char msg[3]; in start_clear_flags() local
364 msg[0] = (IPMI_NETFN_APP_REQUEST << 2); in start_clear_flags()
365 msg[1] = IPMI_CLEAR_MSG_FLAGS_CMD; in start_clear_flags()
366 msg[2] = WDT_PRE_TIMEOUT_INT; in start_clear_flags()
368 if (start_send(ssif_info, msg, 3) != 0) { in start_clear_flags()
389 struct ipmi_smi_msg *msg) in check_start_send() argument
391 if (start_send(ssif_info, msg->data, msg->data_size) != 0) { in check_start_send()
398 ipmi_free_smi_msg(msg); in check_start_send()
404 struct ipmi_smi_msg *msg; in start_event_fetch() local
408 msg = ipmi_alloc_smi_msg(); in start_event_fetch()
409 if (!msg) { in start_event_fetch()
414 ssif_info->curr_msg = msg; in start_event_fetch()
418 msg->data[0] = (IPMI_NETFN_APP_REQUEST << 2); in start_event_fetch()
419 msg->data[1] = IPMI_READ_EVENT_MSG_BUFFER_CMD; in start_event_fetch()
420 msg->data_size = 2; in start_event_fetch()
422 check_start_send(ssif_info, flags, msg); in start_event_fetch()
428 struct ipmi_smi_msg *msg; in start_recv_msg_fetch() local
430 msg = ipmi_alloc_smi_msg(); in start_recv_msg_fetch()
431 if (!msg) { in start_recv_msg_fetch()
436 ssif_info->curr_msg = msg; in start_recv_msg_fetch()
440 msg->data[0] = (IPMI_NETFN_APP_REQUEST << 2); in start_recv_msg_fetch()
441 msg->data[1] = IPMI_GET_MSG_CMD; in start_recv_msg_fetch()
442 msg->data_size = 2; in start_recv_msg_fetch()
444 check_start_send(ssif_info, flags, msg); in start_recv_msg_fetch()
596 struct ipmi_smi_msg *msg; in msg_done_handler() local
726 msg = ssif_info->curr_msg; in msg_done_handler()
727 if (msg) { in msg_done_handler()
728 msg->rsp_size = len; in msg_done_handler()
729 if (msg->rsp_size > IPMI_MAX_MSG_LENGTH) in msg_done_handler()
730 msg->rsp_size = IPMI_MAX_MSG_LENGTH; in msg_done_handler()
731 memcpy(msg->rsp, data, msg->rsp_size); in msg_done_handler()
738 if (!msg) in msg_done_handler()
742 return_hosed_msg(ssif_info, msg); in msg_done_handler()
744 deliver_recv_msg(ssif_info, msg); in msg_done_handler()
785 if ((result < 0) || (len < 3) || (msg->rsp[2] != 0)) { in msg_done_handler()
787 msg->done(msg); in msg_done_handler()
792 } else if (msg->rsp[0] != (IPMI_NETFN_APP_REQUEST | 1) << 2 in msg_done_handler()
793 || msg->rsp[1] != IPMI_READ_EVENT_MSG_BUFFER_CMD) { in msg_done_handler()
795 msg->rsp[0], msg->rsp[1]); in msg_done_handler()
796 msg->done(msg); in msg_done_handler()
803 deliver_recv_msg(ssif_info, msg); in msg_done_handler()
808 if ((result < 0) || (len < 3) || (msg->rsp[2] != 0)) { in msg_done_handler()
810 msg->done(msg); in msg_done_handler()
815 } else if (msg->rsp[0] != (IPMI_NETFN_APP_REQUEST | 1) << 2 in msg_done_handler()
816 || msg->rsp[1] != IPMI_GET_MSG_CMD) { in msg_done_handler()
818 msg->rsp[0], msg->rsp[1]); in msg_done_handler()
819 msg->done(msg); in msg_done_handler()
827 deliver_recv_msg(ssif_info, msg); in msg_done_handler()
1000 struct ipmi_smi_msg *msg; in start_next_msg() local
1022 msg = ssif_info->curr_msg; in start_next_msg()
1024 return_hosed_msg(ssif_info, msg); in start_next_msg()
1032 struct ipmi_smi_msg *msg) in sender() argument
1038 ssif_info->waiting_msg = msg; in sender()
1048 msg->data[0], msg->data[1], in sender()
1206 static int do_cmd(struct i2c_client *client, int len, unsigned char *msg, in do_cmd() argument
1214 ret = i2c_smbus_write_block_data(client, SSIF_IPMI_REQUEST, len, msg); in do_cmd()
1238 (resp[0] != (msg[0] | (1 << 2))) || in do_cmd()
1239 (resp[1] != msg[1])) in do_cmd()
1253 unsigned char msg[3]; in ssif_detect() local
1262 msg[0] = IPMI_NETFN_APP_REQUEST << 2; in ssif_detect()
1263 msg[1] = IPMI_GET_DEVICE_ID_CMD; in ssif_detect()
1264 rv = do_cmd(client, 2, msg, &len, resp); in ssif_detect()
1412 unsigned char msg[3]; in ssif_probe() local
1454 msg[0] = IPMI_NETFN_APP_REQUEST << 2; in ssif_probe()
1455 msg[1] = IPMI_GET_DEVICE_ID_CMD; in ssif_probe()
1456 rv = do_cmd(client, 2, msg, &len, resp); in ssif_probe()
1468 msg[0] = IPMI_NETFN_APP_REQUEST << 2; in ssif_probe()
1469 msg[1] = IPMI_GET_SYSTEM_INTERFACE_CAPABILITIES_CMD; in ssif_probe()
1470 msg[2] = 0; /* SSIF */ in ssif_probe()
1471 rv = do_cmd(client, 3, msg, &len, resp); in ssif_probe()
1541 msg[0] = IPMI_NETFN_APP_REQUEST << 2; in ssif_probe()
1542 msg[1] = IPMI_CLEAR_MSG_FLAGS_CMD; in ssif_probe()
1543 msg[2] = WDT_PRE_TIMEOUT_INT; in ssif_probe()
1544 rv = do_cmd(client, 3, msg, &len, resp); in ssif_probe()
1550 msg[0] = IPMI_NETFN_APP_REQUEST << 2; in ssif_probe()
1551 msg[1] = IPMI_GET_BMC_GLOBAL_ENABLES_CMD; in ssif_probe()
1552 rv = do_cmd(client, 2, msg, &len, resp); in ssif_probe()
1568 msg[0] = IPMI_NETFN_APP_REQUEST << 2; in ssif_probe()
1569 msg[1] = IPMI_SET_BMC_GLOBAL_ENABLES_CMD; in ssif_probe()
1570 msg[2] = ssif_info->global_enables | IPMI_BMC_EVT_MSG_BUFF; in ssif_probe()
1571 rv = do_cmd(client, 3, msg, &len, resp); in ssif_probe()
1585 msg[0] = IPMI_NETFN_APP_REQUEST << 2; in ssif_probe()
1586 msg[1] = IPMI_SET_BMC_GLOBAL_ENABLES_CMD; in ssif_probe()
1587 msg[2] = ssif_info->global_enables | IPMI_BMC_RCV_MSG_INTR; in ssif_probe()
1588 rv = do_cmd(client, 3, msg, &len, resp); in ssif_probe()