hid: Reduce default mouse polling interval to 60Hz

Reduces overhead when using X

usbhid: call usb_fixup_endpoint after mangling intervals

Lets the mousepoll override mechanism work with xhci.

Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
This commit is contained in:
popcornmix
2014-07-14 22:02:09 +01:00
committed by Dom Cobley
parent c8a768bd29
commit 0ab9d589d1

View File

@@ -47,7 +47,7 @@
* Module parameters.
*/
static unsigned int hid_mousepoll_interval;
static unsigned int hid_mousepoll_interval = ~0;
module_param_named(mousepoll, hid_mousepoll_interval, uint, 0644);
MODULE_PARM_DESC(mousepoll, "Polling interval of mice");
@@ -1117,7 +1117,9 @@ static int usbhid_start(struct hid_device *hid)
*/
switch (hid->collection->usage) {
case HID_GD_MOUSE:
if (hid_mousepoll_interval > 0)
if (hid_mousepoll_interval == ~0 && interval < 16)
interval = 16;
else if (hid_mousepoll_interval != ~0 && hid_mousepoll_interval != 0)
interval = hid_mousepoll_interval;
break;
case HID_GD_JOYSTICK:
@@ -1129,6 +1131,7 @@ static int usbhid_start(struct hid_device *hid)
interval = hid_kbpoll_interval;
break;
}
usb_fixup_endpoint(dev, endpoint->bEndpointAddress, interval);
ret = -ENOMEM;
if (usb_endpoint_dir_in(endpoint)) {