On Tue, Sep 14, 2010 at 8:29 AM, Jeremy Jongepier <jeremy@xxxxxxxxxxxxxx> wrote: > On 09/14/2010 02:23 PM, Clemens Ladisch wrote: >> Jeremy Jongepier wrote: >>> cannot submit datapipe for urb 0, error -28: not enough bandwidth >> >> Is CONFIG_USB_EHCI_TT_NEWSCHED enabled in your kernel's configuration? >> >> Can you try with or without a hub? >> > > I can't try with a hub, I don't have any. The bandwidth has been fragmented by other devices. USB-1 audio devices require large _contiguous_ blocks of bandwidth schedule, and a mouse or whatever that has carved its tiny little block out of the middle of the bandwidth schedule makes all the bandwidth on either side useless to an isochronous device. Simply unplugging it (or whatever caused the scheduling problem) is not enough; the schedule remains fragmented, as the linux EHCI driver does not know how to reconsolidate fragmented bandwidth chunks. You have to rmmod EHCI or reboot to get a fresh start. It's possible you're on a hub and don't know it. Most machines with multiple USB ports are actually using a single controller and a built in hub. Hubs make things *far* worse, as the hub is a dumb puppet controlled entirely by the host controller, and Linux's hub scheduling algorithm (even the 'new improved' one mentioned above) is rather poor. I wrote a new one years ago that approached theoretical maximum efficiency and could rebalance/reconsolidate the schedule, but I couldn't keep up with repatching it during the complete free-for-all that has been kernel 2.6 (I'd literally spent months of full-time work *just* keeping up with the churn) and it was dropped from -mm. Monty _______________________________________________ Linux-audio-user mailing list Linux-audio-user@xxxxxxxxxxxxxxxxxxxx http://lists.linuxaudio.org/listinfo/linux-audio-user