public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Mikkel Krautz <krautz@gmail.com>
To: linux-kernel@vger.kernel.org
Cc: vojtech@suse.cz, krautz@gmail.com
Subject: [PATCH] hid-core: Configurable USB HID Mouse Interrupt Polling Interval
Date: Sat, 18 Dec 2004 02:12:50 +0000	[thread overview]
Message-ID: <1103335970.15567.15.camel@localhost> (raw)

Hi!

This patch adds the option "USB HID Mouse Interrupt Polling Interval"
to drivers/usb/input/Kconfig, and a few lines of code to
drivers/usb/input/hid-core.c, to make the config option function.

It allows people to change the interval, at which their USB HID mice
are polled at. This is extremely useful for people who require high
precision, or just likes the feeling of a very precise mouse. ;)

As the Kconfig help implies, setting a lower polling interval is known
to work on several mice produced by Logitech and Microsoft. I only
have a Logitech MX500 to test it on. My results have been positive,
and so have many other people's.

Mikkel Krautz




Signed-off-by: Mikkel Krautz <krautz@gmail.com>
---

--- clean/drivers/usb/input/Kconfig
+++ dirty/drivers/usb/input/Kconfig
@@ -24,6 +24,38 @@
 	  To compile this driver as a module, choose M here: the
 	  module will be called usbhid.
 
+config USB_HID_MOUSE_POLLING_INTERVAL
+	int "USB HID Mouse Interrupt Polling Interval"
+	default 10
+	depends on USB_HID
+	help
+	  The "USB HID Mouse Interrupt Polling Interval" is the interval, at
+	  which your USB HID mouse is to be polled at. The interval is
+	  specified in miliseconds.
+
+	  Decreasing the interval will, of course, give you a much more
+	  precise mouse.
+
+	  Generally speaking, a polling interval of 2 ms should be more than
+	  enough for most people, and is great for gaming and other things
+	  that require high precision.
+
+	  An interval lower than the default is not guaranteed work on your
+	  specific piece of hardware. If you want to play it safe, don't
+	  change this value.
+
+	  Now, if you indeed want to feel the joy of a precise mouse, the
+	  following mice are known to work without problems, when the interval
+	  is set to at least 2 ms:
+
+	    * Logitech's MX-family
+	    * Logitech Mouse Man Dual Optical
+	    * Logitech iFeel
+	    * Microsoft Intellimouse Explorer
+	    * Microsoft Intellimouse Optical 1.1
+
+	  If unsure, keep it at 10 ms.
+
 comment "Input core support is needed for USB HID input layer or HIDBP
support"
 	depends on USB_HID && INPUT=n
 
--- clean/drivers/usb/input/hid-core.c
+++ dirty/drivers/usb/input/hid-core.c
@@ -37,7 +37,7 @@
  * Version Information
  */
 
-#define DRIVER_VERSION "v2.0"
+#define DRIVER_VERSION "v2.01"
 #define DRIVER_AUTHOR "Andreas Gal, Vojtech Pavlik"
 #define DRIVER_DESC "USB HID core driver"
 #define DRIVER_LICENSE "GPL"
@@ -1663,6 +1663,12 @@
 		if ((endpoint->bmAttributes & 3) != 3)		/* Not an interrupt endpoint
*/
 			continue;
 
+		/* Set the interrupt polling interval of mice, to the one specified
in the config. */
+		if (hid->collection->usage == HID_GD_MOUSE
+				&& CONFIG_USB_HID_MOUSE_POLLING_INTERVAL > 0
+				&& CONFIG_USB_HID_MOUSE_POLLING_INTERVAL < 255)
+			endpoint->bInterval = CONFIG_USB_HID_MOUSE_POLLING_INTERVAL;
+
 		/* handle potential highspeed HID correctly */
 		interval = endpoint->bInterval;
 		if (dev->speed == USB_SPEED_HIGH)




             reply	other threads:[~2004-12-17 23:57 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-12-18  2:12 Mikkel Krautz [this message]
2004-12-18  0:43 ` [PATCH] hid-core: Configurable USB HID Mouse Interrupt Polling Interval Gene Heskett
2004-12-18  1:27 ` Greg KH
2004-12-18  4:22   ` Mikkel Krautz
2004-12-18  3:36     ` Gene Heskett
2004-12-18  4:42   ` Mikkel Krautz
2004-12-18  2:59     ` Greg KH
2004-12-18  4:55   ` Mikkel Krautz
2004-12-18 17:39   ` Mikkel Krautz
2004-12-18 15:40     ` Marcel Holtmann
2004-12-18 17:44       ` Mikkel Krautz
2004-12-18 16:53     ` Greg KH
2004-12-19  1:52       ` Mikkel Krautz
2005-02-06 19:07         ` Vojtech Pavlik
2005-02-06 20:00           ` Mikkel Krautz
  -- strict thread matches above, loose matches on Subject: below --
2005-02-07 15:42 Mikkel Krautz
2005-02-07 15:44 Mikkel Krautz
2005-02-07 15:59 ` Randy.Dunlap
2005-02-07 17:16   ` Domen Puncer
2005-02-07 17:00     ` Randy.Dunlap
     [not found] ` <20050207174303.GA3113@ucw.cz>
2005-02-07 17:51   ` Mikkel Krautz
2005-02-07 17:56     ` Mikkel Krautz
     [not found]       ` <20050207183818.GB2006@ucw.cz>
2005-02-07 18:41         ` Mikkel Krautz
2005-02-07 16:46 Mikkel Krautz
2005-02-07 18:57 Mikkel Krautz
2005-02-08 15:15 ` zyphr
2005-02-08 16:02   ` Oliver Neukum
2005-02-08 16:09   ` Vojtech Pavlik

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1103335970.15567.15.camel@localhost \
    --to=krautz@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=vojtech@suse.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox