usb: kbd: Add (optional) support for using an interrupt queue for polling
authorHans de Goede <hdegoede@redhat.com>
Wed, 24 Sep 2014 12:06:11 +0000 (14:06 +0200)
committerMarek Vasut <marex@denx.de>
Tue, 4 Nov 2014 05:04:01 +0000 (06:04 +0100)
commit8e553119839eba13140a2294418a831c114ddea2
tree184a65f1bfb0a41d04f5ad1664d1d2cc7289994a
parent8f8d7d2451115059c36e0551eea9d8770c346ea2
usb: kbd: Add (optional) support for using an interrupt queue for polling

Waiting an interrupt packet to complete in usb_kbd_poll_for_event, causes
a 40 ms latency for each call to usb_kbd_testc, which is undesirable.

Using control messages leads to lower (but still not 0) latency, but some
devices do not work well with control messages (e.g. my kvm behaves funny
with them).

This commit adds support for using the int_queue mechanism which at least
the ehci-hcd driver supports. This allows polling with 0 latency, while
using interrupt packets.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
common/usb_kbd.c