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_CHANNELS_SYS_INIT_PRIORITY
12	default 5
13	int "The priority used during the SYS_INIT procedure."
14
15config ZBUS_CHANNEL_NAME
16	bool "Channel name field"
17
18config ZBUS_OBSERVER_NAME
19	bool "Observer name field"
20
21config ZBUS_MSG_SUBSCRIBER
22	select NET_BUF
23	bool "Message subscribers will receive all messages in sequence."
24
25if ZBUS_MSG_SUBSCRIBER
26
27choice
28	prompt "ZBus msg_subscribers buffer allocation"
29
30config ZBUS_MSG_SUBSCRIBER_NET_BUF_DYNAMIC
31	bool "Use heap to allocate msg_subscriber buffers data"
32
33config ZBUS_MSG_SUBSCRIBER_NET_BUF_STATIC
34	bool "Use fixed data size for msg_subscriber buffers pool"
35
36endchoice
37
38config ZBUS_MSG_SUBSCRIBER_NET_BUF_POOL_SIZE
39	default 16
40	int "The count of net_buf available to be used simutaneously."
41
42if ZBUS_MSG_SUBSCRIBER_NET_BUF_STATIC
43
44config ZBUS_MSG_SUBSCRIBER_NET_BUF_STATIC_DATA_SIZE
45	int "The size of the biggest message used with ZBus."
46
47endif # ZBUS_MSG_SUBSCRIBER_NET_BUF_STATIC
48
49endif # ZBUS_MSG_SUBSCRIBER
50
51config ZBUS_RUNTIME_OBSERVERS
52	bool "Runtime observers support."
53	default n
54
55config ZBUS_ASSERT_MOCK
56	bool "Zbus assert mock for test purposes."
57	help
58	  This configuration enables the developer to change the _ZBUS_ASSERT behavior. When this configuration is
59	  enabled, _ZBUS_ASSERT returns -EFAULT instead of assert. It makes it more straightforward to test invalid
60	  parameters.
61
62
63module = ZBUS
64module-str = zbus
65source "subsys/logging/Kconfig.template.log_config"
66
67endif # ZBUS
68