Date: Sat, 8 Mar 2008 18:58:11 +0100 From: Dorian =?iso-8859-1?q?B=FCttner?= <dorian.buettner@gmx.de> To: freebsd-usb@freebsd.org, John Baldwin <jhb@freebsd.org> Subject: Re: usb/118670: [ums] [patch] Razer Copperhead Laser Mouse shows up as keyboard Message-ID: <200803081858.12199.dorian.buettner@gmx.de> In-Reply-To: <200802272200.m1RM03tS058913@freefall.freebsd.org> References: <200802272200.m1RM03tS058913@freefall.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 27 February 2008 23:00:03 John Baldwin wrote: > The following reply was made to PR usb/118670; it has been noted by GNATS. > > From: John Baldwin <jhb@freebsd.org> > To: bug-followup@freebsd.org, Uwe@grohnwaldt.eu > Cc: imp@freebsd.org > Subject: Re: usb/118670: [ums] [patch] Razer Copperhead Laser Mouse shows > up as keyboard Date: Wed, 27 Feb 2008 16:41:13 -0500 > > According to the USB spec, the protocol field is only defined if the > subclass is 1. So a subclass of 0 is really a violation of the spec. I > think a better fix is to put back the old hid_is_collection() test first > and then directly check the descriptor if that fails: > > Index: ums.c > =================================================================== > RCS file: /usr/cvs/src/sys/dev/usb/ums.c,v > retrieving revision 1.97 > diff -u -r1.97 ums.c > --- ums.c 26 Dec 2007 14:31:16 -0000 1.97 > +++ ums.c 27 Feb 2008 21:40:48 -0000 > @@ -198,7 +198,10 @@ > if (err) > return (UMATCH_NONE); > > - if (id->bInterfaceClass == UICLASS_HID && > + if (hid_is_collection(desc, size, > + HID_USAGE2(HUP_GENERIC_DESKTOP, HUG_MOUSE))) > + ret = UMATCH_IFACECLASS; > + else if (id->bInterfaceClass == UICLASS_HID && > id->bInterfaceSubClass == UISUBCLASS_BOOT && > id->bInterfaceProtocol == UIPROTO_MOUSE) > ret = UMATCH_IFACECLASS; > > -- > John Baldwin > _______________________________________________ > freebsd-usb@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-usb > To unsubscribe, send any mail to "freebsd-usb-unsubscribe@freebsd.org" For me, this patch also works with X!
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200803081858.12199.dorian.buettner>