On Thu, Jan 10, 2013 at 06:33:43PM +0530, Philip Avinash wrote:
[...]
> diff --git a/drivers/pwm/pwm-tiehrpwm.c b/drivers/pwm/pwm-tiehrpwm.c
[...]
> +static int ehrpwm_pwm_suspend(struct device *dev)
> +{
> +     struct ehrpwm_pwm_chip *pc = dev_get_drvdata(dev);
> +
> +     ehrpwm_pwm_context_save(pc);
> +     pm_runtime_put_sync(dev);
> +     return 0;
> +}
> +
> +static int ehrpwm_pwm_resume(struct device *dev)
> +{
> +     struct ehrpwm_pwm_chip *pc = dev_get_drvdata(dev);
> +
> +     pm_runtime_get_sync(dev);
> +     ehrpwm_pwm_context_restore(pc);
> +     return 0;
> +}

According to Documentation/power/runtime_pm.txt, the PM core runs the
pm_runtime_get_noresume() and pm_runtime_put_sync() before executing the
.suspend() and .resume() callbacks. Are you sure you need to call them
here explicitly?

Thierry

Attachment: pgpBht8Y982zQ.pgp
Description: PGP signature

Reply via email to