summary refs log tree commit diff
path: root/drivers/input/mouse
diff options
context:
space:
mode:
authorSergey Vlasov <vsu@altlinux.ru>2005-07-24 00:53:32 -0500
committerDmitry Torokhov <dtor_core@ameritech.net>2005-07-24 00:53:32 -0500
commit33fdfa97f2b3aab698ef849ec50dcc5102017f0a (patch)
treebb0e672f87d4af1f196106cd69cbcdb83f75fc09 /drivers/input/mouse
parent5ac7ba3ff599d66ffde182676f2e4fbcac61a2fe (diff)
downloadlinux-33fdfa97f2b3aab698ef849ec50dcc5102017f0a.tar.gz
Input: synaptics - fix setting packet size on passthrough port.
Synaptics driver used child->type to select either 3-byte or 4-byte
packet size for the pass-through port; this gives wrong results for
the newer protocols. Change the check to use child->pktsize instead.

Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'drivers/input/mouse')
-rw-r--r--drivers/input/mouse/synaptics.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
index 39cc1e51b908..029309422409 100644
--- a/drivers/input/mouse/synaptics.c
+++ b/drivers/input/mouse/synaptics.c
@@ -219,7 +219,7 @@ static void synaptics_pass_pt_packet(struct serio *ptport, unsigned char *packet
 		serio_interrupt(ptport, packet[1], 0, NULL);
 		serio_interrupt(ptport, packet[4], 0, NULL);
 		serio_interrupt(ptport, packet[5], 0, NULL);
-		if (child->type >= PSMOUSE_GENPS)
+		if (child->pktsize == 4)
 			serio_interrupt(ptport, packet[2], 0, NULL);
 	} else
 		serio_interrupt(ptport, packet[1], 0, NULL);
@@ -233,7 +233,7 @@ static void synaptics_pt_activate(struct psmouse *psmouse)
 
 	/* adjust the touchpad to child's choice of protocol */
 	if (child) {
-		if (child->type >= PSMOUSE_GENPS)
+		if (child->pktsize == 4)
 			priv->mode |= SYN_BIT_FOUR_BYTE_CLIENT;
 		else
 			priv->mode &= ~SYN_BIT_FOUR_BYTE_CLIENT;