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_ISOLATION 41 default n 42 bool "Use isolated pools instead of only using the global pool." 43 44config ZBUS_MSG_SUBSCRIBER_NET_BUF_POOL_SIZE 45 default 16 46 int "The count of net_buf available to be used simutaneously." 47 48if ZBUS_MSG_SUBSCRIBER_BUF_ALLOC_STATIC 49 50config ZBUS_MSG_SUBSCRIBER_NET_BUF_STATIC_DATA_SIZE 51 int "The size of the biggest message used with ZBus." 52 53endif # ZBUS_MSG_SUBSCRIBER_BUF_ALLOC_STATIC 54 55endif # ZBUS_MSG_SUBSCRIBER 56 57config ZBUS_RUNTIME_OBSERVERS 58 bool "Runtime observers support." 59 60config ZBUS_PRIORITY_BOOST 61 bool "ZBus priority boost algorithm" 62 default y 63 help 64 ZBus implements the Highest Locker Protocol that relies on the observers’ thread priority 65 to determine a temporary publisher priority. 66 67config ZBUS_ASSERT_MOCK 68 bool "Zbus assert mock for test purposes." 69 help 70 This configuration enables the developer to change the _ZBUS_ASSERT behavior. When this configuration is 71 enabled, _ZBUS_ASSERT returns -EFAULT instead of assert. It makes it more straightforward to test invalid 72 parameters. 73 74 75module = ZBUS 76module-str = zbus 77source "subsys/logging/Kconfig.template.log_config" 78 79endif # ZBUS 80