RE: [PATCH v2] usb: xhci: Don't drive port 2.0 reset while resuming

From: Sriram Dash
Date: Wed Oct 26 2016 - 08:50:58 EST


>From: Mathias Nyman [mailto:mathias.nyman@xxxxxxxxxxxxxxx]
>On 25.10.2016 13:45, Sriram Dash wrote:
>> For the USB3.0 controller, USB 2.0 reset not driven while port is in
>> Resume state. So, do not program the USB 2.0 reset
>> (PORTSC[PR]=1) while in Resume state.
>>
>> Signed-off-by: Rajat Srivastava <rajat.srivastava@xxxxxxx>
>> Signed-off-by: Sriram Dash <sriram.dash@xxxxxxx>
>> Signed-off-by: Rajesh Bhagat <rajesh.bhagat@xxxxxxx>
>> ---
>
>What is the actual issue that you are fixing here?

This was an erratum from Synopsis STAR: 9000962562

>Is there some device that is in resume (PLS==XDEV_RESUME) while driving reset?
>

We have not reproduced this as such.

>I just sent a pach for increasing the resume time signaling to 40ms when clearing
>the PORT_FEAT_SUSPEND.
>Does that work for you?
>
>If not, then we should look closer at why clearing the suspend does not work
>properly.
>One issue could be that ClearPortFeature PORT_FEAT_SUSPEND does not really
>read or wait for for changes in port status. It blindly sets the states based on time
>passed.
>
>Or if it's after system suspend there might be something in bus_resume that is not
>working.
>
>I don't think usb core tries to drive reset while port is still resuming
>

I am skeptical about it and hope somebody may help us on this.

>-Mathias
>