diff --git a/resource-overlay/dubai/Frameworks/res/values/config.xml b/resource-overlay/dubai/Frameworks/res/values/config.xml index f27c90e..9253cf2 100644 --- a/resource-overlay/dubai/Frameworks/res/values/config.xml +++ b/resource-overlay/dubai/Frameworks/res/values/config.xml @@ -302,4 +302,7 @@ 2 3 + + + org.lineageos.sensor.double_tap diff --git a/rootdir/etc/init/hw/init.mmi.overlay.rc b/rootdir/etc/init/hw/init.mmi.overlay.rc index c2a2507..1940172 100644 --- a/rootdir/etc/init/hw/init.mmi.overlay.rc +++ b/rootdir/etc/init/hw/init.mmi.overlay.rc @@ -27,6 +27,11 @@ on fs # egis fod ko insmod /vendor/lib/modules/rbs_fps_mmi.ko +on post-fs + # Sensors + chown system system /sys/devices/platform/soc/a94000.spi/spi_master/spi0/spi0.0/touchscreen/primary/double_tap_enabled + chown system system /sys/devices/platform/soc/a94000.spi/spi_master/spi0/spi0.0/touchscreen/primary/double_tap_pressed + on post-fs-data mkdir /mnt/vendor/persist/tof 0755 vendor_tcmd camera chown vendor_tcmd camera /mnt/vendor/persist/tof/refspad_cal diff --git a/sensors/Sensor.h b/sensors/Sensor.h index f6fe7a5..1fed8fe 100644 --- a/sensors/Sensor.h +++ b/sensors/Sensor.h @@ -120,6 +120,20 @@ class SysfsPollingOneShotSensor : public OneShotSensor { int mPollFd; }; +const std::string kTsPath = "/sys/devices/platform/soc/a94000.spi/spi_master/spi0/spi0.0/touchscreen/primary/"; + +const std::string kTsDoubleTapPressedPath = kTsPath + "double_tap_pressed"; +const std::string kTsDoubleTapEnabledPath = kTsPath + "double_tap_enabled"; + +class DoubleTapSensor : public SysfsPollingOneShotSensor { + public: + DoubleTapSensor(int32_t sensorHandle, ISensorsEventCallback* callback) + : SysfsPollingOneShotSensor( + sensorHandle, callback, kTsDoubleTapPressedPath, kTsDoubleTapEnabledPath, + "Double Tap Sensor", "org.lineageos.sensor.double_tap", + static_cast(static_cast(SensorType::DEVICE_PRIVATE_BASE) + 1)) {} +}; + } // namespace implementation } // namespace subhal } // namespace V2_1 diff --git a/sensors/SensorsSubHal.cpp b/sensors/SensorsSubHal.cpp index 6cbcb56..9281bfa 100644 --- a/sensors/SensorsSubHal.cpp +++ b/sensors/SensorsSubHal.cpp @@ -32,7 +32,9 @@ namespace implementation { using ::android::hardware::Void; using ::android::hardware::sensors::V2_0::implementation::ScopedWakelock; -SensorsSubHal::SensorsSubHal() : mCallback(nullptr), mNextHandle(1) {} +SensorsSubHal::SensorsSubHal() : mCallback(nullptr), mNextHandle(1) { + AddSensor(); +} Return SensorsSubHal::getSensorsList_2_1(ISensors::getSensorsList_2_1_cb _hidl_cb) { std::vector sensors;