diff --git a/common.mk b/common.mk index bc08659..d902dcc 100644 --- a/common.mk +++ b/common.mk @@ -351,10 +351,6 @@ PRODUCT_ENFORCE_RRO_TARGETS := * # Partitions PRODUCT_USE_DYNAMIC_PARTITIONS := true -# Power -# PRODUCT_PACKAGES += \ -# android.hardware.power@1.3-service.xiaomi_sm8350 - # RCS PRODUCT_PACKAGES += \ com.android.ims.rcsmanager \ diff --git a/manifests/android.hardware.graphics.mapper-impl-qti-display.xml b/manifests/android.hardware.graphics.mapper-impl-qti-display.xml deleted file mode 100644 index 4e5c3ad..0000000 --- a/manifests/android.hardware.graphics.mapper-impl-qti-display.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - vendor.qti.hardware.display.mapper - passthrough - 3.0 - 4.0 - - IQtiMapper - default - - - - android.hardware.graphics.mapper - passthrough - 3.0 - 4.0 - - IMapper - default - - - - - diff --git a/manifests/vendor.qti.hardware.display.allocator-service.xml b/manifests/vendor.qti.hardware.display.allocator-service.xml deleted file mode 100644 index 506c58b..0000000 --- a/manifests/vendor.qti.hardware.display.allocator-service.xml +++ /dev/null @@ -1,50 +0,0 @@ - - - - android.hardware.graphics.allocator - hwbinder - 3.0 - 4.0 - - IAllocator - default - - - - vendor.qti.hardware.display.allocator - hwbinder - 3.0 - 4.0 - - IQtiAllocator - default - - - diff --git a/manifests/vendor.qti.hardware.display.composer-service.xml b/manifests/vendor.qti.hardware.display.composer-service.xml deleted file mode 100644 index a0fdcce..0000000 --- a/manifests/vendor.qti.hardware.display.composer-service.xml +++ /dev/null @@ -1,75 +0,0 @@ - - - - vendor.qti.hardware.display.composer - hwbinder - 3.0 - - IQtiComposer - default - - - - android.hardware.graphics.composer - hwbinder - 2.4 - - IComposer - default - - - - vendor.display.config - hwbinder - 2.0 - - IDisplayConfig - default - - - - vendor.display.color - hwbinder - 1.5 - - IDisplayColor - default - - - - vendor.display.postproc - hwbinder - 1.0 - - IDisplayPostproc - default - - - diff --git a/power/Android.bp b/power/Android.bp deleted file mode 100644 index ef291c8..0000000 --- a/power/Android.bp +++ /dev/null @@ -1,37 +0,0 @@ -// -// Copyright (C) 2018 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. - -cc_binary { - name: "android.hardware.power@1.3-service.xiaomi_sm8350", - init_rc: ["android.hardware.power@1.3-service.xiaomi_sm8350.rc"], - relative_install_path: "hw", - proprietary: true, - srcs: [ - "Power.cpp", - "service.cpp", - ], - header_libs: [ - "generated_kernel_headers", - ], - shared_libs: [ - "liblog", - "libhidlbase", - "libutils", - "android.hardware.power@1.3", - "android.hardware.power@1.2", - "android.hardware.power@1.1", - "android.hardware.power@1.0", - ], -} diff --git a/power/Power.cpp b/power/Power.cpp deleted file mode 100644 index 31b2f5c..0000000 --- a/power/Power.cpp +++ /dev/null @@ -1,137 +0,0 @@ -/* - * Copyright (C) 2020 The LineageOS 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. - */ - -#define LOG_TAG "android.hardware.power@1.3-service.xiaomi_sm8350" - -#include - -#include "Power.h" - -constexpr static char const* inputDevicesDirectory = "/dev/input/"; -constexpr static int wakeupModeOn = 5; -constexpr static int wakeupModeOff = 4; - -namespace android { -namespace hardware { -namespace power { -namespace V1_3 { -namespace implementation { - -// Methods from V1_0::IPower follow. -Return Power::setInteractive(bool) { - return Void(); -} - -Return Power::powerHint(PowerHint_1_0, int32_t) { - return Void(); -} - -bool isSupportedInputName(char* name) { - return strcmp(name, "fts_ts") == 0 - || strcmp(name, "NVTCapacitiveTouchScreen") == 0; -} - -int openInputFd() { - DIR *dir = opendir(inputDevicesDirectory); - if (dir == NULL) { - return -1; - } - - struct dirent *ent; - int fd; - int rc; - - while ((ent = readdir(dir)) != NULL) { - if (ent->d_type != DT_CHR) - continue; - - char absolute_path[PATH_MAX] = {0}; - char name[80] = {0}; - - strcpy(absolute_path, inputDevicesDirectory); - strcat(absolute_path, ent->d_name); - - fd = open(absolute_path, O_RDWR); - if (fd < 0) - continue; - - rc = ioctl(fd, EVIOCGNAME(sizeof(name) - 1), &name); - if (rc > 0 && isSupportedInputName(name)) - break; - - close(fd); - fd = -1; - } - - closedir(dir); - - return fd; -} - -Return Power::setFeature(Feature feature, bool activate) { - switch (feature) { - case Feature::POWER_FEATURE_DOUBLE_TAP_TO_WAKE: { - int fd = openInputFd(); - if (fd < 0) { - ALOGW("No touchscreen input devices that support DT2W were found"); - return Void(); - } - - struct input_event ev; - ev.type = EV_SYN; - ev.code = SYN_CONFIG; - ev.value = activate ? wakeupModeOn : wakeupModeOff; - write(fd, &ev, sizeof(ev)); - close(fd); - } break; - default: - break; - } - return Void(); -} - -Return Power::getPlatformLowPowerStats(getPlatformLowPowerStats_cb _hidl_cb) { - ALOGI("getPlatformLowPowerStats not supported, do nothing"); - _hidl_cb({}, Status::SUCCESS); - return Void(); -} - -// Methods from V1_1::IPower follow. -Return Power::getSubsystemLowPowerStats(getSubsystemLowPowerStats_cb _hidl_cb) { - ALOGI("getSubsystemLowPowerStats not supported, do nothing"); - _hidl_cb({}, Status::SUCCESS); - return Void(); -} - -Return Power::powerHintAsync(PowerHint_1_0, int32_t) { - return Void(); -} - -// Methods from V1_2::IPower follow. -Return Power::powerHintAsync_1_2(PowerHint_1_2, int32_t) { - return Void(); -} - -// Methods from V1_3::IPower follow. -Return Power::powerHintAsync_1_3(PowerHint_1_3, int32_t) { - return Void(); -} - -} // namespace implementation -} // namespace V1_3 -} // namespace power -} // namespace hardware -} // namespace android diff --git a/power/Power.h b/power/Power.h deleted file mode 100644 index 1b770e6..0000000 --- a/power/Power.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Copyright (C) 2020 The LineageOS 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 -#include -#include - -namespace android { -namespace hardware { -namespace power { -namespace V1_3 { -namespace implementation { - -using ::android::hardware::Return; -using ::android::hardware::Void; - -using ::android::hardware::power::V1_0::Feature; -using ::android::hardware::power::V1_0::Status; -using PowerHint_1_0 = ::android::hardware::power::V1_0::PowerHint; -using PowerHint_1_2 = ::android::hardware::power::V1_2::PowerHint; -using PowerHint_1_3 = ::android::hardware::power::V1_3::PowerHint; - -struct Power : public IPower { - // Methods from V1_0::IPower follow. - Return setInteractive(bool interactive) override; - Return powerHint(PowerHint_1_0 hint, int32_t data) override; - Return setFeature(V1_0::Feature feature, bool activate) override; - Return getPlatformLowPowerStats(getPlatformLowPowerStats_cb _hidl_cb) override; - - // Methods from V1_1::IPower follow. - Return getSubsystemLowPowerStats(getSubsystemLowPowerStats_cb _hidl_cb) override; - Return powerHintAsync(PowerHint_1_0 hint, int32_t data) override; - - // Methods from V1_2::IPower follow. - Return powerHintAsync_1_2(PowerHint_1_2 hint, int32_t data) override; - - // Methods from V1_3::IPower follow. - Return powerHintAsync_1_3(PowerHint_1_3 hint, int32_t data) override; -}; - -} // namespace implementation -} // namespace V1_3 -} // namespace power -} // namespace hardware -} // namespace android diff --git a/power/android.hardware.power@1.3-service.xiaomi_sm8350.rc b/power/android.hardware.power@1.3-service.xiaomi_sm8350.rc deleted file mode 100644 index 6cae61d..0000000 --- a/power/android.hardware.power@1.3-service.xiaomi_sm8350.rc +++ /dev/null @@ -1,4 +0,0 @@ -service vendor.power-hal-1-0 /vendor/bin/hw/android.hardware.power@1.3-service.xiaomi_sm8350 - class hal - user system - group system input diff --git a/power/service.cpp b/power/service.cpp deleted file mode 100644 index d3e2bf2..0000000 --- a/power/service.cpp +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (C) 2020 The LineageOS 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. - */ - -#define LOG_TAG "android.hardware.power@1.3-service.xiaomi_sm8350" - -#include - -#include "Power.h" - -using android::sp; -using android::status_t; -using android::OK; - -using android::hardware::configureRpcThreadpool; -using android::hardware::joinRpcThreadpool; - -using ::android::hardware::power::V1_3::IPower; -using ::android::hardware::power::V1_3::implementation::Power; - -int main() { - ALOGI("Power HAL 1.3 service is starting"); - - sp service = new Power(); - if (service == nullptr) { - ALOGE("Failed to create an instance of Power HAL, exiting"); - return 1; - } - configureRpcThreadpool(1, true /* callerWillJoin */); - - status_t status = service->registerAsService(); - if (status != OK) { - ALOGE("Failed to register service for Power HAL, exiting"); - return 1; - } - - ALOGI("Power HAL service is ready"); - joinRpcThreadpool(); - - // In normal operation, we don't expect the thread pool to exit - ALOGE("Power HAL service is shutting down"); - return 1; -}