]> www.infradead.org Git - users/jedix/linux-maple.git/commit
firmware: arm_ffa: Add support for FFA_YIELD in direct messaging
authorSudeep Holla <sudeep.holla@arm.com>
Tue, 20 Aug 2024 14:27:59 +0000 (15:27 +0100)
committerSudeep Holla <sudeep.holla@arm.com>
Tue, 20 Aug 2024 14:40:45 +0000 (15:40 +0100)
commiteaca7ef8f31a9040021683d381ddb83eb6fd7774
tree0f86a6762c7779389e6e8b595891e12bec378762
parentaaef3bc98129c86078b336f16788dd733b0728a4
firmware: arm_ffa: Add support for FFA_YIELD in direct messaging

Successful completion of both direct messaging function can be indicated
through an invocation of FFA_YIELD or GGA_INTERRUPT by the callee.

FFA_INTERRUPT indicates that the direct request was interrupted and must
be resumed through the FFA_RUN interface which is already done in the
driver.

FFA_YIELD indicates that the receiver endpoint has transitioned to the
blocked runtime state and must be resumed through the FFA_RUN interface.
However, the way receiver endpoint gets unblocked is implementation
defined. So, the driver just sleeps for 1 - 2ms and issues FFA_RUN. It
can return to the caller with FFA_YIELD is the receiver endpoint is still
blocked.

Message-Id: <20240820-ffa_v1-2-v2-6-18c0c5f3c65e@arm.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
drivers/firmware/arm_ffa/driver.c