Commit: 8fa5584e5632582583a346b7195fce0ad7d9aff1
Parent: d3e40e82afba8bbc24df8c23272fbf8a68e6ed67
Author: Iulia Tanasescu <iulia.tanasescu@nxp.com>
Committer: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Date: 2025-02-12 17:53:47
Tree: 1e50b68191df9170a98aea9fcdf7dc0cfcb3a401

bass: Register bap attached/detached callbacks This removes the bass_bcast_probe and bass_bcast_remove APIs, in order to decouple the BASS and BAP plugins. Instead, since the BASS Server (BAP Scan Delegator) implementation needs to reference the bap session, BASS registers bap attached/detached callbacks with shared/bap. - After receiving a request from a Broadcast Assistant, the BASS Server creates a device for the Broadcaster and adds the UUID to probe. - The service is probed inside the BAP plugin, where a new bt_bap session is attached. The service is set as user data beforehand. - The bt_bap session is notified in the BASS bap_attached callback. The reference to the service is accessible from the user data. - The BASS Server takes ownership for the service by setting its user data. This way, short-lived PA sync will be skipped inside BAP, and the BASS Server will handle long-lived PA sync and stream configuration. - When the bt_bap session is removed, it will be notified in the bap_detached callback.

Diffstat

M profiles/audio/bap.c | 53 +++++++++++++++++++++++++++++++++++++- - - - - - - - - - - - - - - -
M profiles/audio/bass.c | 46 ++++++++++++++++++++++++++- - - - - - - - - - - - - - - - - - - -
M profiles/audio/bass.h | 5 +- - - -

3 files changed, 64 insertions(+), 40 deletions(-)

View Full Diff | Patch