1# SPDX-License-Identifier: Apache-2.0 2 3menuconfig IPM 4 bool "IPM drivers" 5 help 6 Include interrupt-based inter-processor mailboxes 7 drivers in system configuration 8 9if IPM 10 11config IPM_MCUX 12 bool "MCUX IPM driver" 13 depends on HAS_MCUX 14 help 15 Driver for MCUX mailbox 16 17config IPM_IMX 18 bool "IMX IPM driver" 19 depends on HAS_IMX_HAL 20 help 21 Driver for NXP i.MX messaging unit 22 23choice 24 prompt "IMX IPM max data size" 25 default IPM_IMX_MAX_DATA_SIZE_16 26 depends on IPM_IMX 27 help 28 Select maximum message size for NXP i.MX messaging unit. 29 30config IPM_IMX_MAX_DATA_SIZE_4 31 bool "4 bytes" 32 help 33 There will be four message types with ids 0, 1, 2 or 3 34 and a maximum size of 4 bytes each. 35 36config IPM_IMX_MAX_DATA_SIZE_8 37 bool "8 bytes" 38 help 39 There will be two message types with ids 0 or 1 40 and a maximum size of 8 bytes each. 41 42config IPM_IMX_MAX_DATA_SIZE_16 43 bool "16 bytes" 44 help 45 There will be a single message type with id 0 46 and a maximum size of 16 bytes. 47 48endchoice 49 50config IPM_IMX_MAX_DATA_SIZE 51 int 52 range 4 16 53 default 4 if IPM_IMX_MAX_DATA_SIZE_4 54 default 8 if IPM_IMX_MAX_DATA_SIZE_8 55 default 16 if IPM_IMX_MAX_DATA_SIZE_16 56 depends on IPM_IMX 57 58config IPM_IMX_MAX_ID_VAL 59 int 60 range 0 3 61 default 3 if IPM_IMX_MAX_DATA_SIZE_4 62 default 1 if IPM_IMX_MAX_DATA_SIZE_8 63 default 0 if IPM_IMX_MAX_DATA_SIZE_16 64 depends on IPM_IMX 65 66config IPM_MHU 67 bool "IPM MHU driver" 68 help 69 Driver for SSE 200 MHU (Message Handling Unit) 70 71config IPM_NRFX 72 bool "IPM NRF driver" 73 depends on HAS_HW_NRF_IPC 74 select NRFX_IPC 75 help 76 Driver for Nordic nRF messaging unit, based 77 on nRF IPC peripheral HW. 78 79config IPM_NRF_SINGLE_INSTANCE 80 bool "Single instance of IPM device" 81 help 82 Enable this option if the IPM device should have 83 a single instance, instead of one per IPC 84 message channel. 85 86source "drivers/ipm/Kconfig.nrfx" 87 88config IPM_STM32_IPCC 89 bool "STM32 IPCC controller" 90 select USE_STM32_LL_IPCC 91 help 92 Driver for stm32 IPCC mailboxes 93 94config IPM_STM32_IPCC_PROCID 95 int "STM32 IPCC Processor ID" 96 default 2 97 range 1 2 98 depends on IPM_STM32_IPCC 99 help 100 use to define the Processor ID for IPCC access 101 102config IPM_CAVS_IDC 103 bool "CAVS DSP Intra-DSP Communication (IDC) driver" 104 depends on IPM && CAVS_ICTL 105 default y if MP_NUM_CPUS > 1 && SMP 106 help 107 Driver for the Intra-DSP Communication (IDC) channel for 108 cross SoC communications. 109 110config IPM_INTEL_ADSP 111 bool "IPM ADSP Host-DSP Communication driver" 112 help 113 Driver for the Host-DSP Mailbox Communication channel. 114 115config IPM_STM32_HSEM 116 bool "STM32 HSEM controller" 117 depends on STM32H7_DUAL_CORE 118 help 119 Driver for stm32 HSEM mailbox 120 121config IPM_STM32_HSEM_CPU 122 int "HSEM CPU ID" 123 default 1 if "$(dt_nodelabel_enabled,cpu0)" 124 default 2 if "$(dt_nodelabel_enabled,cpu1)" 125 range 1 2 126 depends on IPM_STM32_HSEM 127 help 128 use to define the CPU ID used by HSEM 129 130module = IPM 131module-str = ipm 132source "subsys/logging/Kconfig.template.log_config" 133 134endif #IPM 135