1# Net stack configuration options
2
3# Copyright (c) 2015 Intel Corporation
4# SPDX-License-Identifier: Apache-2.0
5
6menu "Networking"
7
8config NET_BUF
9	bool "Network buffer support"
10	help
11	  This option enables support for generic network protocol
12	  buffers.
13
14if NET_BUF
15
16config NET_BUF_LOG
17	bool "Network buffer logging"
18	select LOG
19	help
20	  Enable logs and checks for the generic network buffers.
21
22module = NET_BUF
23module-str = net_buf
24source "subsys/logging/Kconfig.template.log_config"
25
26if NET_BUF_LOG
27
28config NET_BUF_WARN_ALLOC_INTERVAL
29	int "Interval of Network buffer allocation warnings"
30	default 1
31	range 0 60
32	help
33	  Interval in seconds of Network buffer allocation warnings which are
34	  generated when a buffer cannot immediately be allocated with K_FOREVER
35	  which may lead to deadlocks. Setting it to 0 makes warnings to be
36	  printed only once per allocation.
37
38config NET_BUF_SIMPLE_LOG
39	bool "Network buffer memory debugging"
40	select LOG
41	help
42	  Enable extra debug logs and checks for the generic network buffers.
43
44endif # NET_BUF_LOG
45
46config NET_BUF_POOL_USAGE
47	bool "Network buffer pool usage tracking"
48	help
49	  Enable network buffer pool tracking. This means that:
50	  * amount of free buffers in the pool is remembered
51	  * total size of the pool is calculated
52	  * pool name is stored and can be shown in debugging prints
53
54config NET_BUF_ALIGNMENT
55	int "Network buffer alignment restriction"
56	default 0
57	help
58	  Alignment restriction for network buffers. This is useful for
59	  some hardware IP with DMA that requires the buffers to be aligned
60	  to a certain byte boundary, or dealing with cache line restrictions.
61	  Default value of 0 means the alignment will be the size of a void pointer,
62	  any other value will force the alignment of a net buffer in bytes.
63
64endif # NET_BUF
65
66config NETWORKING
67	bool "Link layer and networking (including IP)"
68	select NET_BUF
69	select POLL
70	select ENTROPY_GENERATOR
71	help
72	  This option enables generic link layer and networking support
73	  and is the basis for higher level protocols (e.g. IP protocols).
74
75if NETWORKING
76
77# Such option should not be configured manually but by device drivers
78# which supports PM properly.
79config NET_POWER_MANAGEMENT
80	bool
81	depends on PM_DEVICE
82
83source "subsys/net/Kconfig.hostname"
84
85source "subsys/net/l2/Kconfig"
86
87source "subsys/net/ip/Kconfig"
88
89source "subsys/net/pkt_filter/Kconfig"
90
91source "subsys/net/lib/Kconfig"
92
93source "subsys/net/conn_mgr/Kconfig"
94
95endif
96
97endmenu
98