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

Commit f2736ad4 authored by Jakub Rotkiewicz (xWF)'s avatar Jakub Rotkiewicz (xWF) Committed by Gerrit Code Review
Browse files

Merge changes I10bde20e,Iff4840f1 into main

* changes:
  a2dp: stop instead of disconnecting on offload fail
  flags: Add stop_on_offload_fail
parents 021081d3 98c0a31e
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -86,6 +86,16 @@ flag {
    }
}

flag {
    name: "stop_on_offload_fail"
    namespace: "bluetooth"
    description: "Stop instead of disconnecting AVDT when offload fails"
    bug: "345709100"
    metadata {
        purpose: PURPOSE_BUGFIX
    }
}

flag {
    name: "a2dp_aidl_encoding_interval"
    namespace: "bluetooth"
+8 −4
Original line number Diff line number Diff line
@@ -166,13 +166,17 @@ void btif_a2dp_on_offload_started(const RawAddress& peer_addr, tBTA_AV_STATUS st

  if (btif_av_is_a2dp_offload_running()) {
    if (ack != BluetoothAudioStatus::SUCCESS && btif_av_stream_started_ready(A2dpType::kSource)) {
      log::error("peer {} offload start failed", peer_addr);
      if (com::android::bluetooth::flags::stop_on_offload_fail()) {
        btif_av_stream_stop(peer_addr);
      } else {
        // Offload request will return with failure from btif_av sm if
        // suspend is triggered for remote start. Disconnect only if SoC
        // returned failure for offload VSC
      log::error("peer {} offload start failed", peer_addr);
        btif_av_source_disconnect(peer_addr);
      }
    }
  }

  bluetooth::audio::a2dp::ack_stream_started(ack);
}