mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-10 22:40:54 -04:00
Support normal mode switch corner suppression level
Normal mode: In case corner area mistake touch when phone is on horizontal screen state,when phone rotate left or right,FrameWork will send rotation and corner suppression level, then driver will send switch command to IC,Firmware will disable corner area touch according to its own logic. Change-Id: Ib6864cf2a8027beea2066c41e2441359f52d20e4 Signed-off-by: Wenge Zhu <zhuwg1@motorola.com> Reviewed-on: https://gerrit.mot.com/2363420 SME-Granted: SME Approvals Granted SLTApproved: Slta Waiver Tested-by: Jira Key Reviewed-by: Wei Deng <dengwei1@motorola.com> Reviewed-by: Jianqi Yang <yangj@motorola.com> Submit-Approved: Jira Key
This commit is contained in:
parent
31ad034f3e
commit
d45b34be1e
2 changed files with 25 additions and 4 deletions
|
|
@ -77,6 +77,10 @@ static DEVICE_ATTR(timestamp, S_IRUGO, goodix_ts_timestamp_show, NULL);
|
|||
#define DEFAULT_MODE 0
|
||||
#define MAX_ATTRS_ENTRIES 10
|
||||
|
||||
#define NORMAL_DEFAULT_MODE 10
|
||||
#define NORMAL_SMALL_MODE 11
|
||||
#define NORMAL_BIG_MODE 12
|
||||
|
||||
#define ADD_ATTR(name) { \
|
||||
if (idx < MAX_ATTRS_ENTRIES) { \
|
||||
dev_info(dev, "%s: [%d] adding %p\n", __func__, idx, &dev_attr_##name.attr); \
|
||||
|
|
@ -592,13 +596,26 @@ static ssize_t goodix_ts_edge_store(struct device *dev,
|
|||
if (ret < 2)
|
||||
return -EINVAL;
|
||||
|
||||
if (DEFAULT_MODE == args[0]) {
|
||||
switch (args[0]) {
|
||||
case DEFAULT_MODE:
|
||||
edge_cmd[1] = DEFAULT_EDGE;
|
||||
} else if (SMALL_MODE == args[0]) {
|
||||
break;
|
||||
case SMALL_MODE:
|
||||
edge_cmd[1] = SMALL_EDGE;
|
||||
} else if (BIG_MODE == args[0]) {
|
||||
break;
|
||||
case BIG_MODE:
|
||||
edge_cmd[1] = BIG_EDGE;
|
||||
} else {
|
||||
break;
|
||||
case NORMAL_DEFAULT_MODE:
|
||||
edge_cmd[1] = NORMAL_DEFAULT_EDGE;
|
||||
break;
|
||||
case NORMAL_SMALL_MODE:
|
||||
edge_cmd[1] = NORMAL_SMALL_EDGE;
|
||||
break;
|
||||
case NORMAL_BIG_MODE:
|
||||
edge_cmd[1] = NORMAL_BIG_EDGE;
|
||||
break;
|
||||
default:
|
||||
ts_err("Invalid edge mode: %d!\n", args[0]);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -45,6 +45,10 @@ static int inline goodix_ts_mmi_dev_unregister(struct platform_device *ts_device
|
|||
#define SMALL_EDGE 0x40
|
||||
#define BIG_EDGE 0x80
|
||||
|
||||
#define NORMAL_DEFAULT_EDGE 0x08
|
||||
#define NORMAL_SMALL_EDGE 0x48
|
||||
#define NORMAL_BIG_EDGE 0x88
|
||||
|
||||
#define STYLUS_MODE_SWITCH_CMD 0xA4
|
||||
|
||||
#define EXIT_HIGH_REPORT_RATE_CMD 0xC100
|
||||
|
|
|
|||
Loading…
Reference in a new issue