OSDN Git Service

btaa: undo btaa implementation is fluoride stack
authorMichael Sun <michaelfsun@google.com>
Mon, 23 Nov 2020 07:07:01 +0000 (07:07 +0000)
committerMichael Sun <michaelfsun@google.com>
Mon, 23 Nov 2020 18:23:28 +0000 (18:23 +0000)
Undo most btaa implementation in the fluoride stack to get ready for
migrating to gd.

Tag: #feature
Bug: 172501038
Test: m
Change-Id: Ibd696edd95ab4eb73ab2387114eca3af14ea66d8

btaa/Android.bp [deleted file]
btaa/include/activity_attribution.h [deleted file]
btaa/src/activity_attribution.cc [deleted file]
btif/Android.bp
btif/include/btif_activity_attribution.h [deleted file]
btif/src/bluetooth.cc
btif/src/btif_activity_attribution.cc [deleted file]
test/headless/Android.bp

diff --git a/btaa/Android.bp b/btaa/Android.bp
deleted file mode 100644 (file)
index 37dd627..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-// libbtaa static library for target
-// ========================================================
-cc_library_static {
-    name: "libbtaa",
-    defaults: ["fluoride_defaults"],
-    include_dirs: [
-        "system/bt",
-        "system/bt/hci/include",
-        "system/bt/stack/include",
-    ],
-    local_include_dirs: [
-        "include",
-    ],
-    srcs: [
-        "src/activity_attribution.cc",
-    ],
-    static_libs: [
-        "libbt-hci",
-    ],
-    shared_libs: [
-        "android.system.suspend.control-ndk",
-        "libbinder_ndk",
-    ],
-    apex_available: [
-        "//apex_available:platform",
-        "com.android.bluetooth.updatable",
-    ],
-}
diff --git a/btaa/include/activity_attribution.h b/btaa/include/activity_attribution.h
deleted file mode 100644 (file)
index 137fc67..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-/******************************************************************************
- *
- *  Copyright 2020 The Android Open Source Project
- *
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *  You may obtain a copy of the License at:
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- *
- ******************************************************************************/
-
-#pragma once
-
-#include <aidl/android/system/suspend/BnSuspendCallback.h>
-#include <aidl/android/system/suspend/BnWakelockCallback.h>
-#include <hardware/bt_activity_attribution.h>
-
-using aidl::android::system::suspend::BnSuspendCallback;
-using aidl::android::system::suspend::BnWakelockCallback;
-using Status = ::ndk::ScopedAStatus;
-
-namespace bluetooth {
-namespace activity_attribution {
-class ActivityAttribution {
- public:
-  virtual ~ActivityAttribution() = default;
-
-  static void CleanUp();
-  static void Initialize(ActivityAttributionCallbacks* callbacks);
-};
-
-class WakelockCallback : public BnWakelockCallback {
- public:
-  Status notifyAcquired(void) override;
-  Status notifyReleased(void) override;
-};
-
-class WakeupCallback : public BnSuspendCallback {
- public:
-  Status notifyWakeup(bool success,
-                      const std::vector<std::string>& wakeupReasons) override;
-};
-
-}  // namespace activity_attribution
-}  // namespace bluetooth
diff --git a/btaa/src/activity_attribution.cc b/btaa/src/activity_attribution.cc
deleted file mode 100644 (file)
index 213b277..0000000
+++ /dev/null
@@ -1,129 +0,0 @@
-/******************************************************************************
- *
- *  Copyright 2020 The Android Open Source Project
- *
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *  You may obtain a copy of the License at:
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- *
- ******************************************************************************/
-
-#include "activity_attribution.h"
-
-#include <aidl/android/system/suspend/ISuspendControlService.h>
-#include <android/binder_manager.h>
-#include <base/logging.h>
-
-#include "btsnoop_mem.h"
-
-using aidl::android::system::suspend::ISuspendCallback;
-using aidl::android::system::suspend::ISuspendControlService;
-using namespace ndk;
-
-namespace bluetooth {
-namespace activity_attribution {
-
-static const std::string kBtWakelockName("hal_bluetooth_lock");
-
-class ActivityAttributionImpl;
-static std::shared_ptr<ISuspendControlService> controlService;
-static std::unique_ptr<ActivityAttributionImpl> instance;
-
-class ActivityAttributionImpl : public ActivityAttribution {
- public:
-  ~ActivityAttributionImpl() override = default;
-  ActivityAttributionImpl(ActivityAttributionCallbacks* callbacks);
-
-  static void onHciCaptured(const uint16_t type, const uint8_t* data,
-                            const size_t length, const uint64_t timestamp_us);
-  void onWakelockAcquired(void);
-  void onWakelockReleased(void);
-  void onWakeup(bool success, const std::vector<std::string>& wakeupReasons);
-
- private:
-  [[maybe_unused]] ActivityAttributionCallbacks* mCallbacks;
-};
-
-ActivityAttributionImpl::ActivityAttributionImpl(
-    ActivityAttributionCallbacks* callbacks)
-    : mCallbacks(callbacks) {}
-
-void ActivityAttributionImpl::onHciCaptured(const uint16_t type,
-                                            const uint8_t* data,
-                                            const size_t length,
-                                            const uint64_t timestamp_us) {}
-
-void ActivityAttributionImpl::onWakelockAcquired(void) {}
-
-void ActivityAttributionImpl::onWakelockReleased(void) {}
-
-void ActivityAttributionImpl::onWakeup(
-    bool success, const std::vector<std::string>& wakeupReasons) {}
-
-Status WakelockCallback::notifyAcquired(void) {
-  if (instance) {
-    instance->onWakelockAcquired();
-  }
-  return Status::ok();
-}
-
-Status WakelockCallback::notifyReleased(void) {
-  if (instance) {
-    instance->onWakelockReleased();
-  }
-  return Status::ok();
-}
-
-Status WakeupCallback::notifyWakeup(
-    bool success, const std::vector<std::string>& wakeupReasons) {
-  if (instance) {
-    instance->onWakeup(success, wakeupReasons);
-  }
-  return Status::ok();
-}
-
-void ActivityAttribution::CleanUp() { instance.reset(); };
-
-void ActivityAttribution::Initialize(ActivityAttributionCallbacks* callbacks) {
-  bool is_registered = false;
-
-  if (instance) {
-    LOG(ERROR) << __func__ << " Already initialized!";
-    return;
-  }
-  instance.reset(new ActivityAttributionImpl(callbacks));
-
-  activity_attribution_set_callback(instance->onHciCaptured);
-
-  controlService = ISuspendControlService::fromBinder(
-      SpAIBinder(AServiceManager_getService("suspend_control")));
-  if (!controlService) {
-    LOG(ERROR) << __func__ << " Fail to obtain suspend_control";
-    return;
-  }
-
-  Status register_callback_status = controlService->registerCallback(
-      SharedRefBase::make<WakeupCallback>(), &is_registered);
-  if (!is_registered || !register_callback_status.isOk()) {
-    LOG(ERROR) << __func__ << " Fail to register wakeup callback";
-    return;
-  }
-
-  register_callback_status = controlService->registerWakelockCallback(
-      SharedRefBase::make<WakelockCallback>(), kBtWakelockName, &is_registered);
-  if (!is_registered || !register_callback_status.isOk()) {
-    LOG(ERROR) << __func__ << " Fail to register wakelock callback";
-    return;
-  }
-}
-
-}  // namespace activity_attribution
-}  // namespace bluetooth
index a072cff..50dc129 100755 (executable)
@@ -49,7 +49,6 @@ cc_library_static {
         "src/btif_a2dp_control.cc",
         "src/btif_a2dp_sink.cc",
         "src/btif_a2dp_source.cc",
-        "src/btif_activity_attribution.cc",
         "src/btif_av.cc",
         "src/btif_avrcp_audio_track.cc",
         "src/btif_ble_advertiser.cc",
@@ -97,7 +96,6 @@ cc_library_static {
     shared_libs: [
         "android.hardware.bluetooth.a2dp@1.0",
         "android.hardware.bluetooth.audio@2.0",
-        "android.system.suspend.control-ndk",
         "libaaudio",
         "libcrypto",
         "libcutils",
@@ -113,7 +111,6 @@ cc_library_static {
         "lib-bt-packets",
         "libaudio-a2dp-hw-utils",
         "libbt-audio-hal-interface",
-        "libbtaa",
     ],
     cflags: [
         "-DBUILDCFG",
diff --git a/btif/include/btif_activity_attribution.h b/btif/include/btif_activity_attribution.h
deleted file mode 100644 (file)
index 3194d33..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Copyright 2020 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <hardware/bt_activity_attribution.h>
-
-namespace bluetooth {
-namespace activity_attribution {
-
-ActivityAttributionInterface* getActivityAttributionInterface();
-
-}  // namespace activity_attribution
-}  // namespace bluetooth
\ No newline at end of file
index c272cf1..cda0f59 100644 (file)
@@ -49,7 +49,6 @@
 #include "bta/include/bta_hf_client_api.h"
 #include "btif/avrcp/avrcp_service.h"
 #include "btif_a2dp.h"
-#include "btif_activity_attribution.h"
 #include "btif_api.h"
 #include "btif_av.h"
 #include "btif_bqr.h"
@@ -433,7 +432,7 @@ static const void* get_profile_interface(const char* profile_id) {
     return bluetooth::bluetooth_keystore::getBluetoothKeystoreInterface();
 
   if (is_profile(profile_id, BT_ACTIVITY_ATTRIBUTION_ID)) {
-    return bluetooth::activity_attribution::getActivityAttributionInterface();
+    return NULL;
   }
 
   return NULL;
diff --git a/btif/src/btif_activity_attribution.cc b/btif/src/btif_activity_attribution.cc
deleted file mode 100644 (file)
index 7131e7e..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-/******************************************************************************
- *
- *  Copyright 2020 The Android Open Source Project
- *
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *  You may obtain a copy of the License at:
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- *
- ******************************************************************************/
-
-/* Activity Attribution Interface */
-
-#include <hardware/bt_activity_attribution.h>
-
-#include "btaa/include/activity_attribution.h"
-#include "btif/include/btif_common.h"
-#include "gd/common/init_flags.h"
-#include "stack/include/btu.h"
-
-using base::Bind;
-using base::Unretained;
-
-namespace bluetooth {
-namespace activity_attribution {
-
-std::unique_ptr<ActivityAttributionInterface> activityAttributionInstance;
-
-class ActivityAttributionInterfaceImpl : public ActivityAttributionCallbacks,
-                                         public ActivityAttributionInterface {
-  ~ActivityAttributionInterfaceImpl() override = default;
-
-  void Init(ActivityAttributionCallbacks* callbacks) override {
-    if (!bluetooth::common::InitFlags::BtaaHciLogEnabled()) {
-      LOG(INFO) << __func__ << " BTAA not enabled!";
-      return;
-    }
-
-    this->callbacks = callbacks;
-    ActivityAttribution::Initialize(this);
-  }
-
-  void OnWakeup(Activity activity, const RawAddress& address) override {
-    VLOG(2) << __func__ << " activity: " << (int)activity
-            << " address: " << address;
-    do_in_jni_thread(FROM_HERE, Bind(&ActivityAttributionCallbacks::OnWakeup,
-                                     Unretained(callbacks), activity, address));
-  }
-
-  void Cleanup(void) override {
-    do_in_main_thread(FROM_HERE, Bind(&ActivityAttribution::CleanUp));
-  }
-
- private:
-  ActivityAttributionCallbacks* callbacks;
-};
-
-ActivityAttributionInterface* getActivityAttributionInterface() {
-  if (!activityAttributionInstance)
-    activityAttributionInstance.reset(new ActivityAttributionInterfaceImpl());
-
-  return activityAttributionInstance.get();
-}
-
-}  // namespace activity_attribution
-}  // namespace bluetooth
index ba18f8a..16b322d 100644 (file)
@@ -46,10 +46,8 @@ cc_test {
         "android.hardware.bluetooth.audio@2.0",
         "android.hardware.bluetooth@1.0",
         "android.hardware.bluetooth@1.1",
-        "android.system.suspend.control-ndk",
         "libaaudio",
         "libbase",
-        "libbinder_ndk",
         "libcrypto",
         "libcutils",  // property_get_bool
         "libfmq",