Made the packet checking code less strict, so that the driver works also for touchpads that don't strictly follow the specified protocol. Problem reported by Anders Kaseorg using a PowerPro C 3:16 laptop. linux-petero/drivers/input/mouse/synaptics.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff -puN drivers/input/mouse/synaptics.c~synaptics-powerpro-fix drivers/input/mouse/synaptics.c --- linux/drivers/input/mouse/synaptics.c~synaptics-powerpro-fix 2003-11-12 16:34:38.000000000 +0100 +++ linux-petero/drivers/input/mouse/synaptics.c 2003-11-12 16:34:38.000000000 +0100 @@ -616,7 +616,7 @@ void synaptics_process_byte(struct psmou switch (psmouse->pktcnt) { case 1: - if (newabs ? ((data & 0xC8) != 0x80) : ((data & 0xC0) != 0xC0)) { + if (newabs ? ((data & 0xC0) != 0x80) : ((data & 0xC0) != 0xC0)) { printk(KERN_WARNING "Synaptics driver lost sync at 1st byte\n"); goto bad_sync; } @@ -628,7 +628,7 @@ void synaptics_process_byte(struct psmou } break; case 4: - if (newabs ? ((data & 0xC8) != 0xC0) : ((data & 0xC0) != 0x80)) { + if (newabs ? ((data & 0xC0) != 0xC0) : ((data & 0xC0) != 0x80)) { printk(KERN_WARNING "Synaptics driver lost sync at 4th byte\n"); goto bad_sync; } _