touchscreen: raydium: workaround for touch to wake

wakeup gesture status is not observed during touch to wake, hence
simulating
power key for every interrupt.

Change-Id: I28143543b364786874b97b94ac0fe1774ea2dd26
Signed-off-by: ppadasal <quic_ppadasal@quicinc.com>
Bu işleme şunda yer alıyor:
ppadasal
2022-09-21 16:36:09 +05:30
ebeveyn 8402dbcdd9
işleme ac338866d8

Dosyayı Görüntüle

@@ -1239,12 +1239,12 @@ static void raydium_work_handler(struct work_struct *work)
/*goto exit;*/
}
} else if (g_raydium_ts->blank == DRM_PANEL_BLANK_LP ||
g_raydium_ts->blank == DRM_PANEL_BLANK_POWERDOWN) {
g_raydium_ts->blank == DRM_PANEL_BLANK_POWERDOWN) {
LOGD(LOG_INFO, "[touch] elseif u8_tp_status:%x\n", u8_tp_status[POS_GES_STATUS]);
/*need check small area*/
if (u8_tp_status[POS_GES_STATUS] == RAD_WAKE_UP
&& g_u8_wakeup_flag == false) {
/*if (u8_tp_status[POS_GES_STATUS] == 0) {*/
/*if (u8_tp_status[POS_GES_STATUS] == RAD_WAKE_UP*/
/*&& g_u8_wakeup_flag == false) {*/
if (u8_tp_status[POS_GES_STATUS] == 0) {
input_report_key(g_raydium_ts->input_dev, KEY_POWER, true);
usleep_range(9500, 10500);
input_sync(g_raydium_ts->input_dev);
@@ -1640,7 +1640,7 @@ static int drm_notifier_callback(struct notifier_block *self,
raydium_ts_resume(&g_raydium_ts->client->dev);
#endif
g_raydium_ts->fb_state = FB_ON;
LOGD(LOG_INFO, "%s: Resume notified!\n", __func__);
LOGD(LOG_INFO, "%s: Resume notified!\n", __func__);
}
}
} else if (*blank == DRM_PANEL_BLANK_LP || *blank == DRM_PANEL_BLANK_POWERDOWN) {