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