linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* Patch to fix imps2 emulation for usb mice in stable 2.2.X series
@ 2000-03-04 14:09 Kevin Hendricks
  2000-03-04 18:18 ` Michael Schmitz
  0 siblings, 1 reply; 4+ messages in thread
From: Kevin Hendricks @ 2000-03-04 14:09 UTC (permalink / raw)
  To: Paul Mackerras; +Cc: linuxppc-dev

[-- Attachment #1: Type: text/plain, Size: 1615 bytes --]

Hi Paul,

According to the XFree 4.0 developers bit 3 in the first character from all
imps/2 mice must be set.  This was not the case in early 2.3.X kernels but this
bug was found and fixed in later 2.3.XX kernels.

The Xfree 4.0 Xserver uses this fact to determine if characters read from a
imps/2 mouse are out-of-sync or not.

Because our 2.2.X kernel usb mouse.c code never properly sets this bit in the
first character, the XFree 4.0 Xservers are throwing out the first character
read from the mouse umaking for mouse mayhem.

Will you please install this patch into the 2.2.X stable kernel series?  It
will make our imps2 usb mouse properly follow the conventions for imps2 mice
and make it more like what the 2.3.XX kernels are doing right now

I have tried this patch with the latest XFree 3.9.18 Xserver, and with Xpmac
(rev 9) and an older Mac-On-Linux and it does not cause any problems.

Thanks.

Kevin


--- drivers/usb/mouse.c.prev	Fri Mar  3 17:18:37 2000
+++ drivers/usb/mouse.c	Fri Mar  3 17:19:56 2000
@@ -183,6 +183,7 @@
 		switch (state) {
 		case 0: { /* buttons and sign */
 			int buttons = mouse->buttons;
+                        buttons = buttons | 0x08; // set bit 3 to fit imps/2
 			mouse->buttons = 0;
 			if (mouse->dx < 0)
 				buttons |= 0x10;


p.s. In case the e-mail mangles this, I have attached the patch as a file also.

Thanks,

Kevin


--
Kevin B. Hendricks
Associate Professor of Operations and Information Technology
Richard Ivey School of Business, University of Western Ontario
London, Ontario  N6A-3K7  CANADA
khendricks@ivey.uwo.ca, (519) 661-3874, fax: 519-661-3959


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: usb_imps2.patch --]
[-- Type: text/x-c++; name="usb_imps2.patch", Size: 360 bytes --]

--- drivers/usb/mouse.c.prev	Fri Mar  3 17:18:37 2000
+++ drivers/usb/mouse.c	Fri Mar  3 17:19:56 2000
@@ -183,6 +183,7 @@
 		switch (state) {
 		case 0: { /* buttons and sign */
 			int buttons = mouse->buttons;
+                        buttons = buttons | 0x08; // set bit 3 to fit imps/2
 			mouse->buttons = 0;
 			if (mouse->dx < 0)
 				buttons |= 0x10;

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2000-03-06 13:02 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2000-03-04 14:09 Patch to fix imps2 emulation for usb mice in stable 2.2.X series Kevin Hendricks
2000-03-04 18:18 ` Michael Schmitz
2000-03-06  7:25   ` Paul Mackerras
2000-03-06 13:02     ` Michael Schmitz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).