Commit 2594cc27 authored by Peter Osterlund's avatar Peter Osterlund Committed by Linus Torvalds

[PATCH] ALPS touchpad detection fix

My ALPS touchpad is not recognized because the device gets confused by
the Kensington ThinkingMouse probe.  It responds with "00 00 14"
instead of the expected "00 00 64" to the "E6 report".

Resetting the device before attempting the ALPS probe fixes the
problem.
Signed-off-by: default avatarPeter Osterlund <petero2@telia.com>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent b85df5b8
...@@ -451,14 +451,16 @@ static int psmouse_extensions(struct psmouse *psmouse, ...@@ -451,14 +451,16 @@ static int psmouse_extensions(struct psmouse *psmouse,
/* /*
* Try ALPS TouchPad * Try ALPS TouchPad
*/ */
if (max_proto > PSMOUSE_IMEX && alps_detect(psmouse, set_properties) == 0) { if (max_proto > PSMOUSE_IMEX) {
if (!set_properties || alps_init(psmouse) == 0) ps2_command(&psmouse->ps2dev, NULL, PSMOUSE_CMD_RESET_DIS);
return PSMOUSE_ALPS; if (alps_detect(psmouse, set_properties) == 0) {
if (!set_properties || alps_init(psmouse) == 0)
return PSMOUSE_ALPS;
/* /*
* Init failed, try basic relative protocols * Init failed, try basic relative protocols
*/ */
max_proto = PSMOUSE_IMEX; max_proto = PSMOUSE_IMEX;
}
} }
if (max_proto > PSMOUSE_IMEX && genius_detect(psmouse, set_properties) == 0) if (max_proto > PSMOUSE_IMEX && genius_detect(psmouse, set_properties) == 0)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment