synaptics.c (83ba9ea8a04b72dfee2515428c15e7414ba4fc61) synaptics.c (a62f0d27b4196bad5e900d766b285feb7069cd16)
1/*
2 * Synaptics TouchPad PS/2 mouse driver
3 *
4 * 2003 Dmitry Torokhov <dtor@mail.ru>
5 * Added support for pass-through port. Special thanks to Peter Berg Larsen
6 * for explaining various Synaptics quirks.
7 *
8 * 2003 Peter Osterlund <petero2@telia.com>

--- 518 unchanged lines hidden (view full) ---

527 static const unsigned char newabs_rslt[] = { 0x80, 0x00, 0x00, 0xC0, 0x00 };
528 static const unsigned char oldabs_mask[] = { 0xC0, 0x60, 0x00, 0xC0, 0x60 };
529 static const unsigned char oldabs_rslt[] = { 0xC0, 0x00, 0x00, 0x80, 0x00 };
530
531 if (idx < 0 || idx > 4)
532 return 0;
533
534 switch (pkt_type) {
1/*
2 * Synaptics TouchPad PS/2 mouse driver
3 *
4 * 2003 Dmitry Torokhov <dtor@mail.ru>
5 * Added support for pass-through port. Special thanks to Peter Berg Larsen
6 * for explaining various Synaptics quirks.
7 *
8 * 2003 Peter Osterlund <petero2@telia.com>

--- 518 unchanged lines hidden (view full) ---

527 static const unsigned char newabs_rslt[] = { 0x80, 0x00, 0x00, 0xC0, 0x00 };
528 static const unsigned char oldabs_mask[] = { 0xC0, 0x60, 0x00, 0xC0, 0x60 };
529 static const unsigned char oldabs_rslt[] = { 0xC0, 0x00, 0x00, 0x80, 0x00 };
530
531 if (idx < 0 || idx > 4)
532 return 0;
533
534 switch (pkt_type) {
535 case SYN_NEWABS:
536 case SYN_NEWABS_RELAXED:
537 return (packet[idx] & newabs_rel_mask[idx]) == newabs_rslt[idx];
538
535
539 case SYN_NEWABS_STRICT:
540 return (packet[idx] & newabs_mask[idx]) == newabs_rslt[idx];
536 case SYN_NEWABS:
537 case SYN_NEWABS_RELAXED:
538 return (packet[idx] & newabs_rel_mask[idx]) == newabs_rslt[idx];
541
539
542 case SYN_OLDABS:
543 return (packet[idx] & oldabs_mask[idx]) == oldabs_rslt[idx];
540 case SYN_NEWABS_STRICT:
541 return (packet[idx] & newabs_mask[idx]) == newabs_rslt[idx];
544
542
545 default:
546 printk(KERN_ERR "synaptics: unknown packet type %d\n", pkt_type);
547 return 0;
543 case SYN_OLDABS:
544 return (packet[idx] & oldabs_mask[idx]) == oldabs_rslt[idx];
545
546 default:
547 printk(KERN_ERR "synaptics: unknown packet type %d\n", pkt_type);
548 return 0;
548 }
549}
550
551static unsigned char synaptics_detect_pkt_type(struct psmouse *psmouse)
552{
553 int i;
554
555 for (i = 0; i < 5; i++)

--- 253 unchanged lines hidden ---
549 }
550}
551
552static unsigned char synaptics_detect_pkt_type(struct psmouse *psmouse)
553{
554 int i;
555
556 for (i = 0; i < 5; i++)

--- 253 unchanged lines hidden ---