1# Bluetooth ATT/GATT configuration options
2
3# Copyright (c) 2019 Intel Corporation
4# Copyright (c) 2023 Nordic Semiconductor
5# SPDX-License-Identifier: Apache-2.0
6
7menu "L2CAP Options"
8
9config BT_L2CAP_TX_BUF_COUNT
10	int "Number of L2CAP TX buffers"
11	default BT_BUF_ACL_TX_COUNT
12	range 2 $(UINT8_MAX)
13	help
14	  Number of buffers available for outgoing L2CAP packets.
15
16config BT_L2CAP_TX_FRAG_COUNT
17	int "Number of L2CAP TX fragment buffers"
18	default 2
19	range 0 $(UINT8_MAX)
20	help
21	  Number of buffers available for fragments of TX buffers. Warning:
22	  setting this to 0 means that the application must ensure that
23	  queued TX buffers never need to be fragmented, i.e. that the
24	  controller's buffer size is large enough. If this is not ensured,
25	  and there are no dedicated fragment buffers, a deadlock may occur.
26	  In most cases the default value of 2 is a safe bet.
27
28config BT_L2CAP_TX_MTU
29	int "Maximum supported L2CAP MTU for L2CAP TX buffers"
30	default 253 if BT_CLASSIC
31	default 66 if BT_EATT
32	default 65 if BT_SMP
33	default 64 if BT_BAP_UNICAST_SERVER || \
34		      BT_BAP_UNICAST_CLIENT || \
35		      BT_BAP_BROADCAST_SINK || \
36		      BT_BAP_SCAN_DELEGATOR || \
37		      BT_BAP_BROADCAST_ASSISTANT
38	default 49 if BT_HAS || BT_HAS_CLIENT
39	default 33 if BT_MESH_GATT
40	default 23
41	range 66 2000 if BT_EATT
42	range 65 2000 if BT_SMP
43	range 23 2000
44	help
45	  Maximum L2CAP MTU for L2CAP TX buffers.
46
47config BT_L2CAP_DYNAMIC_CHANNEL
48	bool "L2CAP Dynamic Channel support"
49	depends on BT_SMP
50	help
51	  This option enables support for LE Connection oriented Channels,
52	  allowing the creation of dynamic L2CAP Channels.
53
54config BT_L2CAP_ECRED
55	bool "L2CAP Enhanced Credit Based Flow Control support"
56	depends on BT_L2CAP_DYNAMIC_CHANNEL
57	help
58	  This option enables support for LE Connection oriented Channels with
59	  Enhanced Credit Based Flow Control support on dynamic L2CAP Channels.
60
61config BT_L2CAP_SEG_RECV
62	bool "L2CAP Receive segment direct API [EXPERIMENTAL]"
63	select EXPERIMENTAL
64	help
65
66	  Enable API for direct receiving of L2CAP SDU segments, bypassing the
67	  Host's fixed-function SDU re-assembler, RX SDU buffer management and
68	  credit issuer.
69
70	  This API enforces conformance with L2CAP TS, but is otherwise as
71	  flexible and semantically simple as possible.
72
73endmenu
74