On Fri, 10 Jun 2016, Alan Stern wrote:

> On Fri, 10 Jun 2016, Sean M. Pappalardo wrote:
> 
> > 
> > 
> > On 06/10/2016 11:06 AM, Alan Stern wrote:
> > > Have you tried plugging the audio
> > > devices into a USB-2 hub and plugging the hub into bus 2?
> > 
> > That works!! (I forgot, my monitor has a built-in 2-port USB2.0 hub.)
> 
> Great!
> 
> > So what's going on here? How does adding another hub layer help??
> 
> I have no clue.  The idea was suggested by the fact that your devices
> worked okay when plugged into the docking station, which has its own
> hub.

Actually, after reviewing the data files you sent I did have a thought.  
Can you try out the patch below and see if it makes any difference?

Alan Stern



Index: usb-4.x/drivers/usb/host/ehci-sched.c
===================================================================
--- usb-4.x.orig/drivers/usb/host/ehci-sched.c
+++ usb-4.x/drivers/usb/host/ehci-sched.c
@@ -861,7 +861,7 @@ done:
 static int qh_schedule(struct ehci_hcd *ehci, struct ehci_qh *qh)
 {
        int             status = 0;
-       unsigned        uframe;
+       int             uframe;
        unsigned        c_mask;
        struct ehci_qh_hw       *hw = qh->hw;
        struct ehci_tt          *tt;
@@ -893,7 +893,7 @@ static int qh_schedule(struct ehci_hcd *
 
                for (i = qh->ps.bw_period; i > 0; --i) {
                        frame = ++ehci->random_frame & (qh->ps.bw_period - 1);
-                       for (uframe = 0; uframe < 8; uframe++) {
+                       for (uframe = 7; uframe >= 0; uframe--) {
                                status = check_intr_schedule(ehci,
                                                frame, uframe, qh, &c_mask, tt);
                                if (status == 0)

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to