Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit c7edf444 authored by Łukasz Rymanowski's avatar Łukasz Rymanowski
Browse files

leaudio: Add reconfiguration guard

Android stack choose LeAudio configuration based on the local sink and
source metadata.

Local Source metadata change does immediate change if needed.
Local Sink metadata change just stores metadata and applies it when
Local Sink direction is resumed (started).

It has been observed that while BT Stack tries to reconfigure the
stream, Audio HAL keep changing Metadata on the Local Source which
breaks reconfiguration, especially when reconfiguration has been
triggered by Local Sink direction. This is because Audio HAL keeps
Suspending and Resuming Sink direction but keeps intention of previous
revonfiguration - which Android is not aware of.

With this change, when reconfiguration is scheduled, BT stack will not
allow for other reconfigurations unless

1. Reconfiguration timeout fires
2. All the directions for which reconfiguration has been scheduled, got
   resumed after Audio HAL was informed about reconfiguration being
   completed.

Bug: 375334939
Flag: Exempt, regression tests with unit tests
Test: atest bluetooth_le_audio_client_test
Change-Id: I041669332a5d7d465dd1dcfbbe8b353bf65d2883
parent cb111410
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment