Re: [PATCH v3 02/11] USB: dwc3: Adjust runtime pm to allowautosuspend

From: Felipe Balbi
Date: Tue Apr 02 2013 - 04:30:21 EST


On Mon, Apr 01, 2013 at 07:24:01PM +0530, Vivek Gautam wrote:
> The current code in the dwc3 probe effectively disables runtime pm
> from ever working because it calls a get() that was never put() until
> device removal. Change the runtime pm code to match the standard
> formula and allow runtime pm to function.
>
> Signed-off-by: Vivek Gautam <gautam.vivek@xxxxxxxxxxx>
> CC: Doug Anderson <dianders@xxxxxxxxxxxx>
> ---
> drivers/usb/dwc3/core.c | 8 +++++++-
> 1 files changed, 7 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c
> index e2325ad..3a6993c 100644
> --- a/drivers/usb/dwc3/core.c
> +++ b/drivers/usb/dwc3/core.c
> @@ -491,6 +491,11 @@ static int dwc3_probe(struct platform_device *pdev)
>
> dwc->needs_fifo_resize = of_property_read_bool(node, "tx-fifo-resize");
>
> + /* Setting device state as 'suspended' initially,

wrong comment style.

> + * to make sure we know device state prior to
> + * pm_runtime_enable
> + */
> + pm_runtime_set_suspended(dev);

didn't Alan mention this should be done at the Bus level ? In that case,
shouldn't you have call pm_runtime_set_active/suspended() based on
DT's status=okay or status=disabled ? Or something similar ?

--
balbi

Attachment: signature.asc
Description: Digital signature