diff --git a/drivers/input/mouse/cypress_ps2.c b/drivers/input/mouse/cypress_ps2.c index b3c34ebcc4ef..d09272f2fed2 100644 --- a/drivers/input/mouse/cypress_ps2.c +++ b/drivers/input/mouse/cypress_ps2.c @@ -115,8 +115,10 @@ static int cypress_ps2_read_cmd_status(struct psmouse *psmouse, if (!wait_event_timeout(ps2dev->wait, psmouse->pktcnt >= pktsize, msecs_to_jiffies(CYTP_CMD_TIMEOUT))) { - rc = -ETIMEDOUT; - goto out; + if (!(pktsize == 3 && param[0] == 0 && param[1] == 0 )) { + rc = -ETIMEDOUT; + goto out; + } } memcpy(param, psmouse->packet, pktsize);