1# Bluetooth Isochronous Channel configuration options 2 3# Copyright (c) 2016 Intel Corporation 4# Copyright (c) 2021 Nordic Semiconductor ASA 5# SPDX-License-Identifier: Apache-2.0 6 7config BT_ISO 8 bool 9 10# TODO: Split between client (central) and server (peripheral) 11config BT_ISO_UNICAST 12 bool 13 depends on BT_CONN 14 select BT_ISO 15 help 16 This option enables support for Bluetooth Unicast 17 Isochronous channels. 18 19config BT_ISO_PERIPHERAL 20 bool "Bluetooth Isochronous Channel Unicast Peripheral Support [EXPERIMENTAL]" 21 depends on !BT_CTLR || BT_CTLR_PERIPHERAL_ISO_SUPPORT 22 select BT_PERIPHERAL 23 select BT_ISO_UNICAST 24 select EXPERIMENTAL 25 help 26 This option enables support for Bluetooth Unicast 27 Isochronous channels for the peripheral role. 28 29config BT_ISO_CENTRAL 30 bool "Bluetooth Isochronous Channel Unicast Central Support [EXPERIMENTAL]" 31 depends on !BT_CTLR || BT_CTLR_CENTRAL_ISO_SUPPORT 32 select BT_CENTRAL 33 select BT_ISO_UNICAST 34 select EXPERIMENTAL 35 help 36 This option enables support for Bluetooth Broadcast 37 Isochronous channels for the central role. 38 39config BT_ISO_BROADCAST 40 bool 41 select BT_ISO 42 select BT_EXT_ADV 43 44config BT_ISO_BROADCASTER 45 bool "Bluetooth Isochronous Broadcaster Support [EXPERIMENTAL]" 46 depends on !BT_CTLR || BT_CTLR_ADV_ISO_SUPPORT 47 select BT_ISO_BROADCAST 48 select BT_BROADCASTER 49 select BT_PER_ADV 50 select EXPERIMENTAL 51 help 52 This option enables support for the Bluetooth Isochronous Broadcaster. 53 54config BT_ISO_SYNC_RECEIVER 55 bool "Bluetooth Isochronous Synchronized Receiver Support [EXPERIMENTAL]" 56 depends on !BT_CTLR || BT_CTLR_SYNC_ISO_SUPPORT 57 select BT_ISO_BROADCAST 58 select BT_OBSERVER 59 select BT_PER_ADV_SYNC 60 select EXPERIMENTAL 61 help 62 This option enables support for the Bluetooth Isochronous 63 Synchronized Receiver. 64 65if BT_ISO 66 67config BT_ISO_MAX_CHAN 68 int "Maximum number of simultaneous ISO channels" 69 depends on BT_ISO 70 default BT_MAX_CONN if BT_CONN 71 default 1 72 range 1 64 73 help 74 Maximum number of simultaneous Bluetooth isochronous channels 75 supported. 76 77config BT_ISO_TX_BUF_COUNT 78 int "Number of Isochronous TX buffers" 79 default 1 80 range 1 255 81 help 82 Number of buffers available for outgoing Isochronous channel SDUs. 83 84config BT_ISO_TX_FRAG_COUNT 85 int "Number of ISO TX fragment buffers" 86 default 2 87 range 0 255 88 help 89 Number of buffers available for fragments of TX buffers. Warning: 90 setting this to 0 means that the application must ensure that 91 queued TX buffers never need to be fragmented, i.e. that the 92 controller's buffer size is large enough. If this is not ensured, 93 and there are no dedicated fragment buffers, a deadlock may occur. 94 In most cases the default value of 2 is a safe bet. 95 96config BT_ISO_TX_MTU 97 int "Maximum supported MTU for Isochronous TX buffers" 98 default 251 99 range 1 4095 100 help 101 Maximum MTU for Isochronous channels TX buffers. 102 103config BT_ISO_RX_BUF_COUNT 104 int "Number of Isochronous RX buffers" 105 default 1 106 range 1 255 107 help 108 Number of buffers available for incoming Isochronous channel SDUs. 109 110config BT_ISO_RX_MTU 111 int "Maximum supported MTU for Isochronous RX buffers" 112 default 251 113 range 23 4095 114 help 115 Maximum MTU for Isochronous channels RX buffers. 116 117if BT_ISO_UNICAST 118 119config BT_ISO_MAX_CIG 120 int "Maximum number of Connected Isochronous Groups (CIGs) to support" 121 default 1 122 help 123 Maximum number of CIGs that are supported by the host. A CIG can be 124 used for either transmitting or receiving. 125 126endif # BT_ISO_UNICAST 127 128if BT_ISO_BROADCAST 129 130config BT_ISO_MAX_BIG 131 int "Maximum number of Broadcast Isochronous Groups (BIGs) to support" 132 default 1 133 help 134 Maximum number of BIGs that are supported by the host. A BIG can be 135 used for either transmitting or receiving, but not at the same time. 136 137endif # BT_ISO_BROADCAST 138endif # BT_ISO 139