feat(ff-a): add v1.2 fields to RXTX header
Add the new fields introduced in v1.2 to the partition message header.
This will fix the tests that were failing due to the `offset` being too small.
Change-Id: I58ddd8f6897d0e46b7c7f754fde7ecddd012a0ca
Signed-off-by: Karl Meakin <karl.meakin@arm.com>
diff --git a/include/runtime_services/ffa_helpers.h b/include/runtime_services/ffa_helpers.h
index 4dc3f53..0a63e96 100644
--- a/include/runtime_services/ffa_helpers.h
+++ b/include/runtime_services/ffa_helpers.h
@@ -357,8 +357,8 @@
*/
struct ffa_partition_rxtx_header {
uint32_t flags;
- /* MBZ */
- uint32_t reserved;
+ /* Reserved (SBZ). */
+ uint32_t reserved_1;
/* Offset from the beginning of the buffer to the message payload. */
uint32_t offset;
/* Sender(Bits[31:16]) and Receiver(Bits[15:0]) endpoint IDs. */
@@ -366,6 +366,10 @@
ffa_id_t sender;
/* Size of message in buffer. */
uint32_t size;
+ /* Reserved (SBZ). Added in v1.2 */
+ uint32_t reserved_2;
+ /* UUID identifying the communication protocol. Added in v1.2. */
+ struct ffa_uuid uuid;
};
#define FFA_RXTX_HEADER_SIZE sizeof(struct ffa_partition_rxtx_header)
@@ -375,11 +379,13 @@
struct ffa_partition_rxtx_header *header)
{
header->flags = 0;
- header->reserved = 0;
+ header->reserved_1 = 0;
header->offset = FFA_RXTX_HEADER_SIZE;
header->sender = sender;
header->receiver = receiver;
header->size = size;
+ header->reserved_2 = 0;
+ header->uuid = (struct ffa_uuid){0};
}
/* The maximum length possible for a single message. */