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

From: Yunzhi Li
Date: Thu Nov 12 2015 - 04:44:44 EST


Hi John

å 2015/11/12 12:29, John Youn åé:
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.


You could use a single tt hub and any stander keyboard or mouse to reproduce this issue
1. connect hub keyboard and audio speaker
2. play any sound
3. then the keyboard stop working

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/