In most cases with the main IPC drivers, communication is one-way and the command messages do not require a response. Certain functions though, such as “data read” type functions, require data to be returned to the sending processor. In these cases, a Response Flag and address to read the data back into are also passed as parameters into the command function being sent. The response flag must be selected from IPC flags 17-32 only. In this IPCMtoCDataRead example, IPC_FLAG17 is the response flag that the function sets to indicate it has sent a command requiring a response. The receiving processor will call an IPC “write” function back to the sending processor in response to the “read” command and pass the response flag back to the sending processor. The sending processor’s own IPC ISR will then “Get” and process the data write command and clear the Response flag. When the sending processor’s application code needs the response data, it checks that the appropriate response flag is clear, indicating that the data is ready to be read from the designated address.