The Xbox DVD Remote feels somewhat sluggish, pressing a button repeatedly is sometimes interpreted as it being kept pressed down. It seems like the RC subsystem is doing some incorrect heuristics when in fact the data that comes from the device is already pretty clean. When looking at rc_keydown(), the timeout parameter for a keypress seems to be relevant here. And indeed changing it from the default value of 125000000 to something lower improves situation greatly. I'm not sure what the 'correct' value is here - even just setting it to 0 works fine and might even be the proper thing to do as the receiver dongle seems to do some filtering on it's own? --- drivers/media/rc/xbox_remote.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/media/rc/xbox_remote.c b/drivers/media/rc/xbox_remote.c index 07ed9be24a60..496f1394216d 100644 --- a/drivers/media/rc/xbox_remote.c +++ b/drivers/media/rc/xbox_remote.c @@ -157,6 +157,8 @@ static void xbox_remote_rc_init(struct xbox_remote *xbox_remote) rdev->device_name = xbox_remote->rc_name; rdev->input_phys = xbox_remote->rc_phys; + rdev->timeout = 1000; + usb_to_input_id(xbox_remote->udev, &rdev->input_id); rdev->dev.parent = &xbox_remote->interface->dev; }