int nfc_fsm_event_post(int event, void * event_data, struct nfc_msg_cb *msg_cb) { struct fsm_event_message * evt = (struct fsm_event_message *) balloc(sizeof(*evt), NULL); MESSAGE_ID(&evt->m) = NFC_FSM_EVENT_MESSAGE; MESSAGE_DST(&evt->m) = fsm_port_id; evt->event = event; evt->event_data = event_data; evt->msg_cb = msg_cb; return port_send_message(&evt->m); }
/** * \brief send a message to handle_ipc_request_port() * * \param msgid the message id to generate. can be \ref IPC_MESSAGE_FREE * or \ref IPC_MESSAGE_SEND * \param message the message data to send / free */ static int ipc_request_send(uint16_t msgid, void * message) { OS_ERR_TYPE err = E_OS_OK; struct ipc_async_msg * msg = (struct ipc_async_msg *) balloc(sizeof(*msg), &err); if (err == E_OS_OK) { MESSAGE_ID(&msg->h) = msgid; MESSAGE_DST(&msg->h) = ipc_port; MESSAGE_SRC(&msg->h) = ipc_port; msg->data = message; port_send_message(&msg->h); } return err; }
int _cfw_send_message(struct cfw_message * message) { return port_send_message(CFW_MESSAGE_HEADER(message)); }