160 lines
4.4 KiB
Plaintext
160 lines
4.4 KiB
Plaintext
# 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
|