This patch adds initial support for BAP broadcast source. The current implementation allows BAP source endpoint registration, media transport creation, transport acquiring and sending broadcast ISO data. Currently, one BIG containing one BIS is supported. To test the current implementation use bluetoothctl with the following commands: # endpoint.register 00001852-0000-1000-8000-00805f9b34fb 0x06 # transport.acquire /org/bluez/hci0/dev_00_00_00_00_00_00/pac_broadcast0/fd0 # transport.send /org/bluez/hci0/dev_00_00_00_00_00_00/pac_broadcast0/fd0 <file.wav> The curent implementation checks that ISO_BROADCASTER is suported on the board so "Check for ISO support in controller" patch is required (https://patchwork.kernel.org/project/bluetooth/patch/20230510134557.11486-2-claudia.rosu@xxxxxxx/) Silviu Florian Barbulescu (6): Update Docs for BAP broadcast source Add macro definitions for BAP broadcast source support Check for ISO broadcast support in controller Add support for setsockopt (BT_IO_OPT_BASE) Update bluetoothctl with support for broadcast source Add initial support for BAP broadcast source btio/btio.c | 26 ++- btio/btio.h | 2 + client/player.c | 209 +++++++++++++++-- doc/media-api.txt | 11 + doc/mgmt-api.txt | 2 + lib/bluetooth.h | 9 + lib/mgmt.h | 2 + lib/uuid.h | 3 + monitor/packet.c | 4 +- profiles/audio/bap.c | 455 ++++++++++++++++++++++++++++++++----- profiles/audio/media.c | 129 +++++++++-- profiles/audio/transport.c | 51 +++-- src/shared/bap.c | 324 +++++++++++++++++++------- src/shared/bap.h | 81 +++++-- unit/test-bap.c | 83 +++---- 15 files changed, 1121 insertions(+), 270 deletions(-) base-commit: 718f27d09fc129d0b94ef61192482ac7e18cbaed -- 2.34.1