[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <DB5PR0401MB18136B38E3A962A30F78CE3DFE8A0@DB5PR0401MB1813.eurprd04.prod.outlook.com>
Date: Mon, 28 Nov 2016 03:53:02 +0000
From: Jerry Huang <jerry.huang@....com>
To: Sergei Shtylyov <sergei.shtylyov@...entembedded.com>,
"stern@...land.harvard.edu" <stern@...land.harvard.edu>,
"gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>
CC: Ramneek Mehresh <ramneek.mehresh@....com>,
"julia.lawall@...6.fr" <julia.lawall@...6.fr>,
Sriram Dash <sriram.dash@....com>,
"linux-usb@...r.kernel.org" <linux-usb@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH v2] fsl/usb: Workarourd for USB erratum-A005697
Thanks a lot for you look into this patch, I will fixed these typos.
Best Regards
Jerry Huang
-----Original Message-----
From: Sergei Shtylyov [mailto:sergei.shtylyov@...entembedded.com]
Sent: Friday, November 25, 2016 9:12 PM
To: Jerry Huang <jerry.huang@....com>; stern@...land.harvard.edu; gregkh@...uxfoundation.org
Cc: Ramneek Mehresh <ramneek.mehresh@....com>; julia.lawall@...6.fr; Sriram Dash <sriram.dash@....com>; linux-usb@...r.kernel.org; linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2] fsl/usb: Workarourd for USB erratum-A005697
Hello.
On 11/25/2016 06:24 AM, Changming Huang wrote:
> The EHCI specification states the following in the SUSP bit description:
> In the Suspend state, the port is senstive to resume detection.
Sensitive.
> Note that the bit status does not change untile the port is suspended
> and
Until.
> that there may be a delay in susupending a port if there is a
> transaction
Suspending.
> currently in progress on the USB.
>
> However, in NXP USBDR controller, the PORTSCx[SUSP] bit changes
> immediately when the application sets it and not when the port is actually suspended.
>
> So the application must wait for at least 10 milliseconds after a port
> indicates that it is suspended, to make sure this port has entered
> suspended state before initiating this port resume using the Force
> Port Resume bit. This bit is for NXP controller, not EHCI compatible.
>
> Signed-off-by: Changming Huang <jerry.huang@....com>
> Signed-off-by: Ramneek Mehresh <ramneek.mehresh@....com>
[...]
> diff --git a/drivers/usb/host/ehci-hub.c b/drivers/usb/host/ehci-hub.c
> index 74f62d6..81e2310 100644
> --- a/drivers/usb/host/ehci-hub.c
> +++ b/drivers/usb/host/ehci-hub.c
> @@ -310,6 +310,13 @@ static int ehci_bus_suspend (struct usb_hcd *hcd)
> }
> spin_unlock_irq(&ehci->lock);
>
> + if (changed && ehci_has_fsl_susp_errata(ehci))
> + /* Wait for at least 10 millisecondes to ensure the controller
Milliseconds.
> + * enter the suspend status before initiating a port resume
> + * using the Fore Port Resume bit (Not-EHCI compatible).
Maybe force?
s/Not/non/ also.
> + */
> + usleep_range(10000, 20000);
> +
> if ((changed && ehci->has_tdi_phy_lpm) || fs_idle_delay) {
> /*
> * Wait for HCD to enter low-power mode or for the bus
[...]
> @@ -703,10 +704,15 @@ struct ehci_tt { #if defined(CONFIG_PPC_85xx)
> /* Some Freescale processors have an erratum (USB A-005275) in which
> * incoming packets get corrupted in HS mode
> + * Some Freescale processors have an erratum (USB A-005697) in which
> + * we need to wait for 10ms for bus to fo into suspend mode after
Fo?
[...]
MBR, Sergei
Powered by blists - more mailing lists