USB: UHCI: improve scheduling of interrupt URBs
commite58dcebcd83b5902411e747ee7807219dee6bcf2
authorAlan Stern <stern@rowland.harvard.edu>
Thu, 25 Sep 2008 20:59:57 +0000 (25 16:59 -0400)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 17 Oct 2008 21:41:01 +0000 (17 14:41 -0700)
tree2d37312f1514ad992698f642a8e567c1ffc9c359
parent925dff5dee04fb46d2e67c088c54b331f97672ee
USB: UHCI: improve scheduling of interrupt URBs

This patch (as1140) adds a little intelligence to the interrupt-URB
scheduler in uhci-hcd.  Right now the scheduler is stupid; every URB
having the same period is assigned to the same slot.  Thus a large
group of period-N URBs can fill their slot and cause -ENOSPC errors
even when all the lower-period slots are empty.

With the patch, if an URB doesn't fit in its assigned slot then the
scheduler will try using lower-period slots.  This will provide
greater flexibility.  As an example, the driver will be able to handle
more than just three or four mice, which the current driver cannot.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/host/uhci-q.c