From owner-freebsd-usb@FreeBSD.ORG Mon Aug 11 17:31:02 2008 Return-Path: Delivered-To: freebsd-usb@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 09FCA106567C; Mon, 11 Aug 2008 17:31:02 +0000 (UTC) (envelope-from magik@back-up.pl) Received: from chi.fastbighost.com (chi.fastbighost.com [65.98.102.73]) by mx1.freebsd.org (Postfix) with ESMTP id BE4668FC0A; Mon, 11 Aug 2008 17:31:01 +0000 (UTC) (envelope-from magik@back-up.pl) Received: from chi.fastbighost.com ([65.98.102.73] helo=mx.back-up.pl) by chi.fastbighost.com with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.69) (envelope-from ) id 1KSbEQ-0000N4-1t; Mon, 11 Aug 2008 13:30:58 -0400 MIME-Version: 1.0 Date: Mon, 11 Aug 2008 13:30:57 -0400 From: Grzegorz Blach To: Kai Wang In-Reply-To: <20080811151941.GA4590@plan0> References: <200807242330.m6ONU70T091921@freefall.freebsd.org> <5d252c1d8f1ddaed55d2467adea536ca@chi.fastbighost.com> <20080811133434.GA4224@plan0> <0ed513c9800b730fff47034b86526e5d@chi.fastbighost.com> <20080811151941.GA4590@plan0> Message-ID: <310aef2cb8e5bbcc7cf345f962cb102b@chi.fastbighost.com> X-Sender: magik@back-up.pl User-Agent: RoundCube Webmail/0.2a Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - chi.fastbighost.com X-AntiAbuse: Original Domain - freebsd.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - back-up.pl X-Source: X-Source-Args: X-Source-Dir: Cc: FreeBSD-gnats-submit@FreeBSD.org, freebsd-usb@FreeBSD.org Subject: Re: usb/125941: not working wheel on my microsoft notebook optical mouse 3000 X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Aug 2008 17:31:02 -0000 On Mon, 11 Aug 2008 17:19:41 +0200, Kai Wang wrote: > On Mon, Aug 11, 2008 at 10:19:35AM -0400, Grzegorz Blach wrote: >> >> >> On Mon, 11 Aug 2008 15:34:34 +0200, Kai Wang > wrote: >> > 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; >> >> this, what I see: >> >> ums0: > 0/0, rev 2.00/1.20, addr 2> on uhub0 >> wheel=0 >> sc->flags=0x0000 >> ums0: 3 buttons and a TILT dir. >> sc->sc_loc_z.size=0 >> > > Interesting. Now I suspect that Optical Mouse 3000 model 1049 got > different > versions. > > Could you please get krepdump > (http://people.freebsd.org/~kaiw/tools/krepdump.tgz) > > # tar xzvf krepdump.tgz > # cd krepdump > # make > # kldload ./krepdump.ko > > Then plug in your mouse and paste the result here? > > There is one version of report desc of this mouse here: > http://lists.freebsd.org/pipermail/freebsd-usb/2008-February/004617.html > > and my guess is your mouse's report desc is different than that... > > > Thanks, > Kai ---- my krepdump ---- ums0: at uhub0 port 2 (addr 2) disconnected ums0: detached [report desc size=196] USAGE PAGE Consumer(0xc) USAGE Consumer Control(0x1)[Consumer(0xc)] COLLECTION Application(1) USAGE PAGE Generic Desktop(0x1) USAGE Mouse(0x2)[Generic Desktop(0x1)] COLLECTION Logical(2) REPORT ID 19 USAGE PAGE Consumer(0xc) USAGE AC Pan(0x238)[Consumer(0xc)] REPORT COUNT 1 REPORT SIZE 8 LOGICAL MINIMUM -127 LOGICAL MAXIMUM 127 INPUT ( Data Variable Relative ) (6) REPORT ID 23 USAGE PAGE Microsoft(0xff00) USAGE Unknown Usage(0xff06)[Microsoft(0xff00)] LOGICAL MINIMUM 0 LOGICAL MAXIMUM 1 PHYSICAL MINIMUM 1 PHYSICAL MAXIMUM 4 REPORT COUNT 1 REPORT SIZE 2 FEATURE ( Data Variable Absolute ) (2) PHYSICAL MINIMUM 0 PHYSICAL MAXIMUM 0 FEATURE ( Const Array Absolute ) (1) USAGE Unknown Usage(0xff04)[Microsoft(0xff00)] REPORT SIZE 1 FEATURE ( Data Variable Absolute ) (2) REPORT SIZE 3 FEATURE ( Const Array Absolute ) (1) REPORT ID 24 USAGE Unknown Usage(0xff08)[Microsoft(0xff00)] REPORT SIZE 1 FEATURE ( Data Variable Absolute ) (2) REPORT SIZE 7 FEATURE ( Const Array Absolute ) (1) END COLLECTION END COLLECTION USAGE PAGE Generic Desktop(0x1) USAGE Mouse(0x2)[Generic Desktop(0x1)] COLLECTION Application(1) USAGE PAGE Generic Desktop(0x1) USAGE Mouse(0x2)[Generic Desktop(0x1)] COLLECTION Logical(2) REPORT ID 17 USAGE Pointer(0x1)[Generic Desktop(0x1)] COLLECTION Physical(0) USAGE PAGE Button(0x9) USAGE MINIMUM Button1(1) USAGE MAXIMUM Button3(3) REPORT COUNT 3 REPORT SIZE 1 LOGICAL MAXIMUM 1 INPUT ( Data Variable Absolute ) (2) REPORT COUNT 1 INPUT ( Const Array Absolute ) (1) USAGE Button5(0x5)[Button(0x9)] INPUT ( Data Variable Absolute ) (2) REPORT COUNT 3 INPUT ( Const Array Absolute ) (1) USAGE PAGE Generic Desktop(0x1) USAGE X(0x30)[Generic Desktop(0x1)] USAGE Y(0x31)[Generic Desktop(0x1)] REPORT COUNT 2 REPORT SIZE 8 LOGICAL MINIMUM -127 LOGICAL MAXIMUM 127 INPUT ( Data Variable Relative ) (6) COLLECTION Logical(2) REPORT ID 18 USAGE Resolution Multiplier(0x48)[Generic Desktop(0x1)] REPORT COUNT 1 REPORT SIZE 2 LOGICAL MINIMUM 0 LOGICAL MAXIMUM 1 PHYSICAL MINIMUM 1 PHYSICAL MAXIMUM 4 FEATURE ( Data Variable Absolute ) (2) PHYSICAL MINIMUM 0 PHYSICAL MAXIMUM 0 REPORT SIZE 6 FEATURE ( Const Array Absolute ) (1) REPORT ID 17 USAGE Wheel(0x38)[Generic Desktop(0x1)] LOGICAL MINIMUM -127 LOGICAL MAXIMUM 127 REPORT SIZE 8 INPUT ( Data Variable Relative ) (6) END COLLECTION USAGE PAGE Consumer(0xc) REPORT SIZE 8 USAGE AC Pan(0x238)[Consumer(0xc)] INPUT ( Data Variable Relative ) (6) END COLLECTION END COLLECTION END COLLECTION [hexdump] 0000 05 0C 09 01 A1 01 05 01 09 02 A1 02 85 13 05 0C 0010 0A 38 02 95 01 75 08 15 81 25 7F 81 06 85 17 06 0020 00 FF 0A 06 FF 15 00 25 01 35 01 45 04 95 01 75 0030 02 B1 02 35 00 45 00 B1 01 0A 04 FF 75 01 B1 02 0040 75 03 B1 01 85 18 0A 08 FF 75 01 B1 02 75 07 B1 0050 01 C0 C0 05 01 09 02 A1 01 05 01 09 02 A1 02 85 0060 11 09 01 A1 00 05 09 19 01 29 03 95 03 75 01 25 0070 01 81 02 95 01 81 01 09 05 81 02 95 03 81 01 05 0080 01 09 30 09 31 95 02 75 08 15 81 25 7F 81 06 A1 0090 02 85 12 09 48 95 01 75 02 15 00 25 01 35 01 45 00A0 04 B1 02 35 00 45 00 75 06 B1 01 85 11 09 38 15 00B0 81 25 7F 75 08 81 06 C0 05 0C 75 08 0A 38 02 81 00C0 06 C0 C0 C0 ums0: on uhub0 wheel=0 sc->flags=0x0000 ums0: 3 buttons and a TILT dir. sc->sc_loc_z.size=0 ---- end of krepdump ---- ---- diff between my report and this from lists.freebsd.org/.../004617.html ---- --- 1.txt 2008-08-11 19:25:56.496820730 +0200 +++ dump.txt 2008-08-11 19:25:59.156847633 +0200 @@ -1,7 +1,7 @@ -ums1: at uhub0 port 4 (addr 4) disconnected -ums1: detached - -[report desc size=3D196] +ums0: at uhub0 port 2 (addr 2) disconnected +ums0: detached + +[report desc size=196] USAGE PAGE Consumer(0xc) USAGE Consumer Control(0x1)[Consumer(0xc)] COLLECTION Application(1) @@ -114,6 +114,9 @@ 00A0 04 B1 02 35 00 45 00 75 06 B1 01 85 11 09 38 15 00B0 81 25 7F 75 08 81 06 C0 05 0C 75 08 0A 38 02 81 00C0 06 C0 C0 C0 -ums1: on uhub0 -ums1: 3 buttons and Z dir and a TILT dir. +ums0: on uhub0 +wheel=0 +sc->flags=0x0000 +ums0: 3 buttons and a TILT dir. +sc->sc_loc_z.size=0 ---- end of diff ---- and short info: When I use RELENG_7_0, driver reports that my mouse have Z dir, but on RELENG_7 not.