IRONside calls are remote procedure calls which comprise the runtime interface of Nordic IRONside SE. They are realized using a simple IPC mechanism. A local domain (client) issues requests to the server by exchanging data in shared memory, which is divided into evenly sized buffers. The client selects a buffer, writes a request into it, and sends it to the server. The server processes that request and writes a response into the same buffer before returning it to the client. This patch adds the initial client-side implementation on top of MBOX. It features cache management and a blocking alloc/dispatch/release API for synchronous, zero-copy transfers. A new devicetree binding is added to support this implementation. It is patterned after the `zephyr,ipc-*` bindings, where each node associates a pair of mailboxes and a shared memory region. Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
19 lines
397 B
Plaintext
19 lines
397 B
Plaintext
# Copyright 2024 NXP
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
menu "Firmware drivers"
|
|
|
|
config ARM_SCMI
|
|
bool "Support for ARM's SCMI"
|
|
depends on ARM || ARM64
|
|
help
|
|
Enable support for ARM's System Configuration and Management
|
|
Interface (SCMI).
|
|
|
|
# zephyr-keep-sorted-start
|
|
source "drivers/firmware/nrf_ironside/Kconfig"
|
|
source "drivers/firmware/scmi/Kconfig"
|
|
# zephyr-keep-sorted-stop
|
|
|
|
endmenu
|