Bluetooth: Controller: BT_CTLR_ISO_TX_BUFFER_SIZE from BT_ISO_TX_MTU
Derive BT_CTLR_ISO_TX_BUFFER_SIZE from BT_ISO_TX_MTU to have optimal Controller memory allocations. BT_CTLR_ISO_TX_BUFFER_SIZE can be set lower than BT_ISO_TX_MTU in which case upper layer can send fragmented SDU to the Controller. Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
This commit is contained in:
parent
3997479b49
commit
2c6306d099
31 changed files with 138 additions and 88 deletions
|
@ -14,11 +14,7 @@ CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=155
|
|||
CONFIG_BT_CTLR_ADV_ISO_STREAM_MAX=2
|
||||
CONFIG_BT_CTLR_ISOAL_SOURCES=2
|
||||
|
||||
# FIXME: Host needs CONFIG_BT_ISO_TX_MTU + 4 bytes for sequence number, and optionally
|
||||
# additional + 4 bytes for timestamp when not using BT_ISO_TIMESTAMP_NONE in bt_iso_chan_send(),
|
||||
# otherwise Host tries to fragment ISO data.
|
||||
# When Host is fixed, CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE can inherit the
|
||||
# CONFIG_BT_ISO_TX_MTU value.
|
||||
#
|
||||
# Supports the highest SDU size required by any BAP LC3 presets (155)
|
||||
# Support the highest SDU size required by any BAP LC3 presets (155) + 8 bytes of HCI ISO Data
|
||||
# packet overhead (the Packet_Sequence_Number, ISO_SDU_Length, Packet_Status_Flag fields; and
|
||||
# the optional Time_Stamp field, if supplied)
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=163
|
||||
|
|
33
samples/bluetooth/central_iso/overlay-bt_ll_sw_split.conf
Normal file
33
samples/bluetooth/central_iso/overlay-bt_ll_sw_split.conf
Normal file
|
@ -0,0 +1,33 @@
|
|||
# Zephyr Bluetooth Controller
|
||||
CONFIG_BT_LL_SW_SPLIT=y
|
||||
|
||||
# Zephyr Bluetooth LE Controller needs 16 event buffers to generate Extended
|
||||
# Advertising Report for receiving the complete 1650 bytes of data
|
||||
CONFIG_BT_BUF_EVT_RX_COUNT=16
|
||||
|
||||
# Set maximum scan data length for Extended Scanning in Bluetooth LE Controller
|
||||
CONFIG_BT_CTLR_SCAN_DATA_LEN_MAX=1650
|
||||
|
||||
# Increase Zephyr Bluetooth LE Controller Rx buffer to receive complete chain
|
||||
# of PDUs
|
||||
CONFIG_BT_CTLR_RX_BUFFERS=9
|
||||
|
||||
# Sufficient ISO SDU and PDU length for this sample with ISO_TX_MTU of 247
|
||||
CONFIG_BT_CTLR_CONN_ISO_SDU_LEN_MAX=247
|
||||
CONFIG_BT_CTLR_CONN_ISO_PDU_LEN_MAX=251
|
||||
|
||||
# Number of supported streami sources and sinks
|
||||
CONFIG_BT_CTLR_ISOAL_SOURCES=2
|
||||
CONFIG_BT_CTLR_ISOAL_SINKS=1
|
||||
|
||||
# Support the highest SDU size required by this sample 247 + 8 bytes of HCI ISO Data
|
||||
# packet overhead (timestamp and HCI ISO Data packet header)
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=255
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFERS=4
|
||||
|
||||
# Use Low Latency Connected ISO policy
|
||||
CONFIG_BT_CTLR_ADVANCED_FEATURES=y
|
||||
CONFIG_BT_CTLR_CONN_ISO_LOW_LATENCY_POLICY=y
|
||||
|
||||
# Use the below if the sample is sending stale packet sequence number
|
||||
# CONFIG_BT_CTLR_ISOAL_SN_STRICT=n
|
|
@ -8,3 +8,14 @@ tests:
|
|||
integration_platforms:
|
||||
- qemu_x86
|
||||
tags: bluetooth
|
||||
sample.bluetooth.central_iso.bt_ll_sw_split:
|
||||
harness: bluetooth
|
||||
platform_allow:
|
||||
- qemu_cortex_m3
|
||||
- qemu_x86
|
||||
- nrf52_bsim
|
||||
- nrf52833dk/nrf52833
|
||||
integration_platforms:
|
||||
- nrf52833dk/nrf52833
|
||||
extra_args: OVERLAY_CONFIG=overlay-bt_ll_sw_split.conf
|
||||
tags: bluetooth
|
||||
|
|
|
@ -77,7 +77,7 @@ CONFIG_BT_CTLR_LLCP_LOCAL_PROC_CTX_BUF_NUM=6
|
|||
CONFIG_BT_CTLR_ADV_EXT=y
|
||||
CONFIG_BT_CTLR_ADV_PERIODIC=y
|
||||
CONFIG_BT_CTLR_ADV_ISO=y
|
||||
CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=251
|
||||
CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=247
|
||||
CONFIG_BT_CTLR_ADV_ISO_STREAM_MAX=2
|
||||
|
||||
# ISO Receive Controller
|
||||
|
@ -89,7 +89,7 @@ CONFIG_BT_CTLR_SYNC_ISO_STREAM_MAX=2
|
|||
|
||||
# ISO Transmissions
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFERS=8
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=251
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=255
|
||||
CONFIG_BT_CTLR_ISOAL_SOURCES=2
|
||||
|
||||
# ISO Receptions
|
||||
|
|
|
@ -77,12 +77,12 @@ CONFIG_BT_CTLR_LLCP_LOCAL_PROC_CTX_BUF_NUM=6
|
|||
# ISO Connection Oriented
|
||||
CONFIG_BT_CTLR_CENTRAL_ISO=y
|
||||
CONFIG_BT_CTLR_PERIPHERAL_ISO=y
|
||||
CONFIG_BT_CTLR_CONN_ISO_SDU_LEN_MAX=251
|
||||
CONFIG_BT_CTLR_CONN_ISO_SDU_LEN_MAX=247
|
||||
CONFIG_BT_CTLR_CONN_ISO_PDU_LEN_MAX=251
|
||||
|
||||
# ISO Transmissions
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFERS=8
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=251
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=255
|
||||
CONFIG_BT_CTLR_ISOAL_SOURCES=2
|
||||
|
||||
# ISO Receptions
|
||||
|
|
|
@ -82,7 +82,7 @@ CONFIG_BT_CTLR_LLCP_LOCAL_PROC_CTX_BUF_NUM=6
|
|||
CONFIG_BT_CTLR_ADV_EXT=y
|
||||
CONFIG_BT_CTLR_ADV_PERIODIC=y
|
||||
CONFIG_BT_CTLR_ADV_ISO=y
|
||||
CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=251
|
||||
CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=247
|
||||
CONFIG_BT_CTLR_ADV_ISO_STREAM_MAX=2
|
||||
|
||||
# ISO Receive Controller
|
||||
|
@ -95,12 +95,12 @@ CONFIG_BT_CTLR_SYNC_ISO_STREAM_MAX=2
|
|||
# ISO Connection Oriented
|
||||
CONFIG_BT_CTLR_CENTRAL_ISO=y
|
||||
CONFIG_BT_CTLR_PERIPHERAL_ISO=y
|
||||
CONFIG_BT_CTLR_CONN_ISO_SDU_LEN_MAX=251
|
||||
CONFIG_BT_CTLR_CONN_ISO_SDU_LEN_MAX=247
|
||||
CONFIG_BT_CTLR_CONN_ISO_PDU_LEN_MAX=251
|
||||
|
||||
# ISO Transmissions
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFERS=8
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=251
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=255
|
||||
CONFIG_BT_CTLR_ISOAL_SOURCES=2
|
||||
|
||||
# ISO Receptions
|
||||
|
|
|
@ -31,8 +31,8 @@ CONFIG_BT_CTLR_ADV_PERIODIC=y
|
|||
CONFIG_BT_CTLR_ADV_DATA_LEN_MAX=191
|
||||
CONFIG_BT_CTLR_ADV_ISO=y
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFERS=16
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=251
|
||||
CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=251
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=255
|
||||
CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=247
|
||||
CONFIG_BT_CTLR_ADV_ISO_STREAM_MAX=2
|
||||
CONFIG_BT_CTLR_ISOAL_SOURCES=2
|
||||
|
||||
|
|
|
@ -44,12 +44,12 @@ CONFIG_BT_CTLR_SCAN_DATA_LEN_MAX=191
|
|||
# ISO Connection Oriented
|
||||
CONFIG_BT_CTLR_CENTRAL_ISO=y
|
||||
CONFIG_BT_CTLR_PERIPHERAL_ISO=n
|
||||
CONFIG_BT_CTLR_CONN_ISO_SDU_LEN_MAX=251
|
||||
CONFIG_BT_CTLR_CONN_ISO_SDU_LEN_MAX=247
|
||||
CONFIG_BT_CTLR_CONN_ISO_PDU_LEN_MAX=251
|
||||
|
||||
# ISO Transmissions
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFERS=16
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=251
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=255
|
||||
CONFIG_BT_CTLR_ISOAL_SOURCES=2
|
||||
|
||||
# ISO Receptions
|
||||
|
|
|
@ -44,12 +44,12 @@ CONFIG_BT_CTLR_ADV_DATA_LEN_MAX=191
|
|||
# ISO Connection Oriented
|
||||
CONFIG_BT_CTLR_CENTRAL_ISO=n
|
||||
CONFIG_BT_CTLR_PERIPHERAL_ISO=y
|
||||
CONFIG_BT_CTLR_CONN_ISO_SDU_LEN_MAX=251
|
||||
CONFIG_BT_CTLR_CONN_ISO_SDU_LEN_MAX=247
|
||||
CONFIG_BT_CTLR_CONN_ISO_PDU_LEN_MAX=251
|
||||
|
||||
# ISO Transmissions
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFERS=16
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=251
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=255
|
||||
CONFIG_BT_CTLR_ISOAL_SOURCES=2
|
||||
|
||||
# ISO Receptions
|
||||
|
|
|
@ -80,7 +80,7 @@ CONFIG_BT_CTLR_DF_CONN_CTE_REQ=y
|
|||
CONFIG_BT_CTLR_ADV_EXT=y
|
||||
CONFIG_BT_CTLR_ADV_PERIODIC=y
|
||||
CONFIG_BT_CTLR_ADV_ISO=y
|
||||
CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=251
|
||||
CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=247
|
||||
CONFIG_BT_CTLR_ADV_ISO_STREAM_MAX=2
|
||||
|
||||
# ISO Receive Controller
|
||||
|
@ -93,12 +93,12 @@ CONFIG_BT_CTLR_SYNC_ISO_STREAM_MAX=2
|
|||
# ISO Connection Oriented
|
||||
CONFIG_BT_CTLR_CENTRAL_ISO=y
|
||||
CONFIG_BT_CTLR_PERIPHERAL_ISO=y
|
||||
CONFIG_BT_CTLR_CONN_ISO_SDU_LEN_MAX=251
|
||||
CONFIG_BT_CTLR_CONN_ISO_SDU_LEN_MAX=247
|
||||
CONFIG_BT_CTLR_CONN_ISO_PDU_LEN_MAX=251
|
||||
|
||||
# ISO Transmissions
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFERS=8
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=251
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=255
|
||||
CONFIG_BT_CTLR_ISOAL_SOURCES=2
|
||||
|
||||
# ISO Receptions
|
||||
|
|
|
@ -1,13 +1,20 @@
|
|||
CONFIG_BT_CTLR_ADV_ISO=y
|
||||
CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=4
|
||||
CONFIG_BT_CTLR_ADV_ISO_STREAM_MAX=2
|
||||
# Zephyr Bluetooth Controller
|
||||
CONFIG_BT_LL_SW_SPLIT=y
|
||||
|
||||
# Zephyr Controller tested maximum advertising data that can be set in a single HCI command
|
||||
CONFIG_BT_CTLR_ADV_DATA_LEN_MAX=191
|
||||
|
||||
# Enable support for Broadcast ISO in Zephyr Bluetooth Controller
|
||||
CONFIG_BT_CTLR_ADV_ISO=y
|
||||
|
||||
# Sufficient ISO PDU length for this sample
|
||||
CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=4
|
||||
|
||||
# Number of supported streams
|
||||
CONFIG_BT_CTLR_ADV_ISO_STREAM_MAX=2
|
||||
CONFIG_BT_CTLR_ISOAL_SOURCES=2
|
||||
|
||||
# FIXME: Host needs CONFIG_BT_ISO_TX_MTU + 4 bytes for sequence number, and
|
||||
# optionally additional + 4 bytes for timestamp when not using
|
||||
# BT_ISO_TIMESTAMP_NONE in bt_iso_chan_send(), otherwise Host tries to fragment
|
||||
# ISO data.
|
||||
# When Host is fixed, CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE can inherit the
|
||||
# CONFIG_BT_ISO_TX_MTU value.
|
||||
# Support the highest SDU size required by any BAP LC3 presets (155) + 8 bytes of HCI ISO Data
|
||||
# packet overhead (the Packet_Sequence_Number, ISO_SDU_Length, Packet_Status_Flag fields; and
|
||||
# the optional Time_Stamp field, if supplied)
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=12
|
||||
|
|
|
@ -17,8 +17,8 @@ tests:
|
|||
- qemu_cortex_m3
|
||||
- qemu_x86
|
||||
- nrf52_bsim
|
||||
- nrf52dk/nrf52832
|
||||
- nrf52833dk/nrf52833
|
||||
integration_platforms:
|
||||
- nrf52dk/nrf52832
|
||||
- nrf52833dk/nrf52833
|
||||
extra_args: OVERLAY_CONFIG=overlay-bt_ll_sw_split.conf
|
||||
tags: bluetooth
|
||||
|
|
|
@ -14,11 +14,7 @@ CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=155
|
|||
CONFIG_BT_CTLR_ADV_ISO_STREAM_MAX=2
|
||||
CONFIG_BT_CTLR_ISOAL_SOURCES=2
|
||||
|
||||
# FIXME: Host needs CONFIG_BT_ISO_TX_MTU + 4 bytes for sequence number, and optionally
|
||||
# additional + 4 bytes for timestamp when not using BT_ISO_TIMESTAMP_NONE in bt_iso_chan_send(),
|
||||
# otherwise Host tries to fragment ISO data.
|
||||
# When Host is fixed, CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE can inherit the
|
||||
# CONFIG_BT_ISO_TX_MTU value.
|
||||
#
|
||||
# Supports the highest SDU size required by any BAP LC3 presets (155)
|
||||
# Support the highest SDU size required by any BAP LC3 presets (155) + 8 bytes of HCI ISO Data
|
||||
# packet overhead (the Packet_Sequence_Number, ISO_SDU_Length, Packet_Status_Flag fields; and
|
||||
# the optional Time_Stamp field, if supplied)
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=163
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
CONFIG_BT_CTLR_PERIPHERAL_ISO=y
|
||||
|
||||
# Supports the highest SDU size required by any BAP LC3 presets (155)
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=155
|
|
@ -1,4 +0,0 @@
|
|||
CONFIG_BT_CTLR_CENTRAL_ISO=y
|
||||
|
||||
# Supports the highest SDU size required by any BAP LC3 presets (155)
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=155
|
|
@ -1,4 +0,0 @@
|
|||
CONFIG_BT_CTLR_CENTRAL_ISO=y
|
||||
|
||||
# Supports the highest SDU size required by any BAP LC3 presets (155)
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=155
|
|
@ -1,4 +0,0 @@
|
|||
CONFIG_BT_CTLR_PERIPHERAL_ISO=y
|
||||
|
||||
# Supports the highest SDU size required by any BAP LC3 presets (155)
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=155
|
|
@ -1,4 +0,0 @@
|
|||
CONFIG_BT_CTLR_CENTRAL_ISO=y
|
||||
|
||||
# Supports the highest SDU size required by any BAP LC3 presets (155)
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=155
|
|
@ -1,9 +1,14 @@
|
|||
CONFIG_BT_LL_SW_SPLIT=y
|
||||
CONFIG_BT_CTLR_SCAN_DATA_LEN_MAX=1650
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFERS=4
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=155
|
||||
CONFIG_BT_CTLR_ISOAL_SOURCES=2
|
||||
CONFIG_BT_CTLR_ISOAL_SINKS=1
|
||||
|
||||
# Support the highest SDU size required by any BAP LC3 presets (155) + 8 bytes of HCI ISO Data
|
||||
# packet overhead (the Packet_Sequence_Number, ISO_SDU_Length, Packet_Status_Flag fields; and
|
||||
# the optional Time_Stamp field, if supplied)
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=163
|
||||
|
||||
CONFIG_BT_CTLR_ADVANCED_FEATURES=y
|
||||
CONFIG_BT_CTLR_CONN_ISO_LOW_LATENCY_POLICY=y
|
||||
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
CONFIG_BT_CTLR_PERIPHERAL_ISO=y
|
||||
|
||||
# Supports the highest SDU size required by any BAP LC3 presets (155)
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=155
|
|
@ -1,10 +1,14 @@
|
|||
CONFIG_BT_LL_SW_SPLIT=y
|
||||
CONFIG_BT_CTLR_ADV_DATA_LEN_MAX=191
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFERS=2
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=155
|
||||
CONFIG_BT_CTLR_ISOAL_SOURCES=1
|
||||
CONFIG_BT_CTLR_ISOAL_SINKS=2
|
||||
|
||||
# Support the highest SDU size required by any BAP LC3 presets (155) + 8 bytes of HCI ISO Data
|
||||
# packet overhead (the Packet_Sequence_Number, ISO_SDU_Length, Packet_Status_Flag fields; and
|
||||
# the optional Time_Stamp field, if supplied)
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=163
|
||||
|
||||
# Use the below if the sample is sending stale packet sequence number
|
||||
# CONFIG_BT_CTLR_ADVANCED_FEATURES=y
|
||||
# CONFIG_BT_CTLR_ISOAL_SN_STRICT=n
|
||||
|
|
|
@ -105,14 +105,15 @@ config BT_ISO_TX_FRAG_COUNT
|
|||
|
||||
config BT_ISO_TX_MTU
|
||||
int "Maximum supported MTU for Isochronous TX buffers"
|
||||
default 251
|
||||
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 a size of 255, without utilizing timestamps.
|
||||
HCI ISO Data packet with Data_Total_Length of 255, utilizing
|
||||
timestamps.
|
||||
|
||||
config BT_ISO_RX_BUF_COUNT
|
||||
int "Number of Isochronous RX buffers"
|
||||
|
|
|
@ -202,12 +202,19 @@ config BT_CTLR_ISO_TX_BUFFERS
|
|||
config BT_CTLR_ISO_TX_BUFFER_SIZE
|
||||
int "Isochronous Tx buffer size"
|
||||
depends on BT_CTLR_ADV_ISO || BT_CTLR_CONN_ISO
|
||||
range 1 4095
|
||||
default BT_ISO_TX_MTU if BT_ISO
|
||||
range 9 4103 if BT_LL_SW_SPLIT
|
||||
range 1 65535
|
||||
default 9 if BT_LL_SW_SPLIT
|
||||
default 1
|
||||
help
|
||||
Size of the Isochronous Tx buffers and the value returned in HCI LE
|
||||
Read Buffer Size V2 command response.
|
||||
Read Buffer Size V2 command response. This is the data portion of the
|
||||
HCI ISO Data packet, corresponding to the Data_Total_Length field.
|
||||
|
||||
Currently the maximum SDU length is 4095 bytes, hence add HCI ISO
|
||||
Data packet overhead (the Packet_Sequence_Number, ISO_SDU_Length,
|
||||
Packet_Status_Flag fields; and the optional Time_Stamp field, if
|
||||
supplied) of 8 bytes.
|
||||
|
||||
config BT_CTLR_ISOAL_SOURCES
|
||||
int "Number of Isochronous Adaptation Layer sources"
|
||||
|
@ -929,7 +936,7 @@ config BT_CTLR_CONN_ISO_PDU_LEN_MAX
|
|||
config BT_CTLR_CONN_ISO_SDU_LEN_MAX
|
||||
int "Maximum Connected Isochronous Channel SDU Length"
|
||||
depends on BT_CTLR_CONN_ISO
|
||||
range BT_CTLR_CONN_ISO_PDU_LEN_MAX 4095
|
||||
range 1 4095
|
||||
default 251
|
||||
help
|
||||
Maximum Connected Isochronous Channel SDU Length.
|
||||
|
|
|
@ -1398,7 +1398,7 @@ static void le_read_buffer_size_v2(struct net_buf *buf, struct net_buf **evt)
|
|||
|
||||
rp->acl_max_len = sys_cpu_to_le16(LL_LENGTH_OCTETS_TX_MAX);
|
||||
rp->acl_max_num = CONFIG_BT_BUF_ACL_TX_COUNT;
|
||||
rp->iso_max_len = sys_cpu_to_le16(CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE);
|
||||
rp->iso_max_len = sys_cpu_to_le16(BT_CTLR_ISO_TX_BUFFER_SIZE);
|
||||
rp->iso_max_num = CONFIG_BT_CTLR_ISO_TX_BUFFERS;
|
||||
}
|
||||
#endif /* CONFIG_BT_CTLR_ADV_ISO || CONFIG_BT_CTLR_CONN_ISO */
|
||||
|
|
|
@ -189,10 +189,23 @@
|
|||
#define LL_FEAT_BIT_CIS_PERIPHERAL 0
|
||||
#endif /* !CONFIG_BT_CTLR_PERIPHERAL_ISO */
|
||||
|
||||
#if defined(CONFIG_BT_CTLR_ADV_ISO) || defined(CONFIG_BT_CTLR_CONN_ISO)
|
||||
#if defined(CONFIG_BT_ISO_TX_MTU)
|
||||
#define BT_CTLR_ISO_TX_BUFFER_SIZE MIN((CONFIG_BT_ISO_TX_MTU + \
|
||||
BT_HCI_ISO_SDU_TS_HDR_SIZE), \
|
||||
MAX(CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE, \
|
||||
(BT_HCI_ISO_SDU_TS_HDR_SIZE + 1U)))
|
||||
#else
|
||||
#define BT_CTLR_ISO_TX_BUFFER_SIZE MAX(CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE, \
|
||||
(BT_HCI_ISO_SDU_TS_HDR_SIZE + 1U))
|
||||
#endif /* CONFIG_BT_ISO_TX_MTU */
|
||||
#endif /* CONFIG_BT_CTLR_ADV_ISO || CONFIG_BT_CTLR_CONN_ISO */
|
||||
|
||||
#if defined(CONFIG_BT_CTLR_CENTRAL_ISO) || \
|
||||
defined(CONFIG_BT_CTLR_PERIPHERAL_ISO)
|
||||
#define LL_CIS_OCTETS_TX_MAX MIN(CONFIG_BT_CTLR_CONN_ISO_PDU_LEN_MAX, \
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE)
|
||||
(BT_CTLR_ISO_TX_BUFFER_SIZE - \
|
||||
BT_HCI_ISO_SDU_TS_HDR_SIZE))
|
||||
#define LL_CIS_OCTETS_RX_MAX CONFIG_BT_CTLR_CONN_ISO_PDU_LEN_MAX
|
||||
#else /* !CONFIG_BT_CTLR_CENTRAL_ISO && !CONFIG_BT_CTLR_PERIPHERAL_ISO */
|
||||
#define LL_CIS_OCTETS_TX_MAX 0
|
||||
|
@ -202,7 +215,8 @@
|
|||
#if defined(CONFIG_BT_CTLR_ADV_ISO)
|
||||
#define LL_FEAT_BIT_ISO_BROADCASTER BIT64(BT_LE_FEAT_BIT_ISO_BROADCASTER)
|
||||
#define LL_BIS_OCTETS_TX_MAX MIN(CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX, \
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE)
|
||||
(BT_CTLR_ISO_TX_BUFFER_SIZE - \
|
||||
BT_HCI_ISO_SDU_TS_HDR_SIZE))
|
||||
#else /* !CONFIG_BT_CTLR_ADV_ISO */
|
||||
#define LL_FEAT_BIT_ISO_BROADCASTER 0
|
||||
#define LL_BIS_OCTETS_TX_MAX 0
|
||||
|
|
|
@ -206,7 +206,7 @@ CONFIG_LOG_MODE_IMMEDIATE=y
|
|||
CONFIG_BT_CTLR_ADV_ISO=y
|
||||
CONFIG_BT_CTLR_SYNC_ISO=y
|
||||
CONFIG_BT_CTLR_SCAN_DATA_LEN_MAX=255
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=251
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=255
|
||||
CONFIG_BT_CTLR_ADV_DATA_LEN_MAX=191
|
||||
|
||||
# Controller ISO Broadcast Settings
|
||||
|
|
|
@ -17,7 +17,7 @@ CONFIG_BT_ISO_LOG_LEVEL_DBG=y
|
|||
# Controller Connected ISO configs
|
||||
CONFIG_BT_CTLR_CENTRAL_ISO=y
|
||||
CONFIG_BT_CTLR_PERIPHERAL_ISO=y
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=208
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFERS=4
|
||||
CONFIG_BT_CTLR_ISOAL_SOURCES=2
|
||||
CONFIG_BT_CTLR_ISOAL_SINKS=2
|
||||
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFERS=4
|
||||
|
|
|
@ -8,7 +8,7 @@ CONFIG_BT_PER_ADV_SYNC=y
|
|||
CONFIG_BT_ISO_BROADCASTER=y
|
||||
CONFIG_BT_ISO_SYNC_RECEIVER=y
|
||||
|
||||
CONFIG_BT_ISO_TX_MTU=251
|
||||
CONFIG_BT_ISO_TX_MTU=247
|
||||
CONFIG_BT_ISO_RX_MTU=251
|
||||
|
||||
CONFIG_BT_CTLR_ADV_EXT=y
|
||||
|
@ -16,8 +16,8 @@ CONFIG_BT_CTLR_ADV_ISO=y
|
|||
CONFIG_BT_CTLR_SYNC_ISO=y
|
||||
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFERS=2
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=251
|
||||
CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=251
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=255
|
||||
CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=247
|
||||
CONFIG_BT_CTLR_SYNC_ISO_PDU_LEN_MAX=251
|
||||
|
||||
CONFIG_BT_CTLR_TEST=y
|
||||
|
|
|
@ -15,7 +15,7 @@ CONFIG_BT_CTLR_ADV_EXT=y
|
|||
CONFIG_BT_CTLR_ADV_ISO=y
|
||||
CONFIG_BT_CTLR_SYNC_ISO=y
|
||||
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=251
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=255
|
||||
CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=251
|
||||
CONFIG_BT_CTLR_SYNC_ISO_PDU_LEN_MAX=251
|
||||
|
||||
|
|
|
@ -28,7 +28,7 @@ CONFIG_LOG=y
|
|||
CONFIG_BT_LL_SW_SPLIT=y
|
||||
CONFIG_BT_CTLR_CENTRAL_ISO=y
|
||||
CONFIG_BT_CTLR_PERIPHERAL_ISO=y
|
||||
CONFIG_BT_CTLR_CONN_ISO_SDU_LEN_MAX=251
|
||||
CONFIG_BT_CTLR_CONN_ISO_SDU_LEN_MAX=247
|
||||
CONFIG_BT_CTLR_CONN_ISO_PDU_LEN_MAX=251
|
||||
CONFIG_BT_CTLR_CONN_ISO_STREAMS=9
|
||||
CONFIG_BT_CTLR_CONN_ISO_STREAMS_PER_GROUP=9
|
||||
|
@ -36,7 +36,7 @@ CONFIG_BT_CTLR_ISOAL_SOURCES=9
|
|||
CONFIG_BT_CTLR_ISOAL_SINKS=9
|
||||
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFERS=18
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=251
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=255
|
||||
CONFIG_BT_CTLR_ISO_RX_BUFFERS=1
|
||||
|
||||
CONFIG_BT_CTLR_PHY_CODED=n
|
||||
|
|
|
@ -84,7 +84,7 @@ CONFIG_BT_CTLR_LLCP_LOCAL_PROC_CTX_BUF_NUM=9
|
|||
CONFIG_BT_CTLR_ADV_EXT=y
|
||||
CONFIG_BT_CTLR_ADV_PERIODIC=y
|
||||
CONFIG_BT_CTLR_ADV_ISO=y
|
||||
CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=251
|
||||
CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=247
|
||||
CONFIG_BT_CTLR_ADV_ISO_STREAM_MAX=2
|
||||
|
||||
# ISO Receive Controller
|
||||
|
@ -97,14 +97,14 @@ CONFIG_BT_CTLR_SYNC_ISO_STREAM_MAX=2
|
|||
# ISO Connection Oriented
|
||||
CONFIG_BT_CTLR_CENTRAL_ISO=y
|
||||
CONFIG_BT_CTLR_PERIPHERAL_ISO=y
|
||||
CONFIG_BT_CTLR_CONN_ISO_SDU_LEN_MAX=251
|
||||
CONFIG_BT_CTLR_CONN_ISO_SDU_LEN_MAX=247
|
||||
CONFIG_BT_CTLR_CONN_ISO_PDU_LEN_MAX=251
|
||||
CONFIG_BT_CTLR_CONN_ISO_STREAMS=4
|
||||
CONFIG_BT_CTLR_CONN_ISO_STREAMS_PER_GROUP=4
|
||||
|
||||
# ISO Transmissions
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFERS=18
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=251
|
||||
CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=255
|
||||
CONFIG_BT_CTLR_ISOAL_SOURCES=4
|
||||
|
||||
# ISO Receptions
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue