diff mbox

[V3,05/11] USB: OHCI: Properly handle ohci-ep93xx suspend

Message ID 1371643936-3314-6-git-send-email-manjunath.goudar@linaro.org (mailing list archive)
State New, archived
Headers show

Commit Message

Manjunath Goudar June 19, 2013, 12:12 p.m. UTC
Suspend scenario in case of ohci-ep93xx glue was not
properly handled as it was not suspending generic part
of ohci controller. Calling explicitly the ohci_suspend()
routine in ohci_hcd_ep93xx_drv_suspend() will ensure proper
handling of suspend scenario.

Signed-off-by: Manjunath Goudar <manjunath.goudar@linaro.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Alan Stern <stern@rowland.harvard.edu>
Cc: Greg KH <greg@kroah.com>
Cc: linux-usb@vger.kernel.org

V2:
 -Incase ohci_suspend() fails, return right away without
  executing further.
V3:
 -Aligned variable "do_wakeup" and "ret".
---
 drivers/usb/host/ohci-ep93xx.c |   10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

Comments

Sergei Shtylyov June 19, 2013, 12:43 p.m. UTC | #1
Hello.

On 19-06-2013 16:12, Manjunath Goudar wrote:

> Suspend scenario in case of ohci-ep93xx glue was not
> properly handled as it was not suspending generic part
> of ohci controller. Calling explicitly the ohci_suspend()
> routine in ohci_hcd_ep93xx_drv_suspend() will ensure proper
> handling of suspend scenario.

> Signed-off-by: Manjunath Goudar <manjunath.goudar@linaro.org>
> Cc: Arnd Bergmann <arnd@arndb.de>
> Cc: Alan Stern <stern@rowland.harvard.edu>
> Cc: Greg KH <greg@kroah.com>
> Cc: linux-usb@vger.kernel.org

> V2:
>   -Incase ohci_suspend() fails, return right away without
>    executing further.
> V3:
>   -Aligned variable "do_wakeup" and "ret".
> ---
>   drivers/usb/host/ohci-ep93xx.c |   10 +++++++++-
>   1 file changed, 9 insertions(+), 1 deletion(-)

> diff --git a/drivers/usb/host/ohci-ep93xx.c b/drivers/usb/host/ohci-ep93xx.c
> index 8704e9f..f5f11d1 100644
> --- a/drivers/usb/host/ohci-ep93xx.c
> +++ b/drivers/usb/host/ohci-ep93xx.c
> @@ -174,13 +174,21 @@ static int ohci_hcd_ep93xx_drv_suspend(struct platform_device *pdev, pm_message_
>   {
>   	struct usb_hcd *hcd = platform_get_drvdata(pdev);
>   	struct ohci_hcd *ohci = hcd_to_ohci(hcd);
> +	bool	do_wakeup = device_may_wakeup(&pdev->dev);
> +	int		ret;

    There was no need to use tabs here, didn't you see that here the 
variables aren't aligned?

WBR, Sergei
Viresh Kumar June 19, 2013, 2:49 p.m. UTC | #2
On 19 June 2013 20:12, Manjunath Goudar <manjunath.goudar@linaro.org> wrote:
> On 19 June 2013 18:13, Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
>> On 19-06-2013 16:12, Manjunath Goudar wrote:

>>>         struct usb_hcd *hcd = platform_get_drvdata(pdev);
>>>         struct ohci_hcd *ohci = hcd_to_ohci(hcd);
>>> +       bool    do_wakeup = device_may_wakeup(&pdev->dev);
>>> +       int             ret;
>>
>>
>>    There was no need to use tabs here, didn't you see that here the
>> variables aren't aligned?

> Instead of gmail you can use thunderbird mail there it is showing  proper
> alignment.

First try to understand what the actual comment is. He isn't complaining
about bad alignment but as hcd and ohci aren't aligned with tabs, you
don't require to add tabs to do_wakeup and ret.

--
viresh
Sergei Shtylyov June 19, 2013, 5:33 p.m. UTC | #3
Hello.

On 06/19/2013 06:42 PM, Manjunath Goudar wrote:

>         Suspend scenario in case of ohci-ep93xx glue was not
>         properly handled as it was not suspending generic part
>         of ohci controller. Calling explicitly the ohci_suspend()
>         routine in ohci_hcd_ep93xx_drv_suspend() will ensure proper
>         handling of suspend scenario.
>
>
>         Signed-off-by: Manjunath Goudar <manjunath.goudar@linaro.org
>         <mailto:manjunath.goudar@linaro.org>>
>         Cc: Arnd Bergmann <arnd@arndb.de <mailto:arnd@arndb.de>>
>         Cc: Alan Stern <stern@rowland.harvard.edu
>         <mailto:stern@rowland.harvard.edu>>
>         Cc: Greg KH <greg@kroah.com <mailto:greg@kroah.com>>
>         Cc: linux-usb@vger.kernel.org <mailto:linux-usb@vger.kernel.org>
>
>
>         V2:
>            -Incase ohci_suspend() fails, return right away without
>             executing further.
>         V3:
>            -Aligned variable "do_wakeup" and "ret".
>         ---
>            drivers/usb/host/ohci-ep93xx.c |   10 +++++++++-
>            1 file changed, 9 insertions(+), 1 deletion(-)
>
>
>         diff --git a/drivers/usb/host/ohci-__ep93xx.c
>         b/drivers/usb/host/ohci-__ep93xx.c
>         index 8704e9f..f5f11d1 100644
>         --- a/drivers/usb/host/ohci-__ep93xx.c
>         +++ b/drivers/usb/host/ohci-__ep93xx.c
>         @@ -174,13 +174,21 @@ static int
>         ohci_hcd_ep93xx_drv_suspend(__struct platform_device *pdev,
>         pm_message_
>            {
>                  struct usb_hcd *hcd = platform_get_drvdata(pdev);
>                  struct ohci_hcd *ohci = hcd_to_ohci(hcd);
>         +       bool    do_wakeup = device_may_wakeup(&pdev->dev);
>         +       int             ret;
>

>         There was no need to use tabs here, didn't you see that here the
>     variables aren't aligned?

>     WBR, Sergei

> Instead of gmail you can use thunderbird mail there it is showing
>   proper alignment.

    Imagine, I'm using Thinderbird. :-D
    And you're using HTML reply format, unwelcome on the Linux mailing 
lists.

> Manjunath Goudar

WBR, Sergei
diff mbox

Patch

diff --git a/drivers/usb/host/ohci-ep93xx.c b/drivers/usb/host/ohci-ep93xx.c
index 8704e9f..f5f11d1 100644
--- a/drivers/usb/host/ohci-ep93xx.c
+++ b/drivers/usb/host/ohci-ep93xx.c
@@ -174,13 +174,21 @@  static int ohci_hcd_ep93xx_drv_suspend(struct platform_device *pdev, pm_message_
 {
 	struct usb_hcd *hcd = platform_get_drvdata(pdev);
 	struct ohci_hcd *ohci = hcd_to_ohci(hcd);
+	bool	do_wakeup = device_may_wakeup(&pdev->dev);
+	int		ret;
 
 	if (time_before(jiffies, ohci->next_statechange))
 		msleep(5);
+
+	ret = ohci_suspend(hcd, do_wakeup);
+	if (ret)
+		return ret;
+
 	ohci->next_statechange = jiffies;
 
 	ep93xx_stop_hc(&pdev->dev);
-	return 0;
+
+	return ret;
 }
 
 static int ohci_hcd_ep93xx_drv_resume(struct platform_device *pdev)