1# SPDX-License-Identifier: Apache-2.0 2 3menuconfig IPM 4 bool "Inter-Processor Mailbox (IPM) drivers" 5 help 6 Include interrupt-based inter-processor mailboxes 7 drivers in system configuration 8 9if IPM 10 11config IPM_MAX_DATA_SIZE 12 int "Max data size supported" 13 default 0 if IPM_STM32_IPCC || IPM_STM32_HSEM 14 default 1024 15 help 16 Define the max size (in bytes) of data that can be transmitted or 17 received by the IPM device. 18 19config IPM_MHU 20 bool "IPM MHU driver" 21 default y 22 depends on DT_HAS_ARM_MHU_ENABLED 23 help 24 Driver for SSE 200 MHU (Message Handling Unit) 25 26config IPM_NRFX 27 bool "IPM NRF driver" 28 default y 29 depends on DT_HAS_NORDIC_NRF_IPC_ENABLED 30 select NRFX_IPC 31 help 32 Driver for Nordic nRF messaging unit, based 33 on nRF IPC peripheral HW. 34 35config IPM_NRF_SINGLE_INSTANCE 36 bool "Single instance of IPM device" 37 help 38 Enable this option if the IPM device should have 39 a single instance, instead of one per IPC 40 message channel. 41 42config ESP32_SOFT_IPM 43 bool "ESP32 Software IPM driver" 44 default y 45 depends on DT_HAS_ESPRESSIF_ESP32_IPM_ENABLED 46 help 47 Interprocessor driver for ESP32 when using AMP. 48 49config IPM_IVSHMEM 50 bool "IPM driver based on IVSHMEM-Doorbell" 51 default y 52 depends on DT_HAS_LINARO_IVSHMEM_IPM_ENABLED 53 depends on IVSHMEM 54 depends on IVSHMEM_DOORBELL 55 help 56 Interprocessor driver using IVSHMEM Doorbell mechanism. 57 58config XLNX_IPI 59 bool "AMD-Xilinx IPM driver" 60 default y 61 depends on DT_HAS_XLNX_ZYNQMP_IPI_MAILBOX_ENABLED 62 help 63 Inter Processor Interrupt driver for AMD-Xilinx 64 platforms such as ZynqMP Ultrascale+. 65 66config IPM_MBOX 67 bool "IPM over MBOX driver" 68 default y 69 depends on DT_HAS_ZEPHYR_MBOX_IPM_ENABLED 70 select MBOX 71 help 72 IPM driver using a MBOX driver as the backend mechanism. 73 74# zephyr-keep-sorted-start 75source "drivers/ipm/Kconfig.imx" 76source "drivers/ipm/Kconfig.ivshmem" 77source "drivers/ipm/Kconfig.nrfx" 78source "drivers/ipm/Kconfig.sedi" 79source "drivers/ipm/Kconfig.stm32" 80# zephyr-keep-sorted-stop 81 82module = IPM 83module-str = ipm 84source "subsys/logging/Kconfig.template.log_config" 85 86endif #IPM 87