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

Commit c338cb69 authored by Jakub Pawłowski's avatar Jakub Pawłowski Committed by Automerger Merge Worker
Browse files

Merge "leaudio: Always write CCC for ASCS/PACS" am: 41e0083e

parents 1de755de 41e0083e
Loading
Loading
Loading
Loading
+26 −20
Original line number Diff line number Diff line
@@ -1392,37 +1392,43 @@ class LeAudioClientImpl : public LeAudioClient {

    /* GATTC will ommit not registered previously handles */
    for (auto pac_tuple : leAudioDevice->snk_pacs_) {
      BTA_GATTC_RegisterForNotifications(gatt_if_, leAudioDevice->address_,
                                         std::get<0>(pac_tuple).val_hdl);
      subscribe_for_notification(leAudioDevice->conn_id_,
                                 leAudioDevice->address_,
                                 std::get<0>(pac_tuple));
    }
    for (auto pac_tuple : leAudioDevice->src_pacs_) {
      BTA_GATTC_RegisterForNotifications(gatt_if_, leAudioDevice->address_,
                                         std::get<0>(pac_tuple).val_hdl);
      subscribe_for_notification(leAudioDevice->conn_id_,
                                 leAudioDevice->address_,
                                 std::get<0>(pac_tuple));
    }

    if (leAudioDevice->snk_audio_locations_hdls_.val_hdl != 0)
      BTA_GATTC_RegisterForNotifications(
          gatt_if_, leAudioDevice->address_,
          leAudioDevice->snk_audio_locations_hdls_.val_hdl);
      subscribe_for_notification(leAudioDevice->conn_id_,
                                 leAudioDevice->address_,
                                 leAudioDevice->snk_audio_locations_hdls_);
    if (leAudioDevice->src_audio_locations_hdls_.val_hdl != 0)
      BTA_GATTC_RegisterForNotifications(
          gatt_if_, leAudioDevice->address_,
          leAudioDevice->src_audio_locations_hdls_.val_hdl);
      subscribe_for_notification(leAudioDevice->conn_id_,
                                 leAudioDevice->address_,
                                 leAudioDevice->src_audio_locations_hdls_);

    if (leAudioDevice->audio_avail_hdls_.val_hdl != 0)
      BTA_GATTC_RegisterForNotifications(
          gatt_if_, leAudioDevice->address_,
          leAudioDevice->audio_avail_hdls_.val_hdl);
      subscribe_for_notification(leAudioDevice->conn_id_,
                                 leAudioDevice->address_,
                                 leAudioDevice->audio_avail_hdls_);

    if (leAudioDevice->audio_supp_cont_hdls_.val_hdl != 0)
      BTA_GATTC_RegisterForNotifications(
          gatt_if_, leAudioDevice->address_,
          leAudioDevice->audio_supp_cont_hdls_.val_hdl);
      subscribe_for_notification(leAudioDevice->conn_id_,
                                 leAudioDevice->address_,
                                 leAudioDevice->audio_supp_cont_hdls_);

    if (leAudioDevice->ctp_hdls_.val_hdl != 0)
      BTA_GATTC_RegisterForNotifications(gatt_if_, leAudioDevice->address_,
                                         leAudioDevice->ctp_hdls_.val_hdl);
      subscribe_for_notification(leAudioDevice->conn_id_,
                                 leAudioDevice->address_,
                                 leAudioDevice->ctp_hdls_);

    for (struct ase& ase : leAudioDevice->ases_)
      BTA_GATTC_RegisterForNotifications(gatt_if_, leAudioDevice->address_,
                                         ase.hdls.val_hdl);
      subscribe_for_notification(leAudioDevice->conn_id_,
                                 leAudioDevice->address_, ase.hdls);
  }

  void OnEncryptionComplete(const RawAddress& address, uint8_t status) {