diff --git a/configs/manifest.xml b/configs/manifest.xml index 95927d0..b3b1bf5 100644 --- a/configs/manifest.xml +++ b/configs/manifest.xml @@ -438,13 +438,12 @@ - vendor.lineage.power + android.hardware.sensors hwbinder 1.0 - ILineagePower + ISensors default - diff --git a/device.mk b/device.mk index 0a6ab18..97ff32a 100644 --- a/device.mk +++ b/device.mk @@ -357,6 +357,7 @@ PRODUCT_COPY_FILES += \ PRODUCT_PACKAGES += \ android.hardware.sensors@1.0-impl \ + android.hardware.sensors@1.0-service_32 \ sensorservice_32 # Shims diff --git a/sensorservice_hal/Android.mk b/sensorservice_hal/Android.mk new file mode 100644 index 0000000..d1b8604 --- /dev/null +++ b/sensorservice_hal/Android.mk @@ -0,0 +1,24 @@ +LOCAL_PATH:= $(call my-dir) + +include $(CLEAR_VARS) +LOCAL_MODULE_RELATIVE_PATH := hw +LOCAL_PROPRIETARY_MODULE := true +LOCAL_MODULE := android.hardware.sensors@1.0-service_32 +LOCAL_32_BIT_ONLY := true +LOCAL_INIT_RC := android.hardware.sensors@1.0-service_32.rc +LOCAL_SRC_FILES := \ + service.cpp \ + +LOCAL_SHARED_LIBRARIES := \ + liblog \ + libcutils \ + libdl \ + libbase \ + libutils \ + +LOCAL_SHARED_LIBRARIES += \ + libhidlbase \ + libhidltransport \ + android.hardware.sensors@1.0 \ + +include $(BUILD_EXECUTABLE) diff --git a/sensorservice_hal/android.hardware.sensors@1.0-service_32.rc b/sensorservice_hal/android.hardware.sensors@1.0-service_32.rc new file mode 100644 index 0000000..1ff0e3e --- /dev/null +++ b/sensorservice_hal/android.hardware.sensors@1.0-service_32.rc @@ -0,0 +1,5 @@ +service sensors-hal-1-0 /vendor/bin/hw/android.hardware.sensors@1.0-service_32 + class hal + user system + group system input wakelock + capabilities BLOCK_SUSPEND SYS_NICE diff --git a/sensorservice_hal/service.cpp b/sensorservice_hal/service.cpp new file mode 100644 index 0000000..65f6d81 --- /dev/null +++ b/sensorservice_hal/service.cpp @@ -0,0 +1,31 @@ +/* + * Copyright (C) 2016 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. + */ + +#define LOG_TAG "android.hardware.sensors@1.0-service" + +#include +#include + +using android::hardware::sensors::V1_0::ISensors; +using android::hardware::defaultPassthroughServiceImplementation; + +int main() { + /* Sensors framework service needs at least two threads. + * One thread blocks on a "poll" + * The second thread is needed for all other HAL methods. + */ + return defaultPassthroughServiceImplementation(2); +}