Lines Matching refs:message

30  * 990610 (jmt) - Finished the message passing framework and it seems to work.
33 * IOP. The trick now is figuring out the message formats.
65 * The host talks to the IOPs using a rather simple message-passing scheme via
69 * an incoming and an outgoing message queue with a depth of one.
71 * A message is 32 bytes plus a state byte for the channel (MSG_IDLE, MSG_NEW,
72 * MSG_RCVD, MSG_COMPLETE). To send a message you copy the message into the
75 * receives the message and then to MSG_COMPLETE when the message processing
80 * To receive message from the IOP the same procedure is used except the roles
81 * are reversed. That is, the IOP puts message in the channel with a state of
82 * MSG_NEW, and the host receives the message and move its state to MSG_RCVD
93 * Since each channel handles only one message we have to implement a small
96 * The handler for a message is called when the message state goes to
99 * For receiving message we maintain a list of handler functions to call when
100 * a message is received on that IOP/channel combination. The handlers are
101 * called much like an interrupt handler and are passed a copy of the message
102 * from the IOP. The message state will be in MSG_RCVD while the handler runs;
104 * finished; this function moves the message state to MSG_COMPLETE and signals
106 * message processing to a bottom-half handler if the processing will take
157 * IOP message queues
323 * Complete reception of a message, which just means copying the reply
351 * Actually put a message into a send channel buffer
359 iop_pr_debug("iop_num %d chan %d message %*ph\n",
360 msg->iop_num, msg->channel, IOP_MSG_LEN, msg->message);
365 iop_writeb(iop, offset, msg->message[i]);
374 * Handle sending a message on a channel that
405 * Handle reception of a message on a channel that has
424 msg->message[i] = iop_readb(iop, offset);
426 iop_pr_debug("iop_num %d chan %d message %*ph\n",
427 iop_num, chan, IOP_MSG_LEN, msg->message);
432 /* the message ourselves to avoid possible stalls. */
443 * Send a message
445 * The message is placed at the end of the send queue. Afterwards if the
446 * channel is idle we force an immediate send of the next message in the
468 memcpy(msg->message, msg_data, msg_len);
551 /* INT0 indicates state change on an outgoing message channel */