sm8450-common: Move to double tap sensor
Change-Id: Ib4803011fefad35c8b7a2d1e2b7d2744b32b13f4
This commit is contained in:
parent
999f5ead73
commit
ec8a98e97f
7 changed files with 11 additions and 72 deletions
|
@ -192,9 +192,6 @@ TARGET_COPY_OUT_VENDOR_DLKM := vendor_dlkm
|
||||||
BOARD_USES_QCOM_HARDWARE := true
|
BOARD_USES_QCOM_HARDWARE := true
|
||||||
TARGET_BOARD_PLATFORM := taro
|
TARGET_BOARD_PLATFORM := taro
|
||||||
|
|
||||||
# Power
|
|
||||||
TARGET_POWERHAL_MODE_EXT := $(COMMON_PATH)/power/power-mode.cpp
|
|
||||||
|
|
||||||
# PowerShare
|
# PowerShare
|
||||||
SOONG_CONFIG_NAMESPACES += XIAOMI_POWERSHARE
|
SOONG_CONFIG_NAMESPACES += XIAOMI_POWERSHARE
|
||||||
SOONG_CONFIG_XIAOMI_POWERSHARE := WIRELESS_TX_ENABLE_PATH
|
SOONG_CONFIG_XIAOMI_POWERSHARE := WIRELESS_TX_ENABLE_PATH
|
||||||
|
|
|
@ -10,6 +10,9 @@
|
||||||
<!-- Doze: should the TYPE_PICK_UP_GESTURE sensor be used as a pulse signal. -->
|
<!-- Doze: should the TYPE_PICK_UP_GESTURE sensor be used as a pulse signal. -->
|
||||||
<bool name="config_dozePulsePickup">true</bool>
|
<bool name="config_dozePulsePickup">true</bool>
|
||||||
|
|
||||||
|
<!-- Type of the double tap sensor. Empty if double tap is not supported. -->
|
||||||
|
<string name="config_dozeDoubleTapSensorType" translatable="false">org.lineageos.sensor.double_tap</string>
|
||||||
|
|
||||||
<!-- Type of the tap sensor. Empty if tap is not supported. -->
|
<!-- Type of the tap sensor. Empty if tap is not supported. -->
|
||||||
<string name="config_dozeTapSensorType" translatable="false">org.lineageos.sensor.single_tap</string>
|
<string name="config_dozeTapSensorType" translatable="false">org.lineageos.sensor.single_tap</string>
|
||||||
|
|
||||||
|
@ -58,9 +61,6 @@
|
||||||
<!-- If true, the display will be shifted around in ambient mode. -->
|
<!-- If true, the display will be shifted around in ambient mode. -->
|
||||||
<bool name="config_enableBurnInProtection">true</bool>
|
<bool name="config_enableBurnInProtection">true</bool>
|
||||||
|
|
||||||
<!-- Whether device supports double tap to wake -->
|
|
||||||
<bool name="config_supportDoubleTapWake">true</bool>
|
|
||||||
|
|
||||||
<!-- Low zone brightness thresholds in the range [0, 255] -->
|
<!-- Low zone brightness thresholds in the range [0, 255] -->
|
||||||
<integer-array name="config_brightnessThresholdsOfPeakRefreshRate" translatable="false">
|
<integer-array name="config_brightnessThresholdsOfPeakRefreshRate" translatable="false">
|
||||||
<item>7</item>
|
<item>7</item>
|
||||||
|
|
|
@ -1,65 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright (C) 2021 The LineageOS Project
|
|
||||||
*
|
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <aidl/android/hardware/power/BnPower.h>
|
|
||||||
#include <android-base/file.h>
|
|
||||||
#include <android-base/logging.h>
|
|
||||||
#include <sys/ioctl.h>
|
|
||||||
#include <sys/stat.h>
|
|
||||||
|
|
||||||
#define SET_CUR_VALUE 0
|
|
||||||
#define TOUCH_DOUBLETAP_MODE 14
|
|
||||||
#define TOUCH_MAGIC 't'
|
|
||||||
#define TOUCH_IOC_SETMODE _IO(TOUCH_MAGIC, SET_CUR_VALUE)
|
|
||||||
#define TOUCH_DEV_PATH "/dev/xiaomi-touch"
|
|
||||||
#define TOUCH_ID_PRIMARY 0
|
|
||||||
#define TOUCH_ID_SECONDARY 1
|
|
||||||
#define MI_DISP_SECONDARY "/sys/devices/virtual/mi_display/disp_feature/disp-DSI-1"
|
|
||||||
|
|
||||||
namespace aidl {
|
|
||||||
namespace android {
|
|
||||||
namespace hardware {
|
|
||||||
namespace power {
|
|
||||||
namespace impl {
|
|
||||||
|
|
||||||
using ::aidl::android::hardware::power::Mode;
|
|
||||||
|
|
||||||
bool isDeviceSpecificModeSupported(Mode type, bool* _aidl_return) {
|
|
||||||
switch (type) {
|
|
||||||
case Mode::DOUBLE_TAP_TO_WAKE:
|
|
||||||
*_aidl_return = true;
|
|
||||||
return true;
|
|
||||||
default:
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool setDeviceSpecificMode(Mode type, bool enabled) {
|
|
||||||
switch (type) {
|
|
||||||
case Mode::DOUBLE_TAP_TO_WAKE: {
|
|
||||||
int fd = open(TOUCH_DEV_PATH, O_RDWR);
|
|
||||||
int arg_primary[3] = {TOUCH_ID_PRIMARY, TOUCH_DOUBLETAP_MODE, enabled ? 1 : 0};
|
|
||||||
ioctl(fd, TOUCH_IOC_SETMODE, &arg_primary);
|
|
||||||
|
|
||||||
struct stat buffer;
|
|
||||||
if (stat(MI_DISP_SECONDARY, &buffer) == 0) {
|
|
||||||
int arg_secondary[3] = {TOUCH_ID_SECONDARY, TOUCH_DOUBLETAP_MODE, enabled ? 1 : 0};
|
|
||||||
ioctl(fd, TOUCH_IOC_SETMODE, &arg_secondary);
|
|
||||||
}
|
|
||||||
|
|
||||||
close(fd);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
default:
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
} // namespace impl
|
|
||||||
} // namespace power
|
|
||||||
} // namespace hardware
|
|
||||||
} // namespace android
|
|
||||||
} // namespace aidl
|
|
|
@ -203,6 +203,7 @@ ro.vendor.radio.build_profile=u-stable
|
||||||
persist.vendor.rcs.singlereg.feature=1
|
persist.vendor.rcs.singlereg.feature=1
|
||||||
|
|
||||||
# Sensors
|
# Sensors
|
||||||
|
ro.vendor.sensors.xiaomi.double_tap=true
|
||||||
ro.vendor.sensors.xiaomi.single_tap=true
|
ro.vendor.sensors.xiaomi.single_tap=true
|
||||||
|
|
||||||
# SSR
|
# SSR
|
||||||
|
|
|
@ -109,6 +109,11 @@ on boot
|
||||||
chown system system /sys/class/touch/touch_dev/gesture_single_tap_enabled
|
chown system system /sys/class/touch/touch_dev/gesture_single_tap_enabled
|
||||||
chmod 0660 /sys/class/touch/touch_dev/gesture_single_tap_enabled
|
chmod 0660 /sys/class/touch/touch_dev/gesture_single_tap_enabled
|
||||||
|
|
||||||
|
chown system system /sys/class/touch/touch_dev/gesture_double_tap_enabled
|
||||||
|
chmod 0660 /sys/class/touch/touch_dev/gesture_double_tap_enabled
|
||||||
|
chown system system /sys/class/touch/touch_dev/gesture_double_tap_state
|
||||||
|
chmod 0664 /sys/class/touch/touch_dev/gesture_double_tap_state
|
||||||
|
|
||||||
service touch_report /vendor/bin/touch_report
|
service touch_report /vendor/bin/touch_report
|
||||||
class hal
|
class hal
|
||||||
user system
|
user system
|
||||||
|
|
2
sepolicy/vendor/genfs_contexts
vendored
2
sepolicy/vendor/genfs_contexts
vendored
|
@ -8,6 +8,8 @@ genfscon sysfs /devices/platform/soc/soc:fingerprint_fpc u:object_r:vendor_sysfs
|
||||||
|
|
||||||
# Sensors
|
# Sensors
|
||||||
genfscon sysfs /devices/virtual/touch/touch_dev/fod_longpress_gesture_enabled u:object_r:vendor_sysfs_sensors:s0
|
genfscon sysfs /devices/virtual/touch/touch_dev/fod_longpress_gesture_enabled u:object_r:vendor_sysfs_sensors:s0
|
||||||
|
genfscon sysfs /devices/virtual/touch/touch_dev/gesture_double_tap_enabled u:object_r:vendor_sysfs_sensors:s0
|
||||||
|
genfscon sysfs /devices/virtual/touch/touch_dev/gesture_double_tap_state u:object_r:vendor_sysfs_sensors:s0
|
||||||
genfscon sysfs /devices/virtual/touch/touch_dev/gesture_single_tap_enabled u:object_r:vendor_sysfs_sensors:s0
|
genfscon sysfs /devices/virtual/touch/touch_dev/gesture_single_tap_enabled u:object_r:vendor_sysfs_sensors:s0
|
||||||
genfscon sysfs /devices/virtual/touch/touch_dev/gesture_single_tap_state u:object_r:vendor_sysfs_sensors:s0
|
genfscon sysfs /devices/virtual/touch/touch_dev/gesture_single_tap_state u:object_r:vendor_sysfs_sensors:s0
|
||||||
|
|
||||||
|
|
1
sepolicy/vendor/hal_power.te
vendored
1
sepolicy/vendor/hal_power.te
vendored
|
@ -1 +0,0 @@
|
||||||
allow hal_power_default touchfeature_device:chr_file rw_file_perms;
|
|
Loading…
Reference in a new issue