Commit 9c563dc7 authored by David Woodhouse's avatar David Woodhouse Committed by Vojtech Pavlik

psmouse.c: First check for a Synaptics touchpad, other probes confuse

it enough to disable the trackpoint.
parent d4221c20
...@@ -311,6 +311,26 @@ static int psmouse_extensions(struct psmouse *psmouse) ...@@ -311,6 +311,26 @@ static int psmouse_extensions(struct psmouse *psmouse)
if (psmouse_noext) if (psmouse_noext)
return PSMOUSE_PS2; return PSMOUSE_PS2;
/*
* Try Synaptics TouchPad magic ID
*/
param[0] = 0;
psmouse_command(psmouse, param, PSMOUSE_CMD_SETRES);
psmouse_command(psmouse, param, PSMOUSE_CMD_SETRES);
psmouse_command(psmouse, param, PSMOUSE_CMD_SETRES);
psmouse_command(psmouse, param, PSMOUSE_CMD_SETRES);
psmouse_command(psmouse, param, PSMOUSE_CMD_GETINFO);
if (param[1] == 0x47) {
/* We could do more here. But it's sufficient just
to stop the subsequent probes from screwing the
thing up. */
psmouse->vendor = "Synaptics";
psmouse->name = "TouchPad";
return PSMOUSE_PS2;
}
/* /*
* Try Genius NetMouse magic init. * Try Genius NetMouse magic init.
*/ */
......
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