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;