| # 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" |
| depends on !BT_CTLR || BT_CTLR_PERIPHERAL_ISO_SUPPORT |
| depends on BT_PERIPHERAL |
| select BT_ISO_UNICAST |
| 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" |
| depends on !BT_CTLR || BT_CTLR_CENTRAL_ISO_SUPPORT |
| depends on BT_CENTRAL |
| select BT_ISO_UNICAST |
| 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" |
| depends on !BT_CTLR || BT_CTLR_ADV_ISO_SUPPORT |
| select BT_ISO_BROADCAST |
| select BT_ISO_TX |
| select BT_BROADCASTER |
| select BT_PER_ADV |
| help |
| This option enables support for the Bluetooth Isochronous Broadcaster. |
| |
| config BT_ISO_SYNC_RECEIVER |
| bool "Bluetooth Isochronous Synchronized Receiver Support" |
| depends on !BT_CTLR || BT_CTLR_SYNC_ISO_SUPPORT |
| depends on BT_OBSERVER |
| select BT_ISO_BROADCAST |
| select BT_ISO_RX |
| select BT_PER_ADV_SYNC |
| 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 $(UINT8_MAX) |
| 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 $(UINT8_MAX) |
| 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" |
| range 1 4095 |
| default 247 |
| 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_sdu_ts_hdr`). |
| Set this value to 247 to fit 247 bytes of data within a single |
| HCI ISO Data packet with Data_Total_Length of 255, utilizing |
| timestamps. |
| |
| config BT_ISO_RX_BUF_COUNT |
| int "Number of Isochronous RX buffers" |
| default 1 |
| range 1 $(UINT8_MAX) |
| 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_sdu_ts_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 |