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 | |
| 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>
| -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 39cc1e51b9..0293094224 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; |
