| # Copyright (c) 2021 Nordic Semiconductor (ASA) |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| config IPC_SERVICE_REG_BACKEND_PRIORITY |
| int "Initialization priority of modules registering IPC backend" |
| default 46 |
| help |
| The backend must be registered before the endpoint register. |
| |
| config IPC_SERVICE_BACKEND_RPMSG |
| bool "OpenAMP RPMSG backend with static VRINGs" |
| default y |
| depends on MBOX |
| depends on DT_HAS_ZEPHYR_IPC_OPENAMP_STATIC_VRINGS_ENABLED |
| select IPC_SERVICE_RPMSG |
| select IPC_SERVICE_STATIC_VRINGS |
| select OPENAMP |
| |
| config IPC_SERVICE_BACKEND_ICMSG |
| bool "ICMSG backend with SPSC packet buffer" |
| default y |
| depends on MBOX |
| depends on DT_HAS_ZEPHYR_IPC_ICMSG_ENABLED |
| select IPC_SERVICE_ICMSG |
| help |
| Chosing this backend results in single endpoint implementation based |
| on circular packet buffer. |
| |
| config IPC_SERVICE_BACKEND_ICMSG_ME_INITIATOR |
| bool "ICMSG backend with multi-endpoint support in initiator role" |
| depends on MBOX |
| depends on DT_HAS_ZEPHYR_IPC_ICMSG_ME_INITIATOR_ENABLED |
| select IPC_SERVICE_ICMSG |
| select EVENTS |
| help |
| Chosing this backend results in multi endpoint implementation based |
| on circular packet buffer. This enables enpoint discovery initiator |
| role. |
| |
| config IPC_SERVICE_BACKEND_ICMSG_ME_FOLLOWER |
| bool "ICMSG backend with multi-endpoint support in follower role" |
| depends on MBOX |
| depends on DT_HAS_ZEPHYR_IPC_ICMSG_ME_FOLLOWER_ENABLED |
| select IPC_SERVICE_ICMSG |
| select EVENTS |
| help |
| Chosing this backend results in multi endpoint implementation based |
| on circular packet buffer. This enables enpoint discovery follower |
| role. |
| |
| config IPC_SERVICE_RPMSG |
| bool "RPMsg support library" |
| help |
| "RPMsg library" |
| |
| config IPC_SERVICE_STATIC_VRINGS |
| bool "Static VRINGs support library" |
| help |
| "Static VRINGs library" |
| |
| config IPC_SERVICE_STATIC_VRINGS_ALIGNMENT |
| int "VRINGs alignment" |
| depends on IPC_SERVICE_STATIC_VRINGS |
| default 4 |
| help |
| Static VRINGs alignment |
| |
| config IPC_SERVICE_ICMSG |
| bool |
| select SPSC_PBUF |
| select SPSC_PBUF_USE_CACHE |
| help |
| Icmsg library |
| |
| config IPC_SERVICE_ICMSG_CB_BUF_SIZE |
| int "Size of callback buffer size" |
| depends on IPC_SERVICE_ICMSG |
| range 1 65535 |
| default 255 |
| help |
| Size of callback buffer used for processing received data in work |
| queue thread. If you are sure that your application never sends data |
| data bigger than some size, you can safely change this option to |
| reduce RAM consumption in your application. |
| |
| # The Icmsg library in its simplicity requires the system workqueue to execute |
| # at a cooperative priority. |
| config SYSTEM_WORKQUEUE_PRIORITY |
| depends on IPC_SERVICE_ICMSG |
| range -256 -1 |
| |
| config IPC_SERVICE_BACKEND_ICMSG_BOND_NOTIFY_REPEAT_TO_MS |
| int "Bond notification timeout in miliseconds" |
| range 1 100 |
| default 1 |
| help |
| Time to wait for remote bonding notification before the |
| notification is repeated. |
| |
| rsource "Kconfig.icmsg_me" |
| rsource "Kconfig.rpmsg" |