# Bluetooth Isochronous Channel configuration options # Copyright (c) 2016 Intel Corporation # Copyright (c) 2021 Nordic Semiconductor ASA # SPDX-License-Identifier: Apache-2.0 config BT_ISO bool config BT_ISO_TX bool config BT_ISO_RX bool # TODO: Split between client (central) and server (peripheral) config BT_ISO_UNICAST bool depends on BT_CONN select BT_ISO select BT_ISO_TX select BT_ISO_RX help This option enables support for Bluetooth Unicast Isochronous channels. config BT_ISO_PERIPHERAL bool "Bluetooth Isochronous Channel Unicast Peripheral Support [EXPERIMENTAL]" depends on !BT_CTLR || BT_CTLR_PERIPHERAL_ISO_SUPPORT select BT_PERIPHERAL select BT_ISO_UNICAST select EXPERIMENTAL help This option enables support for Bluetooth Unicast Isochronous channels for the peripheral role. config BT_ISO_CENTRAL bool "Bluetooth Isochronous Channel Unicast Central Support [EXPERIMENTAL]" depends on !BT_CTLR || BT_CTLR_CENTRAL_ISO_SUPPORT select BT_CENTRAL select BT_ISO_UNICAST select EXPERIMENTAL help This option enables support for Bluetooth Broadcast Isochronous channels for the central role. config BT_ISO_BROADCAST bool select BT_ISO select BT_EXT_ADV config BT_ISO_BROADCASTER bool "Bluetooth Isochronous Broadcaster Support [EXPERIMENTAL]" depends on !BT_CTLR || BT_CTLR_ADV_ISO_SUPPORT select BT_ISO_BROADCAST select BT_ISO_TX select BT_BROADCASTER select BT_PER_ADV select EXPERIMENTAL help This option enables support for the Bluetooth Isochronous Broadcaster. config BT_ISO_SYNC_RECEIVER bool "Bluetooth Isochronous Synchronized Receiver Support [EXPERIMENTAL]" depends on !BT_CTLR || BT_CTLR_SYNC_ISO_SUPPORT select BT_ISO_BROADCAST select BT_ISO_RX select BT_OBSERVER select BT_PER_ADV_SYNC select EXPERIMENTAL help This option enables support for the Bluetooth Isochronous Synchronized Receiver. if BT_ISO config BT_ISO_MAX_CHAN int "Maximum number of simultaneous ISO channels" depends on BT_ISO default BT_MAX_CONN if BT_CONN default 1 range 1 64 help Maximum number of simultaneous Bluetooth isochronous channels supported. config BT_ISO_TX_BUF_COUNT int "Number of Isochronous TX buffers" default 1 range 1 255 help Number of buffers available for outgoing Isochronous channel SDUs. config BT_ISO_TX_FRAG_COUNT int "Number of ISO TX fragment buffers" default 2 range 0 255 help Number of buffers available for fragments of TX buffers. Warning: setting this to 0 means that the application must ensure that queued TX buffers never need to be fragmented, i.e. that the controller's buffer size is large enough. If this is not ensured, and there are no dedicated fragment buffers, a deadlock may occur. In most cases the default value of 2 is a safe bet. config BT_ISO_TX_MTU int "Maximum supported MTU for Isochronous TX buffers" default 251 range 1 4095 help Maximum MTU for Isochronous channels TX buffers. This is the actual data payload. It doesn't include the optional HCI ISO Data packet fields (e.g. `struct bt_hci_iso_ts_data_hdr`). Set this value to 247 to fit 247 bytes of data within a single HCI ISO Data packet with a size of 255, without utilizing timestamps. config BT_ISO_RX_BUF_COUNT int "Number of Isochronous RX buffers" default 1 range 1 255 help Number of buffers available for incoming Isochronous channel SDUs. config BT_ISO_RX_MTU int "Maximum supported MTU for Isochronous RX buffers" default 251 range 23 4095 help Maximum MTU for Isochronous channels RX buffers. This is the actual data payload. It doesn't include the optional HCI ISO Data packet fields (e.g. `struct bt_hci_iso_ts_data_hdr`) config BT_ISO_TEST_PARAMS bool "ISO test parameters support" help Enabling advanced ISO parameters will allow the use of the ISO test parameters for creating a CIG or a BIG. These test parameters were intended for testing, but can be used to allow the host to set more settings that are otherwise usually controlled by the controller. if BT_ISO_UNICAST config BT_ISO_MAX_CIG int "Maximum number of Connected Isochronous Groups (CIGs) to support" default 1 help Maximum number of CIGs that are supported by the host. A CIG can be used for either transmitting or receiving. endif # BT_ISO_UNICAST if BT_ISO_BROADCAST config BT_ISO_MAX_BIG int "Maximum number of Broadcast Isochronous Groups (BIGs) to support" default 1 help Maximum number of BIGs that are supported by the host. A BIG can be used for either transmitting or receiving, but not at the same time. endif # BT_ISO_BROADCAST endif # BT_ISO