PSA FF-A: update RX/TX buffer as per spec

PSA FF-A v1.0 spec describes RX/TX buffers as reference to memory-region
entries in the partition manifest which is described as RX/TX buffers.
In device tree terms, RX/TX nodes points to entries in memory-region
node using phandle.

This patch introduces RX and TX pointers which points to memory-region
type structure and is populated when memory-region node is parsed.

Change-Id: Ia04b9d082bacf3e6cb227e74dbf875c5e0680648
Signed-off-by: Manish Pandey <manish.pandey2@arm.com>
diff --git a/inc/hf/manifest.h b/inc/hf/manifest.h
index 3d8dfb2..1299c5e 100644
--- a/inc/hf/manifest.h
+++ b/inc/hf/manifest.h
@@ -93,6 +93,18 @@
 };
 
 /**
+ * RX/TX buffer, reference to memory-region entries that describe RX/TX
+ * buffers in partition manifest.
+ */
+struct rx_tx {
+	bool available;
+	uint32_t rx_phandle;
+	uint32_t tx_phandle;
+	struct memory_region *rx_buffer;
+	struct memory_region *tx_buffer;
+};
+
+/**
  * Partition manifest as described in PSA FF-A v1.0 spec section 3.1
  */
 struct sp_manifest {
@@ -123,17 +135,7 @@
 	uint16_t boot_order;
 
 	/** Optional RX/TX buffers */
-	struct {
-		bool rxtx_found;
-		/** optional */
-		uint64_t base_address;
-		/** optional */
-		uint16_t pages_count;
-		/** mandatory */
-		uint16_t attributes;
-		/** Optional */
-		char name[SP_RTX_BUF_NAME_SIZE];
-	} rxtx;
+	struct rx_tx rxtx;
 
 	/** mandatory - direct/indirect msg or both */
 	enum messaging_method messaging_method;