Re: [RFC] usb: dwc2: hcd: fix split schedule issue

From: John Youn
Date: Wed Nov 11 2015 - 23:30:44 EST

On 11/11/2015 4:22 PM, Doug Anderson wrote:
> John,
> On Fri, Nov 6, 2015 at 2:04 AM, Yunzhi Li <lyz@xxxxxxxxxxxxxx> wrote:
>> hi John ,
>> As we talked yesterday, I tried to fix the split schedule sequence. This
>> patch will
>> avoid scheduling SSPLIT-IN packet for another device between
>> SSPLIT-OUT-begin and
>> SSPLIT-OUT-end, now the keyboard and Jebra audio speaker could work together
>> well, but
>> I'm not sure if this is exactly the right way to schedule split transfers
>> and if there
>> is any dide effect with this patch. Please help review this patch. Thanks.
>>> Fix dwc2 split schedule sequence issue. Not schedule a SSPLIT_IN
>>> packet between SSPLIT-begin and SSPLIT-end.
>>> Signed-off-by: Yunzhi Li <lyz@xxxxxxxxxxxxxx>
>>> ---
>>> drivers/usb/dwc2/hcd.c | 4 ++++
>>> 1 file changed, 4 insertions(+)
> Did you have any thoughts on this patch? Although this patch didn't
> fix the problems I was seeing with the Microsoft Wireless Keyboard
> (see the patch I sent out earlier which does seem to fix it), I can
> confirm that in a different setup (HUB goes to USB audio + mouse) that
> this patch does fix some problems.
> That being said, it feels to me like a band-aid rather than an actual
> fix (I'm talking out of my rear end, though, since my USB experience
> is lacking at best). It feels like perhaps we're just not keeping
> track the xact_pos correctly, but of course I don't know that for
> sure...
> Anyway, just fishing... ;)
> -Doug

Hi Doug,

I also feel it is not quite right as the SSPLIT should be able to
happen during the SSPLIT of another device. I tried to reproduce
and see the same scheduling but don't see any hang due to it.

Yunzhi, any details on what kind of hub and keyboard you are
using? I have the same Jabra 410 speaker.


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at