firmware: arm_ffa: Add support for MEM_LEND
authorMarc Bonnici <marc.bonnici@arm.com>
Fri, 15 Oct 2021 16:57:42 +0000 (17:57 +0100)
committerSudeep Holla <sudeep.holla@arm.com>
Mon, 18 Oct 2021 12:11:06 +0000 (13:11 +0100)
commit82a8daaecfd9382e9450a05f86be8a274cf69a27
treed7eb418850dc994495b0cd06f1ff0f30ef1bbc3e
parent8e3f9da608f14cfebac2659d8dd8737b79d01308
firmware: arm_ffa: Add support for MEM_LEND

As part of the FF-A spec, an endpoint is allowed to transfer access of,
or lend, a memory region to one or more borrowers.

Extend the existing memory sharing implementation to support
FF-A MEM_LEND functionality and expose this to other kernel drivers.

Note that upon a successful MEM_LEND request the caller must ensure that
the memory region specified is not accessed until a successful
MEM_RECALIM call has been made. On systems with a hypervisor present
this will been enforced, however on systems without a hypervisor the
responsibility falls to the calling kernel driver to prevent access.

Link: https://lore.kernel.org/r/20211015165742.2513065-1-marc.bonnici@arm.com
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Signed-off-by: Marc Bonnici <marc.bonnici@arm.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
drivers/firmware/arm_ffa/driver.c
include/linux/arm_ffa.h