acad_len in ble_ll_sync_rx_pkt_in is filled in ble_ll_sync_parse_ext_hdr
and later accessed in ble_ll_sync_check_acad. There is a possibility
that extended advertising header is missing data containing acad, and it
will not get filled, leaving it uninitialised.
We need to move periodic advertising event start time by full interval
(not only ticks) as otherwise any calculation of start time in the
future event will not be accurate.
Currently we simply drop adv event if it was preempted, but instead we
can try to reschedule it as longs as new start time does not exceed
adv_delay limit.
Note that we only reschedule if no PDU was sent in that event, otherwise
we could not guarantee that aux is properly scheduled relative to exts.
Some peers reject connection to EATT PSM if encryption is not enabled.
Since EATT requires any PDUs to be sent only on encrypted link we
can postpone initiating EATT connection until encryption with no real
drawbacks.
This fixes potential BIG memory leak in case ble_hs_hci_cmd_tx returned
an error.
If the error is returned, the code will free the allocated BIG and
BISes.
This commit adds Published Audio Capabilities Service/Prifile. In pair
ble_audio_codec module is added, that supports registering supported
codecs with their corresponding configurations.
This patch refactors BLE Audio library to conform to new directory tree
introduced in a9795706bea035d84d1577680e0814ceedc9dc58.
LE Audio related files present in host/include, host/src and
host/services were moved to corelated folders in host/audio.
Experimental system config BLE_AUDIO enabling LE Audio feature was introduced.
Naming convention for BLE Audio functions, structures and files was
unified - replaced `bcst` shorthand with `broadcast`. For example,
ble_audio_pub_bcst_announcement_feat was renamed to
ble_audio_pub_broadcast_announcement_feat.
Contents of host/include/ble_audio_common.h was incorporated into
host/audio/include/audio/ble_audio.h.
Apps and Auracast service were adjusted to new config and include paths.
BLE_MAX_BIG and BLE_MAX_BIS renamed to BLE_ISO_MAX_BIGS and
BLE_ISO_MAX_BISES, respectevaly.
This adds the BLE_ISO dependency on BLE_ISO_BROADCAST_SOURCE and
BLE_ISO_BROADCAST_SINK.
Once one of those roles is enabled, the BLE_ISO shall be enabled.
The BIG lookup function returns NULL if BIG has not been found, thus to
be safe the return value has to be checked in case functions are called
with big_handle value of non-existent BIG.
This fixes BIG handle value assigned on BIG instance allocation.
Dedicated function has been added to get unique handle from
BIG handles pool. PA dependency has been removed from ISO.
The checks have meen moved to ble_audio_broadcast_source.c.
This patch renames files, functions and configs from `broadcaster` to
`broadcast source` so new `broadcast sink` files and functions can be
created. Adds `BLE_ISO_BROADCAST_SINK` sysconfig
This fixes unit test compilation error caused by missing
ble_phy_tifs_txtx_set() and ble_phy_encrypt_header_mask_set() function
stubs used by ble_ll_iso_big.c and ble_ll_isoal.c.
ble_gap_rx_create_big_complete and ble_gap_rx_terminate_big_complete are a
leftover from initial implementation and shall be removed. Correct,
implemented funcions are ble_iso_rx_create_big_complete and
ble_iso_rx_terminate_big_completem, in private API
We don't need to have double loop and lock-unlock host lock when
issuing disconnect. ble_gap_terminate_with_conn() can be used
to disconnect and it can be called with already provided conn object
under host lock.