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

Commit 60cfde22 authored by Ted Wang's avatar Ted Wang Committed by Automerger Merge Worker
Browse files

Merge changes from topic "bluetooth_finder_hal" into main am: 2865f1ec

parents e8c95ace 2865f1ec
Loading
Loading
Loading
Loading
+42 −0
Original line number Diff line number Diff line
// Copyright (C) 2023 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.

package {
    default_applicable_licenses: ["Android-Apache-2.0"],
}

cc_binary {
    name: "android.hardware.bluetooth.finder-service.default",
    relative_install_path: "hw",
    init_rc: ["bluetooth-finder-service-default.rc"],
    vintf_fragments: [":manifest_android.hardware.bluetooth.finder-service.default.xml"],
    vendor: true,
    srcs: [
        "BluetoothFinder.cpp",
        "service.cpp",
    ],
    shared_libs: [
        "android.hardware.bluetooth.finder-V1-ndk",
        "libbase",
        "libbinder_ndk",
        "libhidlbase",
        "libutils",
        "liblog",
    ],
}

filegroup {
    name: "manifest_android.hardware.bluetooth.finder-service.default.xml",
    srcs: ["bluetooth-finder-service-default.xml"],
}
+37 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2023 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 "BluetoothFinder.h"

namespace aidl::android::hardware::bluetooth::finder::impl {

::ndk::ScopedAStatus BluetoothFinder::sendEids(const ::std::vector<Eid>& keys) {
  keys_.insert(keys_.end(), keys.begin(), keys.end());
  return ::ndk::ScopedAStatus::ok();
}

::ndk::ScopedAStatus BluetoothFinder::setPoweredOffFinderMode(bool enable) {
  pof_enabled_ = enable;
  return ::ndk::ScopedAStatus::ok();
}

::ndk::ScopedAStatus BluetoothFinder::getPoweredOffFinderMode(
    bool* _aidl_return) {
  *_aidl_return = pof_enabled_;
  return ::ndk::ScopedAStatus::ok();
}

}  // namespace aidl::android::hardware::bluetooth::finder::impl
+39 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2023 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 <aidl/android/hardware/bluetooth/finder/BnBluetoothFinder.h>

#include <vector>

namespace aidl::android::hardware::bluetooth::finder::impl {

using ::aidl::android::hardware::bluetooth::finder::BnBluetoothFinder;
using ::aidl::android::hardware::bluetooth::finder::Eid;

class BluetoothFinder : public BnBluetoothFinder {
 public:
  BluetoothFinder() = default;

  ::ndk::ScopedAStatus sendEids(const ::std::vector<Eid>& keys) override;
  ::ndk::ScopedAStatus setPoweredOffFinderMode(bool enable) override;
  ::ndk::ScopedAStatus getPoweredOffFinderMode(bool* _aidl_return) override;

 private:
  bool pof_enabled_;
  std::vector<Eid> keys_;
};

}  // namespace aidl::android::hardware::bluetooth::finder::impl
+6 −0
Original line number Diff line number Diff line
service vendor.bluetooth.finder-default /vendor/bin/hw/android.hardware.bluetooth.finder.default
    class hal
    capabilities BLOCK_SUSPEND NET_ADMIN SYS_NICE
    user bluetooth
    group bluetooth
    task_profiles ServicePerformance
+7 −0
Original line number Diff line number Diff line
<manifest version="1.0" type="device">
    <hal format="aidl">
        <name>android.hardware.bluetooth.finder</name>
        <version>1</version>
        <fqname>IBluetoothFinder/default</fqname>
    </hal>
</manifest>
Loading