1# Copyright (c) 2022 Rodrigo Peixoto <rodrigopex@gmail.com> 2# SPDX-License-Identifier: Apache-2.0 3 4menuconfig ZBUS 5 bool "Zbus support" 6 depends on MULTITHREADING 7 help 8 Enables support for Zephyr message bus. 9 10if ZBUS 11 12config ZBUS_CHANNELS_SYS_INIT_PRIORITY 13 default 5 14 int "The priority used during the SYS_INIT procedure." 15 16config ZBUS_CHANNEL_NAME 17 bool "Channel name field" 18 19config ZBUS_OBSERVER_NAME 20 bool "Observer name field" 21 22config ZBUS_MSG_SUBSCRIBER 23 select NET_BUF 24 bool "Message subscribers will receive all messages in sequence." 25 26if ZBUS_MSG_SUBSCRIBER 27 28choice ZBUS_MSG_SUBSCRIBER_BUF_ALLOC 29 prompt "ZBus msg_subscribers buffer allocation" 30 default ZBUS_MSG_SUBSCRIBER_BUF_ALLOC_DYNAMIC 31 32config ZBUS_MSG_SUBSCRIBER_BUF_ALLOC_DYNAMIC 33 bool "Use heap to allocate msg_subscriber buffers data" 34 35config ZBUS_MSG_SUBSCRIBER_BUF_ALLOC_STATIC 36 bool "Use fixed data size for msg_subscriber buffers pool" 37 38endchoice 39 40config ZBUS_MSG_SUBSCRIBER_NET_BUF_POOL_SIZE 41 default 16 42 int "The count of net_buf available to be used simutaneously." 43 44if ZBUS_MSG_SUBSCRIBER_BUF_ALLOC_STATIC 45 46config ZBUS_MSG_SUBSCRIBER_NET_BUF_STATIC_DATA_SIZE 47 int "The size of the biggest message used with ZBus." 48 49endif # ZBUS_MSG_SUBSCRIBER_BUF_ALLOC_STATIC 50 51endif # ZBUS_MSG_SUBSCRIBER 52 53config ZBUS_RUNTIME_OBSERVERS 54 bool "Runtime observers support." 55 56config ZBUS_PRIORITY_BOOST 57 bool "ZBus priority boost algorithm" 58 default y 59 help 60 ZBus implements the Highest Locker Protocol that relies on the observers’ thread priority 61 to determine a temporary publisher priority. 62 63config ZBUS_ASSERT_MOCK 64 bool "Zbus assert mock for test purposes." 65 help 66 This configuration enables the developer to change the _ZBUS_ASSERT behavior. When this configuration is 67 enabled, _ZBUS_ASSERT returns -EFAULT instead of assert. It makes it more straightforward to test invalid 68 parameters. 69 70 71module = ZBUS 72module-str = zbus 73source "subsys/logging/Kconfig.template.log_config" 74 75endif # ZBUS 76