[PATCH 0/2] ACPI: Arm FFH: Add support for OpRegion Offset 2 (FF-A DIRECT_REQ2)
Sudeep Holla
sudeep.holla at kernel.org
Tue Nov 3 09:39:05 PST 2026
Hi,
This patch series extends the existing Linux kernel ACPI Functional Fixed
Hardware (FFH) Operation Region support to accommodate FFH Operation Region
Offset 2, as introduced in the Arm Functional Fixed Hardware Specification
v1.3.
Background
----------
The Arm FFH Specification v1.3 adds support for FFH Operation Region Offset 2.
An OpRegion declared with an offset of 2 triggers an FFA_MSG_SEND_DIRECT_REQ2
call instead of using legacy SMC/HVC or standard DIRECT_REQ variants.
This mechanism allows the platform's ACPI firmware to interact directly
with secure partitions by evaluating a service UUID.
Implementation
--------------
- Upgrades the arm64 low-level FFH handler beyond generic SMCCC calls to
natively support the FF-A protocol. It negotiates FF-A v1.2, identifies
sender endpoints via FFA_ID_GET, translates ACPI ToUUID properties to
register formats, handles interrupted/yielded calls via FFA_RUN, and
returns standard FFH status codes to AML.
- Leverages register-based endpoint discovery (FFA_PARTITION_INFO_GET_REGS)
to resolve unique receivers from service UUIDs. This approach completely
avoids RX/TX memory buffer ownership complexities, keeping the low-level
ACPI FFH subsystem cleanly decoupled from the main Arm FF-A transport
driver.
Sudeep Holla (2):
firmware: arm_ffa: Share FF-A register field definitions
ACPI: FFH: Support FF-A direct request 2 calls
drivers/acpi/arm64/ffh.c | 227 ++++++++++++++++++++++++++++++
drivers/firmware/arm_ffa/driver.c | 48 +++----
include/linux/arm_ffa.h | 19 +++
3 files changed, 263 insertions(+), 31 deletions(-)
--
2.43.0
More information about the linux-arm-kernel
mailing list