Zephyr API Documentation 4.3.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
iso.h
Go to the documentation of this file.
1
5
6/*
7 * Copyright (c) 2020 Intel Corporation
8 * Copyright (c) 2021-2025 Nordic Semiconductor ASA
9 *
10 * SPDX-License-Identifier: Apache-2.0
11 */
12#ifndef ZEPHYR_INCLUDE_BLUETOOTH_ISO_H_
13#define ZEPHYR_INCLUDE_BLUETOOTH_ISO_H_
14
25
26#include <stdint.h>
27#include <stddef.h>
28
34#include <zephyr/net_buf.h>
35#include <zephyr/sys/atomic.h>
36#include <zephyr/sys/slist.h>
38
39#ifdef __cplusplus
40extern "C" {
41#endif
42
46#define BT_ISO_CHAN_SEND_RESERVE BT_BUF_ISO_SIZE(0)
47
56#define BT_ISO_SDU_BUF_SIZE(mtu) BT_BUF_ISO_SIZE(mtu)
57
66#define BT_ISO_BIS_INDEX_BIT(x) (BIT((x) - 1))
67
69#define BT_ISO_DATA_PATH_HCI 0x00
70
72#define BT_ISO_SDU_INTERVAL_UNKNOWN 0x000000U
74#define BT_ISO_DATA_PATH_VS_ID_MIN 0x01
76#define BT_ISO_DATA_PATH_VS_ID_MAX 0xFE
78#define BT_ISO_CONTROLLER_DELAY_MIN 0x000000
80#define BT_ISO_CONTROLLER_DELAY_MAX 0x3D0900
82#define BT_ISO_SDU_INTERVAL_MIN 0x0000FFU
84#define BT_ISO_SDU_INTERVAL_MAX 0x0FFFFFU
86#define BT_ISO_ISO_INTERVAL_MIN 0x0004U
88#define BT_ISO_ISO_INTERVAL_MAX 0x0C80U
90#define BT_ISO_LATENCY_MIN 0x0005
92#define BT_ISO_LATENCY_MAX 0x0FA0
94#define BT_ISO_PACKING_SEQUENTIAL 0x00
96#define BT_ISO_PACKING_INTERLEAVED 0x01
98#define BT_ISO_FRAMING_UNFRAMED 0x00
100#define BT_ISO_FRAMING_FRAMED 0x01
102#define BT_ISO_MAX_GROUP_ISO_COUNT 0x1F
104#define BT_ISO_MIN_SDU 0x0001
106#define BT_ISO_MAX_SDU 0x0FFF
108#define BT_ISO_CONNECTED_PDU_MIN 0x0000U
110#define BT_ISO_BROADCAST_PDU_MIN 0x0001U
112#define BT_ISO_PDU_MAX 0x00FBU
114#define BT_ISO_BN_MIN 0x01U
116#define BT_ISO_BN_MAX 0x0FU
118#define BT_ISO_FT_MIN 0x01U
120#define BT_ISO_FT_MAX 0xFFU
122#define BT_ISO_NSE_MIN 0x01U
124#define BT_ISO_NSE_MAX 0x1FU
126#define BT_ISO_SYNC_TIMEOUT_MIN 0x000A
128#define BT_ISO_SYNC_TIMEOUT_MAX 0x4000
130#define BT_ISO_SYNC_MSE_ANY 0x00
132#define BT_ISO_SYNC_MSE_MIN 0x01
134#define BT_ISO_SYNC_MSE_MAX 0x1F
136#define BT_ISO_CONNECTED_RTN_MIN 0x00
138#define BT_ISO_CONNECTED_RTN_MAX 0xFF
140#define BT_ISO_BROADCAST_RTN_MIN 0x00
142#define BT_ISO_BROADCAST_RTN_MAX 0x1E
144#define BT_ISO_BROADCAST_CODE_SIZE 0x10
146#define BT_ISO_BIS_INDEX_MIN 0x01
148#define BT_ISO_BIS_INDEX_MAX 0x1F
150#define BT_ISO_IRC_MIN 0x01U
152#define BT_ISO_IRC_MAX 0x0FU
154#define BT_ISO_PTO_MIN 0x00U
156#define BT_ISO_PTO_MAX 0x0FU
158#define BT_ISO_SUBINTERVAL_NONE 0x00000000U
160#define BT_ISO_SUBINTERVAL_UNKNOWN 0xFFFFFFFFU
162#define BT_ISO_SUBINTERVAL_MIN 0x00000190U
167#define BT_ISO_SUBINTERVAL_MAX 0x00009C3FU
168
174#define BT_ISO_VALID_BIS_BITFIELD(_bis_bitfield) \
175 ((_bis_bitfield) != 0U && (_bis_bitfield) <= BIT_MASK(BT_ISO_BIS_INDEX_MAX))
176
193
194
205
209 struct bt_conn *iso;
216#if (defined(CONFIG_BT_SMP) && defined(CONFIG_BT_ISO_UNICAST)) || defined(__DOXYGEN__)
228#endif /* CONFIG_BT_SMP && CONFIG_BT_ISO_UNICAST */
231};
232
253
254#if defined(CONFIG_BT_ISO_TEST_PARAMS) || defined(__DOXYGEN__)
265
272#endif /* CONFIG_BT_ISO_TEST_PARAMS */
273};
274
294
295#if defined(CONFIG_BT_ISO_TEST_PARAMS) || defined(__DOXYGEN__)
304#endif /* CONFIG_BT_ISO_TEST_PARAMS */
305};
306
341
343enum {
346
353
356
364};
365
381
393
394
396struct bt_iso_cig;
397
402
409
416
423
432
441
450
457
464
465#if defined(CONFIG_BT_ISO_TEST_PARAMS) || defined(__DOXYGEN__)
475
485
494#endif /* CONFIG_BT_ISO_TEST_PARAMS */
495};
496
501
503 struct bt_conn *acl;
504};
505
507struct bt_iso_big;
508
513
520
527
536
543
550
553
567
568#if defined(CONFIG_BT_ISO_TEST_PARAMS) || defined(__DOXYGEN__)
577
586
595#endif /* CONFIG_BT_ISO_TEST_PARAMS */
596};
597
656
701
715 void (*connected)(struct bt_iso_chan *chan);
716
735 void (*disconnected)(struct bt_iso_chan *chan, uint8_t reason);
736
747 struct net_buf *(*alloc_buf)(struct bt_iso_chan *chan);
748
759 void (*recv)(struct bt_iso_chan *chan, const struct bt_iso_recv_info *info,
760 struct net_buf *buf);
761
772 void (*sent)(struct bt_iso_chan *chan);
773};
774
778 struct bt_conn *acl;
779
786
793};
794
797#if defined(CONFIG_BT_SMP) || defined(__DOXYGEN__)
804#endif /* CONFIG_BT_SMP */
805
816 int (*accept)(const struct bt_iso_accept_info *info, struct bt_iso_chan **chan);
817};
818
831
842
857int bt_iso_cig_create(const struct bt_iso_cig_param *param, struct bt_iso_cig **out_cig);
858
879int bt_iso_cig_reconfigure(struct bt_iso_cig *cig, const struct bt_iso_cig_param *param);
880
890int bt_iso_cig_terminate(struct bt_iso_cig *cig);
891
929int bt_iso_chan_connect(const struct bt_iso_connect_param *param, size_t count);
930
951
971int bt_iso_chan_send(struct bt_iso_chan *chan, struct net_buf *buf, uint16_t seq_num);
972
995int bt_iso_chan_send_ts(struct bt_iso_chan *chan, struct net_buf *buf, uint16_t seq_num,
996 uint32_t ts);
997
1019int bt_iso_setup_data_path(const struct bt_iso_chan *chan, uint8_t dir,
1020 const struct bt_iso_chan_path *path);
1021
1060int bt_iso_remove_data_path(const struct bt_iso_chan *chan, uint8_t dir);
1061
1091
1120
1150
1174
1179
1182
1185
1193
1201
1203 union {
1204#if defined(CONFIG_BT_ISO_UNICAST) || defined(__DOXYGEN__)
1213#endif /* CONFIG_BT_ISO_UNICAST */
1214#if defined(CONFIG_BT_ISO_BROADCASTER) || defined(__DOXYGEN__)
1222#endif /* CONFIG_BT_ISO_BROADCASTER */
1223#if defined(CONFIG_BT_ISO_SYNC_RECEIVER) || defined(__DOXYGEN__)
1231#endif /* CONFIG_BT_ISO_SYNC_RECEIVER */
1232 };
1233};
1234
1243int bt_iso_chan_get_info(const struct bt_iso_chan *chan, struct bt_iso_info *info);
1244
1260int bt_iso_chan_get_tx_sync(const struct bt_iso_chan *chan, struct bt_iso_tx_info *info);
1261
1273 void (*started)(struct bt_iso_big *big);
1274
1281 void (*stopped)(struct bt_iso_big *big, uint8_t reason);
1282
1284 sys_snode_t _node;
1285};
1286
1297
1309int bt_iso_big_create(struct bt_le_ext_adv *padv, struct bt_iso_big_create_param *param,
1310 struct bt_iso_big **out_big);
1311
1322int bt_iso_big_terminate(struct bt_iso_big *big);
1323
1333int bt_iso_big_sync(struct bt_le_per_adv_sync *sync, struct bt_iso_big_sync_param *param,
1334 struct bt_iso_big **out_big);
1335
1336#ifdef __cplusplus
1337}
1338#endif
1339
1343
1344#endif /* ZEPHYR_INCLUDE_BLUETOOTH_ISO_H_ */
Bluetooth device address definitions and utilities.
Bluetooth subsystem core APIs.
Bluetooth data buffer API.
Bluetooth connection handling.
bt_security_t
Security level.
Definition conn.h:1139
int bt_iso_chan_send(struct bt_iso_chan *chan, struct net_buf *buf, uint16_t seq_num)
Send data to ISO channel without timestamp.
int bt_iso_server_unregister(struct bt_iso_server *server)
Unregister ISO server.
int bt_iso_remove_data_path(const struct bt_iso_chan *chan, uint8_t dir)
Removes the ISO data path for a ISO channel.
#define BT_ISO_BROADCAST_CODE_SIZE
Broadcast code size (16 octets).
Definition iso.h:144
int bt_iso_chan_get_info(const struct bt_iso_chan *chan, struct bt_iso_info *info)
Get ISO channel info.
int bt_iso_big_sync(struct bt_le_per_adv_sync *sync, struct bt_iso_big_sync_param *param, struct bt_iso_big **out_big)
Creates a BIG as a receiver.
int bt_iso_big_register_cb(struct bt_iso_big_cb *cb)
Registers callbacks for Broadcast Sources.
int bt_iso_chan_disconnect(struct bt_iso_chan *chan)
Disconnect connected ISO channel.
int bt_iso_chan_connect(const struct bt_iso_connect_param *param, size_t count)
Connect ISO channels on ACL connections.
int bt_iso_cig_reconfigure(struct bt_iso_cig *cig, const struct bt_iso_cig_param *param)
Reconfigure a CIG as a central.
int bt_iso_chan_get_tx_sync(const struct bt_iso_chan *chan, struct bt_iso_tx_info *info)
Get ISO transmission timing info.
int bt_iso_setup_data_path(const struct bt_iso_chan *chan, uint8_t dir, const struct bt_iso_chan_path *path)
Sets up the ISO data path for a ISO channel.
int bt_iso_chan_send_ts(struct bt_iso_chan *chan, struct net_buf *buf, uint16_t seq_num, uint32_t ts)
Send data to ISO channel with timestamp.
int bt_iso_big_terminate(struct bt_iso_big *big)
Terminates a BIG as a broadcaster or receiver.
int bt_iso_big_create(struct bt_le_ext_adv *padv, struct bt_iso_big_create_param *param, struct bt_iso_big **out_big)
Creates a BIG as a broadcaster.
int bt_iso_cig_terminate(struct bt_iso_cig *cig)
Terminates a CIG as a central.
int bt_iso_cig_create(const struct bt_iso_cig_param *param, struct bt_iso_cig **out_cig)
Creates a CIG as a central.
bt_iso_state
Life-span states of ISO channel.
Definition iso.h:181
bt_iso_chan_type
ISO Channel Type.
Definition iso.h:198
int bt_iso_server_register(struct bt_iso_server *server)
Register ISO server.
@ BT_ISO_FLAGS_VALID
The ISO packet is valid.
Definition iso.h:345
@ BT_ISO_FLAGS_LOST
The ISO packet was lost.
Definition iso.h:355
@ BT_ISO_FLAGS_ERROR
The ISO packet may possibly contain errors.
Definition iso.h:352
@ BT_ISO_FLAGS_TS
Timestamp is valid.
Definition iso.h:363
@ BT_ISO_STATE_ENCRYPT_PENDING
Channel is pending ACL encryption before connecting.
Definition iso.h:185
@ BT_ISO_STATE_CONNECTING
Channel in connecting state.
Definition iso.h:187
@ BT_ISO_STATE_CONNECTED
Channel ready for upper layer traffic on it.
Definition iso.h:189
@ BT_ISO_STATE_DISCONNECTING
Channel in disconnecting state.
Definition iso.h:191
@ BT_ISO_STATE_DISCONNECTED
Channel disconnected.
Definition iso.h:183
@ BT_ISO_CHAN_TYPE_CENTRAL
Connected as central.
Definition iso.h:200
@ BT_ISO_CHAN_TYPE_NONE
No channel type.
Definition iso.h:199
@ BT_ISO_CHAN_TYPE_BROADCASTER
Isochronous broadcaster.
Definition iso.h:202
@ BT_ISO_CHAN_TYPE_SYNC_RECEIVER
Synchronized receiver.
Definition iso.h:203
@ BT_ISO_CHAN_TYPE_PERIPHERAL
Connected as peripheral.
Definition iso.h:201
struct _snode sys_snode_t
Single-linked list node structure.
Definition slist.h:39
#define BIT(n)
Unsigned integer with bit position n set (signed in assembly language).
Definition util_macro.h:44
Buffer management.
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
__UINT16_TYPE__ uint16_t
Definition stdint.h:89
Bluetooth LE Device Address.
Definition addr.h:49
ISO Accept Info Structure.
Definition iso.h:776
struct bt_conn * acl
The ACL connection that is requesting authorization.
Definition iso.h:778
uint8_t cis_id
The ID of the connected isochronous stream (CIS) on the central.
Definition iso.h:792
uint8_t cig_id
The ID of the connected isochronous group (CIG) on the central.
Definition iso.h:785
Struct to hold the Broadcast Isochronous Group callbacks.
Definition iso.h:1267
void(* stopped)(struct bt_iso_big *big, uint8_t reason)
The BIG has stopped and none of the streams are ready for data.
Definition iso.h:1281
void(* started)(struct bt_iso_big *big)
The BIG has started and all of the streams are ready for data.
Definition iso.h:1273
Broadcast Isochronous Group (BIG) creation parameters.
Definition iso.h:510
bool encryption
Whether or not to encrypt the streams.
Definition iso.h:552
uint16_t iso_interval
ISO interval.
Definition iso.h:594
struct bt_iso_chan ** bis_channels
Array of pointers to BIS channels.
Definition iso.h:512
uint32_t interval
Channel interval in us.
Definition iso.h:526
uint8_t num_bis
Number of channels in bis_channels.
Definition iso.h:519
uint8_t framing
Channel framing mode.
Definition iso.h:549
uint16_t latency
Channel Latency in ms.
Definition iso.h:535
uint8_t packing
Channel packing mode.
Definition iso.h:542
uint8_t irc
Immediate Repetition Count.
Definition iso.h:576
uint8_t bcode[0x10]
Broadcast code.
Definition iso.h:566
uint8_t pto
Pre-transmission offset.
Definition iso.h:585
Broadcast Isochronous Group (BIG) Sync Parameters.
Definition iso.h:599
uint32_t bis_bitfield
Bitfield of the BISes to sync to.
Definition iso.h:618
uint32_t mse
Maximum subevents.
Definition iso.h:630
uint16_t sync_timeout
Synchronization timeout for the BIG (N * 10 MS).
Definition iso.h:637
bool encryption
Whether or not the streams of the BIG are encrypted.
Definition iso.h:640
uint8_t num_bis
Number channels in bis_channels.
Definition iso.h:608
uint8_t bcode[0x10]
Broadcast code.
Definition iso.h:654
struct bt_iso_chan ** bis_channels
Array of pointers to BIS channels.
Definition iso.h:601
Broadcast Isochronous Group (BIG) information.
Definition iso.h:658
uint8_t framing
Channel framing mode.
Definition iso.h:696
uint8_t num_bis
Number of BISes in the BIG.
Definition iso.h:666
uint8_t sub_evt_count
Maximum number of subevents in each isochronous event.
Definition iso.h:669
uint8_t phy
Channel PHY.
Definition iso.h:693
uint32_t sdu_interval
The interval, in microseconds, of periodic SDUs.
Definition iso.h:687
uint8_t offset
Offset used for pre-transmissions.
Definition iso.h:678
uint8_t sid
Advertiser SID.
Definition iso.h:663
bool encryption
Whether or not the BIG is encrypted.
Definition iso.h:699
uint8_t rep_count
The number of times a payload is transmitted in a BIS event.
Definition iso.h:681
uint16_t max_sdu
Maximum size of an SDU, in octets.
Definition iso.h:690
const bt_addr_le_t * addr
Address of the advertiser.
Definition iso.h:660
uint8_t burst_number
The number of new payloads in each BIS event.
Definition iso.h:675
uint16_t max_pdu
Maximum size, in octets, of the payload.
Definition iso.h:684
uint16_t iso_interval
Interval between two BIG anchor point (N * 1.25 ms).
Definition iso.h:672
ISO Broadcaster Info Structure.
Definition iso.h:1122
uint8_t big_handle
Broadcast Isochronous Group Handle.
Definition iso.h:1124
uint8_t phy
The transport PHY.
Definition iso.h:1142
uint32_t sync_delay
The maximum time in us for all PDUs of all BIS in a BIG event.
Definition iso.h:1130
uint32_t latency
The transport latency in us.
Definition iso.h:1133
uint32_t pto
Pre-transmission offset (N * 1.25 ms).
Definition iso.h:1136
uint16_t max_pdu
The maximum PDU size in octets.
Definition iso.h:1139
uint8_t bis_number
Broadcast Isochronous Stream number.
Definition iso.h:1127
uint8_t bn
The burst number.
Definition iso.h:1145
uint8_t irc
Number of times a payload is transmitted in a BIS event.
Definition iso.h:1148
ISO Channel IO QoS structure.
Definition iso.h:234
uint8_t phy
Channel PHY - See the bt_gap_le_phy values.
Definition iso.h:246
uint8_t rtn
Channel Retransmission Number.
Definition iso.h:252
uint8_t burst_number
Burst number.
Definition iso.h:271
uint16_t sdu
Channel SDU.
Definition iso.h:240
uint16_t max_pdu
Maximum PDU size.
Definition iso.h:264
ISO Channel operations structure.
Definition iso.h:703
void(* sent)(struct bt_iso_chan *chan)
Channel sent callback.
Definition iso.h:772
void(* disconnected)(struct bt_iso_chan *chan, uint8_t reason)
Channel disconnected callback.
Definition iso.h:735
void(* connected)(struct bt_iso_chan *chan)
Channel connected callback.
Definition iso.h:715
void(* recv)(struct bt_iso_chan *chan, const struct bt_iso_recv_info *info, struct net_buf *buf)
Channel recv callback.
Definition iso.h:759
ISO Channel Data Path structure.
Definition iso.h:308
uint8_t cc_len
Codec Configuration length.
Definition iso.h:333
uint8_t format
Coding Format.
Definition iso.h:321
uint8_t pid
Default path ID.
Definition iso.h:315
uint16_t cid
Company ID.
Definition iso.h:323
uint8_t * cc
Pointer to an array containing the Codec Configuration.
Definition iso.h:339
uint32_t delay
Controller Delay in microseconds.
Definition iso.h:331
uint16_t vid
Vendor-defined Codec ID.
Definition iso.h:325
ISO Channel QoS structure.
Definition iso.h:276
struct bt_iso_chan_io_qos * tx
Channel Transmission QoS.
Definition iso.h:293
uint8_t num_subevents
Number of subevents.
Definition iso.h:303
struct bt_iso_chan_io_qos * rx
Channel Receiving QoS.
Definition iso.h:284
ISO Channel structure.
Definition iso.h:207
struct bt_iso_chan_ops * ops
Channel operations reference.
Definition iso.h:211
enum bt_iso_state state
Channel state.
Definition iso.h:215
bt_security_t required_sec_level
The required security level of the channel.
Definition iso.h:227
struct bt_conn * iso
Channel connection reference.
Definition iso.h:209
sys_snode_t node
Definition iso.h:230
struct bt_iso_chan_qos * qos
Channel QoS reference.
Definition iso.h:213
Connected Isochronous Group (CIG) parameters.
Definition iso.h:399
uint32_t p_to_c_interval
Channel interval in us for SDUs sent from Peripheral to Central.
Definition iso.h:422
uint8_t packing
Channel packing mode.
Definition iso.h:456
uint8_t framing
Channel framing mode.
Definition iso.h:463
uint8_t num_cis
Number of channels in cis_channels.
Definition iso.h:408
uint8_t sca
Channel peripherals sleep clock accuracy Only for CIS.
Definition iso.h:449
struct bt_iso_chan ** cis_channels
Array of pointers to CIS channels.
Definition iso.h:401
uint16_t iso_interval
ISO interval.
Definition iso.h:493
uint8_t c_to_p_ft
Central to Peripheral flush timeout.
Definition iso.h:474
uint8_t p_to_c_ft
Peripheral to Central flush timeout.
Definition iso.h:484
uint16_t p_to_c_latency
Channel Latency in ms for SDUs sent from Peripheral to Central.
Definition iso.h:440
uint32_t c_to_p_interval
Channel interval in us for SDUs sent from Central to Peripheral.
Definition iso.h:415
uint16_t c_to_p_latency
Channel Latency in ms for SDUs sent from Central to Peripheral.
Definition iso.h:431
ISO connection parameters structure.
Definition iso.h:498
struct bt_conn * acl
The ACL connection.
Definition iso.h:503
struct bt_iso_chan * iso_chan
The ISO channel to connect.
Definition iso.h:500
ISO channel Info Structure.
Definition iso.h:1176
uint8_t max_subevent
The maximum number of subevents in each ISO event.
Definition iso.h:1184
struct bt_iso_unicast_info unicast
Unicast specific Info.
Definition iso.h:1212
bool can_send
True if the channel is able to send data.
Definition iso.h:1192
uint16_t iso_interval
The ISO interval (N * 1.25 ms).
Definition iso.h:1181
struct bt_iso_broadcaster_info broadcaster
Broadcaster specific Info.
Definition iso.h:1221
bool can_recv
True if the channel is able to recv data.
Definition iso.h:1200
struct bt_iso_sync_receiver_info sync_receiver
Sync receiver specific Info.
Definition iso.h:1230
enum bt_iso_chan_type type
Channel Type.
Definition iso.h:1178
ISO Meta Data structure for received ISO packets.
Definition iso.h:367
uint8_t flags
ISO packet flags bitfield (BT_ISO_FLAGS_*).
Definition iso.h:379
uint32_t ts
ISO timestamp.
Definition iso.h:373
uint16_t seq_num
ISO packet sequence number of the first fragment in the SDU.
Definition iso.h:376
ISO Server structure.
Definition iso.h:796
bt_security_t sec_level
Required minimum security level.
Definition iso.h:803
int(* accept)(const struct bt_iso_accept_info *info, struct bt_iso_chan **chan)
Server accept callback.
Definition iso.h:816
ISO Synchronized Receiver Info Structure.
Definition iso.h:1152
uint32_t latency
The transport latency in us.
Definition iso.h:1160
uint16_t max_pdu
The maximum PDU size in octets.
Definition iso.h:1166
uint8_t bis_number
Broadcast Isochronous Stream number.
Definition iso.h:1157
uint8_t irc
Number of times a payload is transmitted in a BIS event.
Definition iso.h:1172
uint32_t pto
Pre-transmission offset (N * 1.25 ms).
Definition iso.h:1163
uint8_t bn
The burst number.
Definition iso.h:1169
uint8_t big_handle
Broadcast Isochronous Group handle.
Definition iso.h:1154
ISO Meta Data structure for transmitted ISO packets.
Definition iso.h:383
uint32_t offset
Time offset, in microseconds.
Definition iso.h:388
uint16_t seq_num
Packet sequence number.
Definition iso.h:391
uint32_t ts
CIG reference point or BIG anchor point of a transmitted SDU, in microseconds.
Definition iso.h:385
ISO Unicast Info Structure.
Definition iso.h:1093
uint32_t cig_sync_delay
The maximum time in us for all PDUs of all CIS in a CIG event.
Definition iso.h:1101
struct bt_iso_unicast_tx_info peripheral
TX information for the peripheral to central data.
Definition iso.h:1118
uint8_t cig_id
Connected Isochronous Group ID.
Definition iso.h:1095
uint32_t subinterval
The subinterval in microseconds.
Definition iso.h:1112
struct bt_iso_unicast_tx_info central
TX information for the central to peripheral data path.
Definition iso.h:1115
uint8_t cis_id
Connected Isochronous Stream ID.
Definition iso.h:1098
uint32_t cis_sync_delay
The maximum time in us for all PDUs of this CIS in a CIG event.
Definition iso.h:1104
ISO Unicast TX Info Structure.
Definition iso.h:1063
uint32_t latency
The transport latency in us.
Definition iso.h:1065
uint8_t phy
The transport PHY.
Definition iso.h:1074
uint16_t max_sdu
The maximum SDU size in octets.
Definition iso.h:1083
uint32_t flush_timeout
The flush timeout (N * 1.25 ms).
Definition iso.h:1068
uint8_t bn
The burst number.
Definition iso.h:1077
uint32_t sdu_interval
The SDU interval in microseconds.
Definition iso.h:1089
uint16_t max_pdu
The maximum PDU size in octets.
Definition iso.h:1071
Network buffer representation.
Definition net_buf.h:1006
Macro utilities.