libsp: Add FF-A direct message routing extension
The routing extension is a layer on top of FF-A which enables SPs to
send direct messages to the normal world component while maintaining
the state of the SPs in the call chain.
Change-Id: Ic4d6d5cbbccbe1adb534e7b8d2502b78b3d9cb04
Signed-off-by: Imre Kis <imre.kis@arm.com>
diff --git a/components/messaging/ffa/libsp/include/sp_messaging.h b/components/messaging/ffa/libsp/include/sp_messaging.h
index 3ee5aae..4bb45f7 100644
--- a/components/messaging/ffa/libsp/include/sp_messaging.h
+++ b/components/messaging/ffa/libsp/include/sp_messaging.h
@@ -57,6 +57,18 @@
sp_result sp_msg_send_direct_resp(const struct sp_msg *resp,
struct sp_msg *req);
+#if FFA_DIRECT_MSG_ROUTING_EXTENSION
+/**
+ * @brief Sends a request on the return channel and waits for the response
+ * message which it returns then.
+ *
+ * @param[in] req The request message
+ * @param[out] resp The response message
+ * @return The SP API result
+ */
+sp_result sp_msg_send_rc_req(const struct sp_msg *req, struct sp_msg *resp);
+#endif /* FFA_DIRECT_MSG_ROUTING_EXTENSION */
+
#ifdef __cplusplus
}
#endif