From: Sarah Sharp > On Mon, Jan 20, 2014 at 11:21:14AM +0000, David Laight wrote: ... > > A guess... > > > > In queue_bulk_sg_tx() try calling xhci_v1_0_td_remainder() instead > > of xhci_td_remainder(). > > Why? Walt has a 0.96 xHCI host controller, and the format for how to > calculate the TD remainder changed between the 0.96 and the 1.0 spec. > That's why we have xhci_v1_0_td_remainder() and xhci_td_remainder(). I just wonder how many of those differences are just differences in the specification, rather than differences in the hardware implementation. In some cases it might be that the old hardware just ignored the value. I know that the xhci hardware on my ivy bridge cpu does look at that value (at least checking for zero), since things failed in subtle ways when I got it wrong. In this case it was just something easy to change that might be worth trying. I didn't necessarily expect it to make a positive difference. David -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html