1
0
Fork 0

touch: pt: skipping polling for boot mode exit for PIP <1.11

PIP <1.11 has no support for polling wait. A hard coded delay was used
instead, but it only delayed wakeup from sleep. The cyttsp5 driver that
was used before introduction of this pt driver did not have any delay.
zero-sugar
Michal Koziel 2021-05-04 09:11:30 +02:00 committed by mkemlogic
parent d348a9ce8f
commit 683461ccfa
1 changed files with 24 additions and 24 deletions

View File

@ -9215,34 +9215,34 @@ reset:
}
}
cd->startup_status |= STARTUP_STATUS_GET_DESC;
}
/* FW cannot handle most PIP cmds when it is still in BOOT mode */
rc = _pt_poll_for_fw_exit_boot_mode(cd, 500, &wait_time);
if (!rc) {
cd->startup_status |= STARTUP_STATUS_FW_OUT_OF_BOOT;
pt_debug(cd->dev, DL_WARN,
"%s: Exit FW BOOT Mode after %dms\n",
__func__, wait_time);
} else {
pt_debug(cd->dev, DL_WARN,
"%s: FW stuck in BOOT Mode after %dms\n",
__func__, wait_time);
goto exit;
}
if (!cd->sysinfo.ready) {
rc = pt_hid_output_get_sysinfo_(cd);
if (rc) {
pt_debug(cd->dev, DL_ERROR,
"%s: Error on getting sysinfo r=%d\n",
__func__, rc);
if (retry--)
goto reset;
/* FW cannot handle most PIP cmds when it is still in BOOT mode */
rc = _pt_poll_for_fw_exit_boot_mode(cd, 500, &wait_time);
if (!rc) {
cd->startup_status |= STARTUP_STATUS_FW_OUT_OF_BOOT;
pt_debug(cd->dev, DL_WARN,
"%s: Exit FW BOOT Mode after %dms\n",
__func__, wait_time);
} else {
pt_debug(cd->dev, DL_WARN,
"%s: FW stuck in BOOT Mode after %dms\n",
__func__, wait_time);
goto exit;
}
if (!cd->sysinfo.ready) {
rc = pt_hid_output_get_sysinfo_(cd);
if (rc) {
pt_debug(cd->dev, DL_ERROR,
"%s: Error on getting sysinfo r=%d\n",
__func__, rc);
if (retry--)
goto reset;
goto exit;
}
}
cd->startup_status |= STARTUP_STATUS_GET_SYS_INFO;
}
cd->startup_status |= STARTUP_STATUS_GET_SYS_INFO;
rc = pt_restore_parameters_(cd);
if (rc)