1# Copyright (c) 2022 Rodrigo Peixoto <rodrigopex@gmail.com>
2# SPDX-License-Identifier: Apache-2.0
3
4menuconfig ZBUS
5	bool "Zbus support"
6	help
7	  Enables support for Zephyr message bus.
8
9if ZBUS
10
11config ZBUS_STRUCTS_ITERABLE_ACCESS
12	bool "Zbus iterable sections support."
13	depends on !XTENSA
14	default y
15
16config ZBUS_CHANNEL_NAME
17	bool "Channel name field"
18
19config ZBUS_OBSERVER_NAME
20	bool "Observer name field"
21
22config ZBUS_RUNTIME_OBSERVERS_POOL_SIZE
23	int "The size of the runtime observers pool."
24	default 0
25	help
26	  When the size is bigger than zero this feature will be enabled. It applies the Object Pool Pattern,
27	  where the objects in the pool are pre-allocated and can be used and recycled after use. The
28	  technique avoids dynamic allocation and allows the code to increase the number of observers by
29	  only changing a configuration.
30
31config ZBUS_ASSERT_MOCK
32	bool "Zbus assert mock for test purposes."
33	help
34	  This configuration enables the developer to change the _ZBUS_ASSERT behavior. When this configuration is
35	  enabled, _ZBUS_ASSERT returns -EFAULT instead of assert. It makes it more straightforward to test invalid
36	  parameters.
37
38
39module = ZBUS
40module-str = zbus
41source "subsys/logging/Kconfig.template.log_config"
42
43endif # ZBUS
44