usb/118670: [ums] [patch] Razer Copperhead Laser Mouse shows up
as keyboard
Dorian Büttner
dorian.buettner at gmx.de
Sat Mar 8 18:24:54 UTC 2008
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 at freebsd.org>
> To: bug-followup at freebsd.org, Uwe at grohnwaldt.eu
> Cc: imp at 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 at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-usb
> To unsubscribe, send any mail to "freebsd-usb-unsubscribe at freebsd.org"
For me, this patch also works with X!
More information about the freebsd-usb
mailing list