diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-02-11 14:03:42 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-02-11 14:03:42 -0800 |
commit | bbf8fc61791eabce7102e709041a0c4e6ee4a316 (patch) | |
tree | 4c2dbcc2f1aa6feb1f37d2bac86480cfe014d4eb /drivers/input | |
parent | 67dcabd06126084295b5825d3d7f584450dd8553 (diff) | |
parent | a9f0c381973097462d9688dc26fe66f4f020502e (diff) | |
download | linux-bbf8fc61791eabce7102e709041a0c4e6ee4a316.tar.bz2 |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
Input: psmouse - make sure we don't schedule reconnects after cleanup
Diffstat (limited to 'drivers/input')
-rw-r--r-- | drivers/input/mouse/psmouse-base.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/input/mouse/psmouse-base.c b/drivers/input/mouse/psmouse-base.c index 9774bdfaa482..d8c0c8d6992c 100644 --- a/drivers/input/mouse/psmouse-base.c +++ b/drivers/input/mouse/psmouse-base.c @@ -1141,7 +1141,14 @@ static void psmouse_cleanup(struct serio *serio) psmouse_deactivate(parent); } - psmouse_deactivate(psmouse); + psmouse_set_state(psmouse, PSMOUSE_INITIALIZING); + + /* + * Disable stream mode so cleanup routine can proceed undisturbed. + */ + if (ps2_command(&psmouse->ps2dev, NULL, PSMOUSE_CMD_DISABLE)) + printk(KERN_WARNING "psmouse.c: Failed to disable mouse on %s\n", + psmouse->ps2dev.serio->phys); if (psmouse->cleanup) psmouse->cleanup(psmouse); |