zephyr/drivers/ipm/Kconfig
Tanmay Shah 09e2a4e9eb drivers: ipm: add zynqmp r5f support
Add ipm driver to use Inter Processor Interrupts
on Xilinx ZynqMP platform. This patch also adds sample
application that shows use of xlnx ipm driver.

This driver uses default arm gic interrupt controller
and works only for lockstep mode of cortex-r5f
cluster for now.

In split mode the cortex-r5 cluster will
have two r5f cores and they are expected to work in AMP
mode. If both r5f cores run simultaneouly, only one of
the core is able to receive IPI interrupts at this time
and it will be the one that started later. In future
this limitation shall be removed.

Signed-off-by: Tanmay Shah <tanmay.shah@amd.com>
2023-08-15 11:23:04 +00:00

70 lines
1.6 KiB
Plaintext

# SPDX-License-Identifier: Apache-2.0
menuconfig IPM
bool "Inter-Processor Mailbox (IPM) drivers"
help
Include interrupt-based inter-processor mailboxes
drivers in system configuration
if IPM
config IPM_MHU
bool "IPM MHU driver"
default y
depends on DT_HAS_ARM_MHU_ENABLED
help
Driver for SSE 200 MHU (Message Handling Unit)
config IPM_NRFX
bool "IPM NRF driver"
default y
depends on DT_HAS_NORDIC_NRF_IPC_ENABLED
select NRFX_IPC
help
Driver for Nordic nRF messaging unit, based
on nRF IPC peripheral HW.
config IPM_NRF_SINGLE_INSTANCE
bool "Single instance of IPM device"
help
Enable this option if the IPM device should have
a single instance, instead of one per IPC
message channel.
config ESP32_SOFT_IPM
bool "ESP32 Software IPM driver"
default y
depends on DT_HAS_ESPRESSIF_ESP32_IPM_ENABLED
help
Interprocessor driver for ESP32 when using AMP.
config IPM_IVSHMEM
bool "IPM driver based on IVSHMEM-Doorbell"
default y
depends on DT_HAS_LINARO_IVSHMEM_IPM_ENABLED
depends on IVSHMEM
depends on IVSHMEM_DOORBELL
help
Interprocessor driver using IVSHMEM Doorbell mechanism.
config XLNX_IPI
bool "AMD-Xilinx IPM driver"
default y
depends on DT_HAS_XLNX_ZYNQMP_IPI_MAILBOX_ENABLED
help
Inter Processor Interrupt driver for AMD-Xilinx
platforms such as ZynqMP Ultrascale+.
source "drivers/ipm/Kconfig.nrfx"
source "drivers/ipm/Kconfig.imx"
source "drivers/ipm/Kconfig.stm32"
source "drivers/ipm/Kconfig.intel_adsp"
source "drivers/ipm/Kconfig.ivshmem"
module = IPM
module-str = ipm
source "subsys/logging/Kconfig.template.log_config"
endif #IPM