diff options
author | Sergey Vlasov <vsu@altlinux.ru> | 2005-07-24 01:53:32 -0400 |
---|---|---|
committer | Dmitry Torokhov <dtor_core@ameritech.net> | 2005-07-24 01:53:32 -0400 |
commit | 33fdfa97f2b3aab698ef849ec50dcc5102017f0a (patch) | |
tree | bb0e672f87d4af1f196106cd69cbcdb83f75fc09 /drivers/input/mouse | |
parent | 5ac7ba3ff599d66ffde182676f2e4fbcac61a2fe (diff) |
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.c | 4 |
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 | |||
219 | serio_interrupt(ptport, packet[1], 0, NULL); | 219 | serio_interrupt(ptport, packet[1], 0, NULL); |
220 | serio_interrupt(ptport, packet[4], 0, NULL); | 220 | serio_interrupt(ptport, packet[4], 0, NULL); |
221 | serio_interrupt(ptport, packet[5], 0, NULL); | 221 | serio_interrupt(ptport, packet[5], 0, NULL); |
222 | if (child->type >= PSMOUSE_GENPS) | 222 | if (child->pktsize == 4) |
223 | serio_interrupt(ptport, packet[2], 0, NULL); | 223 | serio_interrupt(ptport, packet[2], 0, NULL); |
224 | } else | 224 | } else |
225 | serio_interrupt(ptport, packet[1], 0, NULL); | 225 | serio_interrupt(ptport, packet[1], 0, NULL); |
@@ -233,7 +233,7 @@ static void synaptics_pt_activate(struct psmouse *psmouse) | |||
233 | 233 | ||
234 | /* adjust the touchpad to child's choice of protocol */ | 234 | /* adjust the touchpad to child's choice of protocol */ |
235 | if (child) { | 235 | if (child) { |
236 | if (child->type >= PSMOUSE_GENPS) | 236 | if (child->pktsize == 4) |
237 | priv->mode |= SYN_BIT_FOUR_BYTE_CLIENT; | 237 | priv->mode |= SYN_BIT_FOUR_BYTE_CLIENT; |
238 | else | 238 | else |
239 | priv->mode &= ~SYN_BIT_FOUR_BYTE_CLIENT; | 239 | priv->mode &= ~SYN_BIT_FOUR_BYTE_CLIENT; |