summaryrefslogtreecommitdiff
path: root/cras/src/server/cras_bt_manager.c
diff options
context:
space:
mode:
authorJorge E. Moreira <jemoreira@google.com>2021-04-12 19:05:41 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2021-04-12 19:05:41 +0000
commitbcf1f249f11b6865cff3f0d3f0ae5801e67e0e7e (patch)
tree7e0e07b9d8d50fc5dd352d5b36d74fa3cb3427db /cras/src/server/cras_bt_manager.c
parent1a33fa04345d1d2599eae37bb34781783aa0d04e (diff)
parent072dce8ca50bdf87b113490cdf14bde14724914f (diff)
downloadadhd-bcf1f249f11b6865cff3f0d3f0ae5801e67e0e7e.tar.gz
Merge remote-tracking branch 'aosp/upstream-main' into master am: 072dce8ca5android-s-beta-4android-s-beta-3android-s-beta-4
Original change: https://android-review.googlesource.com/c/platform/external/adhd/+/1673705 Change-Id: I34df6886976fcb22f0bef53453a5cd0924f04f7b
Diffstat (limited to 'cras/src/server/cras_bt_manager.c')
-rw-r--r--cras/src/server/cras_bt_manager.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/cras/src/server/cras_bt_manager.c b/cras/src/server/cras_bt_manager.c
index 77e8079c..a7103406 100644
--- a/cras/src/server/cras_bt_manager.c
+++ b/cras/src/server/cras_bt_manager.c
@@ -19,6 +19,7 @@
#include "cras_bt_player.h"
#include "cras_bt_profile.h"
#include "cras_bt_transport.h"
+#include "cras_bt_battery_provider.h"
#include "utlist.h"
struct cras_bt_event_log *btlog;
@@ -120,6 +121,32 @@ static void cras_bt_interface_added(DBusConnection *conn,
object_path);
}
}
+ } else if (strcmp(interface_name,
+ BLUEZ_INTERFACE_BATTERY_PROVIDER_MANAGER) == 0) {
+ struct cras_bt_adapter *adapter;
+ int ret;
+
+ syslog(LOG_INFO,
+ "Bluetooth Battery Provider Manager available");
+
+ adapter = cras_bt_adapter_get(object_path);
+ if (adapter) {
+ syslog(LOG_INFO,
+ "Registering Battery Provider for adapter %s",
+ cras_bt_adapter_address(adapter));
+ ret = cras_bt_register_battery_provider(conn, adapter);
+ if (ret != 0) {
+ syslog(LOG_ERR,
+ "Error registering Battery Provider "
+ "for adapter %s: %s",
+ cras_bt_adapter_address(adapter),
+ strerror(-ret));
+ }
+ } else {
+ syslog(LOG_WARNING,
+ "Adapter not available when trying to create "
+ "Battery Provider");
+ }
}
}
@@ -158,6 +185,10 @@ static void cras_bt_interface_removed(DBusConnection *conn,
cras_bt_transport_object_path(transport));
cras_bt_transport_remove(transport);
}
+ } else if (strcmp(interface_name,
+ BLUEZ_INTERFACE_BATTERY_PROVIDER_MANAGER) == 0) {
+ syslog(LOG_INFO, "Bluetooth Battery Provider Manager removed");
+ cras_bt_battery_provider_reset();
}
}