All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sudeep Holla <sudeep.holla@arm.com>
To: linux-arm-kernel@lists.infradead.org
Cc: Marc Bonnici <marc.bonnici@arm.com>,
	 Olivier Deprez <Olivier.Deprez@arm.com>,
	 Lorenzo Pieralisi <lpieralisi@kernel.org>,
	 Bertrand Marquis <Bertrand.Marquis@arm.com>,
	 Jens Wiklander <jens.wiklander@linaro.org>,
	 Sudeep Holla <sudeep.holla@arm.com>
Subject: [PATCH 1/4] firmware: arm_ffa: Stash the partition properties for query purposes
Date: Mon, 15 Apr 2024 17:05:22 +0100	[thread overview]
Message-ID: <20240415-ffa_msg2_support-v1-1-a28c964b1b3f@arm.com> (raw)
In-Reply-To: <20240415-ffa_msg2_support-v1-0-a28c964b1b3f@arm.com>

The properies obtained from the partition information descriptor as
part of initial partitions discovery is useful as it contain info
if the partition
- Runs in AArch64 or AArch32 execution state
- Can send and/or receive direct requests
- Can send and receive indirect message
- Does support receipt of notifications.

These can be used for querying before attempting to do any of the
above operations.

Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
---
 drivers/firmware/arm_ffa/driver.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/drivers/firmware/arm_ffa/driver.c b/drivers/firmware/arm_ffa/driver.c
index 9bc2e10381af..d258d04c1eda 100644
--- a/drivers/firmware/arm_ffa/driver.c
+++ b/drivers/firmware/arm_ffa/driver.c
@@ -721,6 +721,7 @@ static int ffa_notification_get(u32 flags, struct ffa_notify_bitmaps *notify)
 }
 
 struct ffa_dev_part_info {
+	u32 properties;
 	ffa_sched_recv_cb callback;
 	void *cb_data;
 	rwlock_t rw_lock;
@@ -863,6 +864,17 @@ static void ffa_mode_32bit_set(struct ffa_device *dev)
 	dev->mode_32bit = true;
 }
 
+static bool ffa_partition_check_property(struct ffa_device *dev, u32 property)
+{
+	struct ffa_dev_part_info *partition;
+
+	partition = xa_load(&drv_info->partition_info, dev->vm_id);
+	if (!partition)
+		return false;
+
+	return partition->properties & property;
+}
+
 static int ffa_sync_send_receive(struct ffa_device *dev,
 				 struct ffa_send_direct_data *data)
 {
@@ -1236,6 +1248,8 @@ static int ffa_setup_partitions(void)
 			ffa_device_unregister(ffa_dev);
 			continue;
 		}
+
+		info->properties = tpbuf->properties;
 		rwlock_init(&info->rw_lock);
 		ret = xa_insert(&drv_info->partition_info, tpbuf->id,
 				info, GFP_KERNEL);

-- 
2.43.2


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2024-04-15 16:06 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-15 16:05 [PATCH 0/4] firmware: arm_ffa: Support for MSG_SEND2 and minor harderning checks Sudeep Holla
2024-04-15 16:05 ` Sudeep Holla [this message]
2024-04-15 16:05 ` [PATCH 2/4] firmware: arm_ffa: Check if receiving direct requests are supported before sending Sudeep Holla
2024-04-16  7:18   ` Jens Wiklander
2024-04-15 16:05 ` [PATCH 3/4] firmware: arm_ffa: Check if receiving notifications " Sudeep Holla
2024-04-16  7:31   ` Jens Wiklander
2024-04-15 16:05 ` [PATCH 4/4] firmware: arm_ffa: Add support for FFA_MSG_SEND2 Sudeep Holla
2024-04-16  7:26   ` Bertrand Marquis
2024-04-16  9:47     ` Sudeep Holla
2024-04-16  7:41   ` Jens Wiklander
2024-04-16  8:48     ` Sudeep Holla
2024-04-16 10:53       ` Jens Wiklander

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240415-ffa_msg2_support-v1-1-a28c964b1b3f@arm.com \
    --to=sudeep.holla@arm.com \
    --cc=Bertrand.Marquis@arm.com \
    --cc=Olivier.Deprez@arm.com \
    --cc=jens.wiklander@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=lpieralisi@kernel.org \
    --cc=marc.bonnici@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.