Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 25 Feb 2008 11:21:04 +0100
From:      Oliver Herold <oliver@akephalos.de>
To:        freebsd-usb@freebsd.org
Subject:   Re: usb/121052: Microsoft Notebook Optical Mouse 3000 (model 1049) doesn't work
Message-ID:  <20080225102104.GA1019@asgard.home>
In-Reply-To: <20080225022450.GA40942@plan0.kaiwan.csbnet.se>
References:  <200802242330.m1ONU4H3074911@freefall.freebsd.org> <20080225022450.GA40942@plan0.kaiwan.csbnet.se>

index | next in thread | previous in thread | raw e-mail

[-- Attachment #1 --]
Hi

heureka, it works like a charm. Thanks a lot.

First the patch didn't work (patch <patch) and I had to add the lines
manually, but after recompiling the kernel and restart it just works out
of the box.

ums0: <Microsoft Microsoft Notebook Optical Mouse with Tilt Wheel, class
0/0, rev 2.00/1.20, addr 3> on uhub0
ums0: 3 buttons and Z dir and a TILT dir.
ums0: find wlnotebook3

Cheers, Oliver



Kai Wang <kaiwang27@gmail.com> wrote:
> On Sun, Feb 24, 2008 at 11:30:04PM +0000, Oliver Herold wrote:
> >  this is the output of krepdump:
> 
> Could you please try the patch attached below and see what happens?
> (you need recompile kernel) well.. since this is just a speculation
> based on the report descriptor, it may not work at all...
> 
> 
> 
> diff -urN usb.old/ums.c usb/ums.c
> --- usb.old/ums.c	2008-02-25 02:40:31.000000000 +0100
> +++ usb/ums.c	2008-02-25 03:07:08.000000000 +0100
> @@ -353,6 +353,22 @@
>  		sc->sc_loc_btn[2].pos = 10;
>  	}
>  
> +	if (uaa->vendor == USB_VENDOR_MICROSOFT &&
> +	    uaa->product == USB_PRODUCT_MICROSOFT_WLNOTEBOOK3) {
> +		printf("%s: find wlnotebook3\n",
> +		    device_get_nameunit(sc->sc_dev));
> +		sc->flags = UMS_Z;
> +		sc->nbuttons = 3;
> +		sc->sc_isize = 5;
> +		sc->sc_iid = 17;
> +		sc->sc_loc_x.pos = 8;
> +		sc->sc_loc_y.pos = 16;
> +		sc->sc_loc_z.pos = 24;
> +		sc->sc_loc_btn[0].pos = 0;
> +		sc->sc_loc_btn[1].pos = 1;
> +		sc->sc_loc_btn[2].pos = 2;
> +	}
> +
>  	sc->sc_ep_addr = ed->bEndpointAddress;
>  	sc->sc_disconnected = 0;
>  	free(desc, M_TEMP);
> diff -urN usb.old/usbdevs usb/usbdevs
> --- usb.old/usbdevs	2008-02-25 02:40:31.000000000 +0100
> +++ usb/usbdevs	2008-02-25 02:06:20.000000000 +0100
> @@ -1641,6 +1641,7 @@
>  product MICROSOFT WLINTELLIMOUSE 0x008c	Wireless Optical IntelliMouse
>  product MICROSOFT WLNOTEBOOK	0x00b9	Wireless Optical Mouse (Model 1023)
>  product MICROSOFT WLNOTEBOOK2	0x00e1	Wireless Optical Mouse 3000 (Model 1056)
> +product MICROSOFT WLNOTEBOOK3	0x00d2	Wireless Optical Mouse 3000 (Model 1049)
>  product MICROSOFT WLUSBMOUSE	0x00b9	Wireless USB Mouse
>  product MICROSOFT XBOX360	0x0292	XBOX 360 WLAN
>  

-- 
Just go with the flow control, roll with the crunches, and, when you
get a prompt, type like hell.

[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.8 (FreeBSD)

iEYEARECAAYFAkfClo8ACgkQbZFSiGSuUEhe8gCgq7pzKl98sh8jdf/h7TAlV6pT
xMoAmwaShoAsZFiMYa4575AKtpqcMtTA
=EH4D
-----END PGP SIGNATURE-----
home | help

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