Cypfq: dlkm: Gc7372 add enable/disable wake irq for single tap

- If we do not set the irq to wakeable, single tap to wake may not wake up the AP,
so add the corresponding change for fix this issue.

Change-Id: Ic44a6339d21c64e2d1ca456bc4e4f021aa11e2e7
Signed-off-by: wengjun1 <wengjun1@motorola.com>
Reviewed-on: https://gerrit.mot.com/2038950
SME-Granted: SME Approvals Granted
SLTApproved: Slta Waiver
Tested-by: Jira Key
Reviewed-by: Huosheng Liao <liaohs@motorola.com>
Submit-Approved: Jira Key
This commit is contained in:
wengjun1 2021-08-11 17:48:25 +08:00 • committed by Jun Weng
commit ac23a64f12

View file

@ -107,7 +107,9 @@ EXPORT_SYMBOL(gcore_ges_irq_disable);
void gcore_suspend(void)
{
//struct gcore_dev *gdev = fn_data.gdev;
#ifdef GCORE_SENSOR_EN
struct gcore_dev *gdev = fn_data.gdev;
#endif
GTP_DEBUG("enter gcore suspend");
@ -132,8 +134,10 @@ void gcore_suspend(void)
if (fn_data.gdev->should_enable_gesture) {
fn_data.gdev->gesture_enabled = true;
fn_data.gdev->wakeable = true;
fn_data.gdev->screen_state = SCREEN_OFF;
enable_irq_wake(gdev->touch_irq);
GTP_DEBUG("Enable gcore irq wake");
}
fn_data.gdev->screen_state = SCREEN_OFF;
mutex_unlock(&fn_data.gdev->state_mutex);
#else
fn_data.gdev->tp_suspend = true;
@ -145,7 +149,9 @@ void gcore_suspend(void)
void gcore_resume(void)
{
//struct gcore_dev *gdev = fn_data.gdev;
#ifdef GCORE_SENSOR_EN
struct gcore_dev *gdev = fn_data.gdev;
#endif
GTP_DEBUG("enter gcore resume");
@ -177,8 +183,12 @@ void gcore_resume(void)
#ifdef GCORE_SENSOR_EN
mutex_lock(&fn_data.gdev->state_mutex);
fn_data.gdev->gesture_enabled = false;
fn_data.gdev->wakeable = false;
if(fn_data.gdev->wakeable) {
GTP_DEBUG("Disable gcore irq wake");
disable_irq_wake(gdev->touch_irq);
fn_data.gdev->gesture_enabled = false;
fn_data.gdev->wakeable = false;
}
fn_data.gdev->screen_state = SCREEN_ON;
queue_work(resume_by_ddi_wq, &(resume_by_ddi_work));