[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [XEN PATCH v8 13/22] xen/arm: ffa: support guest FFA_PARTITION_INFO_GET



Hi Jens,

On 13/04/2023 08:14, Jens Wiklander wrote:
Adds support in the mediator to handle FFA_PARTITION_INFO_GET requests
from a guest. The requests are forwarded to the SPMC and the response is
translated according to the FF-A version in use by the guest.

Using FFA_PARTITION_INFO_GET changes the owner of the RX buffer to the
caller (the guest in this case), so once it is done with the buffer it
must be released using FFA_RX_RELEASE before another call can be made.

Signed-off-by: Jens Wiklander <jens.wiklander@xxxxxxxxxx>
---
  xen/arch/arm/tee/ffa.c | 137 ++++++++++++++++++++++++++++++++++++++++-
  1 file changed, 134 insertions(+), 3 deletions(-)

diff --git a/xen/arch/arm/tee/ffa.c b/xen/arch/arm/tee/ffa.c
index 127397d8e448..74b8c517afb8 100644
--- a/xen/arch/arm/tee/ffa.c
+++ b/xen/arch/arm/tee/ffa.c
@@ -166,7 +166,18 @@
  #define FFA_MSG_SEND                    0x8400006EU
  #define FFA_MSG_POLL                    0x8400006AU
+/*
+ * Structs below ending with _1_0 are defined in FF-A-1.0-REL and
+ * struct ending with _1_1 are defined in FF-A-1.1-REL0.
+ */
+
  /* Partition information descriptor */
+struct ffa_partition_info_1_0 {
+    uint16_t id;
+    uint16_t execution_context;
+    uint32_t partition_properties;
+};
+
  struct ffa_partition_info_1_1 {
      uint16_t id;
      uint16_t execution_context;
@@ -183,7 +194,8 @@ struct ffa_ctx {
      unsigned int page_count;
      /* FF-A version used by the guest */
      uint32_t guest_vers;
-    bool tx_is_free;
+    bool rx_is_free;

I am a bit confused why this is renamed. Did you introduce tx_is_free by mistake? If not, can you name the field correctly from when it is introduced?

Cheers,

--
Julien Grall



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.