Messages in this thread Patch in this message | | | Subject | Re: 2.6.0-test2-mm2 | From | Peter Osterlund <> | Date | 31 Jul 2003 11:50:58 +0200 |
| |
Andrew Morton <akpm@osdl.org> writes:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.0-test2/2.6.0-test2-mm2/ > > . Several changes to the synaptics and PS/2 drivers. People who have had > problems with keyboards and mice, please test and report.
Thanks for including these patches. Here is one more that is needed to make some old synaptics touchpads work.
When setting the mode byte, don't set bits that the touchpad doesn't understand. Those bits are reserved and setting them can lead to weird problems, like the left button not working, as reported by Miles Lane.
linux-petero/drivers/input/mouse/synaptics.c | 12 ++++++++---- 1 files changed, 8 insertions(+), 4 deletions(-)
diff -puN drivers/input/mouse/synaptics.c~synaptics-mode-set drivers/input/mouse/synaptics.c --- linux/drivers/input/mouse/synaptics.c~synaptics-mode-set Wed Jul 30 21:01:18 2003 +++ linux-petero/drivers/input/mouse/synaptics.c Wed Jul 30 21:01:18 2003 @@ -182,6 +182,7 @@ static int query_hardware(struct psmouse { struct synaptics_data *priv = psmouse->private; int retries = 0; + int mode; while ((retries++ < 3) && synaptics_reset(psmouse)) printk(KERN_ERR "synaptics reset failed\n"); @@ -192,10 +193,13 @@ static int query_hardware(struct psmouse return -1; if (synaptics_capability(psmouse, &priv->capabilities, &priv->ext_cap)) return -1; - if (synaptics_set_mode(psmouse, (SYN_BIT_ABSOLUTE_MODE | - SYN_BIT_HIGH_RATE | - SYN_BIT_DISABLE_GESTURE | - SYN_BIT_W_MODE))) + + mode = SYN_BIT_ABSOLUTE_MODE | SYN_BIT_HIGH_RATE; + if (SYN_ID_MAJOR(priv->identity) >= 4) + mode |= SYN_BIT_DISABLE_GESTURE; + if (SYN_CAP_EXTENDED(priv->capabilities)) + mode |= SYN_BIT_W_MODE; + if (synaptics_set_mode(psmouse, mode)) return -1; return 0; _
-- Peter Osterlund - petero2@telia.com http://w1.894.telia.com/~u89404340 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |