All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH BlueZ v3 00/10] BAP stream reconfiguration
@ 2025-06-08 21:32 Pauli Virtanen
  2025-06-08 21:32 ` [PATCH BlueZ v3 01/10] bap: do not try QoS before links are updated & io created Pauli Virtanen
                   ` (10 more replies)
  0 siblings, 11 replies; 14+ messages in thread
From: Pauli Virtanen @ 2025-06-08 21:32 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Pauli Virtanen

Implement ClearConfiguration() and Reconfigure() for BAP unicast
MediaEndpoints.

v3:

- Add bt_bap_stream_lock(), instead of bt_bap_stream_discard()

- Separate commit for "detach on RELEASING"

- Move "bap: do not try QoS before links are updated" first,
  as it makes sense standalone

- Add "bap: don't show error when releasing stream"

- Add "bap: delay QoS & IO creation if CIG is busy or setups configuring"

  This reworks the unicast stream creation/QoS/CIG activation logic, to
  avoid doing operations that are impossible due to CIG state machine
  rules, or lead to ID conflicts.

Unicast tested manually on:

- Sony Linkbuds S: switching between AC 6(ii), 8(ii), 11(ii)
- Earfun Air Pro 3: switching between AC 6(i), 11(i)

with corresponding Pipewire branch
https://gitlab.freedesktop.org/pvir/pipewire/-/commits/bap-codec-switch-select

Some more testing is probably warranted.

Broadcast has not been tested.

Pauli Virtanen (10):
  bap: do not try QoS before links are updated & io created
  shared/bap: detach ucast io on RELEASING and unlink streams
  shared/bap: add client ASE reuse and upper level stream locking
  bap: lock streams when used
  bap: add ready callback for setup configuration
  bap: support removing streams with ClearConfiguration()
  bap: add callback at the end of ucast client select/config
  bap: implement Reconfigure()
  bap: don't show error when releasing stream
  bap: delay QoS & IO creation if CIG is busy or setups configuring

 profiles/audio/bap.c       | 1085 ++++++++++++++++++++++++++++--------
 profiles/audio/transport.c |   20 +-
 profiles/audio/transport.h |    1 +
 src/shared/bap.c           |  168 ++++--
 src/shared/bap.h           |    3 +
 5 files changed, 1005 insertions(+), 272 deletions(-)

-- 
2.49.0


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2025-06-09 19:16 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-08 21:32 [PATCH BlueZ v3 00/10] BAP stream reconfiguration Pauli Virtanen
2025-06-08 21:32 ` [PATCH BlueZ v3 01/10] bap: do not try QoS before links are updated & io created Pauli Virtanen
2025-06-08 22:55   ` BAP stream reconfiguration bluez.test.bot
2025-06-08 21:32 ` [PATCH BlueZ v3 02/10] shared/bap: detach ucast io on RELEASING and unlink streams Pauli Virtanen
2025-06-08 21:32 ` [PATCH BlueZ v3 03/10] shared/bap: add client ASE reuse and upper level stream locking Pauli Virtanen
2025-06-08 21:32 ` [PATCH BlueZ v3 04/10] bap: lock streams when used Pauli Virtanen
2025-06-08 21:32 ` [PATCH BlueZ v3 05/10] bap: add ready callback for setup configuration Pauli Virtanen
2025-06-08 21:32 ` [PATCH BlueZ v3 06/10] bap: support removing streams with ClearConfiguration() Pauli Virtanen
2025-06-08 21:32 ` [PATCH BlueZ v3 07/10] bap: add callback at the end of ucast client select/config Pauli Virtanen
2025-06-08 21:32 ` [PATCH BlueZ v3 08/10] bap: implement Reconfigure() Pauli Virtanen
2025-06-08 21:32 ` [PATCH BlueZ v3 09/10] bap: don't show error when releasing stream Pauli Virtanen
2025-06-08 21:32 ` [PATCH BlueZ v3 10/10] bap: delay QoS & IO creation if CIG is busy or setups configuring Pauli Virtanen
2025-06-09 19:05 ` [PATCH BlueZ v3 00/10] BAP stream reconfiguration patchwork-bot+bluetooth
2025-06-09 19:16   ` Luiz Augusto von Dentz

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.