Bluetooth: ISO: Change CIG/BIG to use slist instead of array

A CIG may be updated later to include more CIS, and thus a slist
makes more sense.

The BIG doesn't need the change, but it makes more sense to
have similar handling for both.

This change also removes the requirement that the arrays
used to create the CIG/BIG need to static.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
This commit is contained in:
Emil Gydesen 2021-10-15 14:22:42 +02:00 committed by Christopher Friedt
commit ba0a053f94
6 changed files with 85 additions and 76 deletions

View file

@ -108,6 +108,8 @@ struct bt_iso_chan {
struct bt_iso_chan_qos *qos;
uint8_t state;
bt_security_t required_sec_level;
/** Node used internally by the stack */
sys_snode_t node;
};
/** @brief ISO Channel IO QoS structure. */
@ -198,10 +200,7 @@ struct bt_iso_recv_info {
struct bt_iso_cig;
struct bt_iso_cig_create_param {
/** @brief Array of pointers to CIS channels
*
* This array shall remain valid for the duration of the CIG.
*/
/** @brief Array of pointers to CIS channels */
struct bt_iso_chan **cis_channels;
/** @brief Number channels in @p cis_channels
@ -258,10 +257,7 @@ struct bt_iso_connect_param {
struct bt_iso_big;
struct bt_iso_big_create_param {
/** Array of pointers to BIS channels
*
* This array shall remain valid for the duration of the BIG.
*/
/** Array of pointers to BIS channels */
struct bt_iso_chan **bis_channels;
/** @brief Number channels in @p bis_channels