Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 11 Aug 2008 15:34:34 +0200
From:      Kai Wang <kaiwang27@gmail.com>
To:        magik@back-up.pl
Cc:        FreeBSD-gnats-submit@FreeBSD.org, freebsd-usb@FreeBSD.org
Subject:   Re: usb/125941: not working wheel on my microsoft notebook optical mouse 3000
Message-ID:  <20080811133434.GA4224@plan0>
In-Reply-To: <5d252c1d8f1ddaed55d2467adea536ca@chi.fastbighost.com>
References:  <200807242330.m6ONU70T091921@freefall.freebsd.org> <5d252c1d8f1ddaed55d2467adea536ca@chi.fastbighost.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Aug 05, 2008 at 10:03:15AM -0400, magik@back-up.pl wrote:
> 
> 
> On Thu, 24 Jul 2008 23:30:07 GMT, FreeBSD-gnats-submit@FreeBSD.org wrote:
> > Thank you very much for your problem report.
> > It has the internal identification `usb/125941'.
> > The individual assigned to look at your
> > report is: freebsd-usb. 
> > 
> > You can access the state of your problem report at any time
> > via this link:
> > 
> > http://www.freebsd.org/cgi/query-pr.cgi?pr=125941
> > 
> >>Category:       usb
> >>Responsible:    freebsd-usb
> >>Synopsis:       not working wheel on my microsoft notebook optical mouse
> > 3000
> >>Arrival-Date:   Thu Jul 24 23:30:07 UTC 2008
> 
> I just fixed problem with wheel on my mouse
> and I'm sending in attachment patch for /usr/src/sys/dev/usb/ums.c file.

> --- ums.c.orig	2008-08-05 17:24:21.815936911 +0200
> +++ ums.c	2008-08-05 17:24:51.885277111 +0200
> @@ -402,6 +402,7 @@
>  		sc->sc_loc_x.pos = 8;
>  		sc->sc_loc_y.pos = 16;
>  		sc->sc_loc_z.pos = 24;
> +                sc->sc_loc_z.size = 8;
>  		sc->sc_loc_btn[0].pos = 0;
>  		sc->sc_loc_btn[1].pos = 1;
>  		sc->sc_loc_btn[2].pos = 2;


Hi,

Thanks for submitting the patch. It'd be great if you could also
test the patch below for us and paste the result here, just for
better understanding the problem.

The patch adds some debug printfs:

--- /sys/dev/usb/ums.c	2008-05-05 20:25:42.000000000 +0200
+++ ums.c	2008-08-11 15:25:44.000000000 +0200
@@ -284,6 +284,7 @@
 	wheel = hid_locate(desc, size, HID_USAGE2(HUP_GENERIC_DESKTOP,
 						  HUG_WHEEL),
 			    hid_input, &sc->sc_loc_z, &flags);
+	printf("wheel=%d\n", wheel);
 
 	if (wheel) {
 		if ((flags & MOUSE_FLAGS_MASK) != MOUSE_FLAGS) {
@@ -323,6 +324,7 @@
 			sc->flags |= UMS_Z;
 		}
 	}
+	printf("sc->flags=0x%04x\n", sc->flags);
 
 	/*
 	 * The Microsoft Wireless Intellimouse 2.0 reports it's wheel
@@ -402,6 +404,7 @@
 		sc->sc_loc_x.pos = 8;
 		sc->sc_loc_y.pos = 16;
 		sc->sc_loc_z.pos = 24;
+		printf("sc->sc_loc_z.size=%u\n", sc->sc_loc_z.size);
 		sc->sc_loc_btn[0].pos = 0;
 		sc->sc_loc_btn[1].pos = 1;
 		sc->sc_loc_btn[2].pos = 2;




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080811133434.GA4224>