lkml.org 
[lkml]   [2001]   [Aug]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] make psaux reconnect adjustable
Andries.Brouwer@cwi.nl wrote:
>
> From Gunther.Mayer@t-online.de Tue Aug 14 19:10:40 2001
>
> > I can confirm what you suggest:
> > My mouse (Logitech wheel USB/PS2) sends indeed AA 00.
> > So, I extended my patch:
> > psmouse_reconnect = 0: Do nothing (just pass all to userspace)
> > psmouse_reconnect = 1: Flush Q & ping mouse on AA 00 (default)
> > psmouse_reconnect = 2: Flush Q & ping mouse on AA (old behaviour)
> >
> > With reconnect 1 or 2: After reconnecting, mouse behaves strange
> > (jumping around the screen)
>
> This is a serious bug in many user-space drivers. PS/2 mouse protocol
> was designed to easily re-synchronize (think about transmission errors/
> lost bytes).
>
> The fragment of text you reply to is not about the 3-byte PS/2
> protocol, but about the 4-byte wheelmouse protocol.

No, it applies even to 4-byte protocol (see 1).

1) Re-synchronize on transmission errors (e.g. lost bytes)
The 4-byte protocol shares bytes 1-3 with the 3-byte protocol.
So it can synchronize just as easy.

2) Re-connecting the mouse
The 4-byte wheelmouse protocol must be re-enabled by sending proper
magic bytes by user-level driver (else it stays in 3-byte mode).

_This_ shows, user-mode must be notified of the re-connect! So letting
the driver choose PS2_TRANSPARENT, it can easily handle this situation.

3) Re-connecting a different animal
The user-level driver should autodetect common mouse protocols
(legacy proprietary protocols will vanish and should not hinder progress).
-
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/

\
 
 \ /
  Last update: 2005-03-22 12:57    [W:0.046 / U:0.824 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site