[PATCH] i2c: nomadik: Fixup system suspend

Ulf Hansson ulf.hansson at linaro.org
Tue May 6 02:31:12 PDT 2014

On 10 April 2014 20:49, Linus Walleij <linus.walleij at linaro.org> wrote:
> On Thu, Apr 10, 2014 at 3:59 PM, Ulf Hansson <ulf.hansson at linaro.org> wrote:
>> For !CONFIG_PM_RUNTIME, the device were never put back into active
>> state while resuming.
>> For CONFIG_PM_RUNTIME, we blindly trusted the device to be inactive
>> while we were about to handle it at suspend late, which is just too
>> optimistic.
>> Even if the driver uses pm_runtime_put_sync() after each tranfer to
>> return it's runtime PM resources, there are no guarantees this will
>> actually mean the device will inactivated. The reason is that the PM
>> core will prevent runtime suspend during system suspend, and thus when
>> a transfer occurs during the early phases of system suspend the device
>> will be kept active after the transfer.
>> To handle both issues above, use pm_runtime_force_suspend|resume() from
>> the system suspend|resume callbacks.
>> Cc: Alessandro Rubini <rubini at unipv.it>
>> Cc: Linus Walleij <linus.walleij at linaro.org>
>> Cc: Wolfram Sang <wsa at the-dreams.de>
>> Signed-off-by: Ulf Hansson <ulf.hansson at linaro.org>
> Acked-by: Linus Walleij <linus.walleij at linaro.org>

Hi Wolfram,

This patch as has been around for a while (in some other versions as
well), would you mind picking it up for 3.16?

Kind regards
Ulf Hansson

> Yours,
> Linus Walleij

More information about the linux-arm-kernel mailing list