[PATCH] mmc: mmci: Gate the clock in runtime suspend to save power

Linus Walleij linus.walleij at linaro.org
Wed Dec 12 13:54:26 EST 2012


On Wed, Dec 12, 2012 at 12:02 PM, Ulf Hansson <ulf.hansson at linaro.org> wrote:
> On 12 December 2012 07:53, Linus Walleij <linus.walleij at linaro.org> wrote:

>> 1) Turn on MMC_CLKGATE for this driver (select from Kconfig)
>> which means that the ios will be called with f=0 whenever
>> the card is unused, taking into account the required number
>> of clocks to the card.
>
> I think MMC_CLKGATE was a good initiative in the past. But that was
> before runtime pm was there to use. Runtime pm suits much better for
> handling clock gating and other runtime power save actions that could
> be possible for a host driver to do.
>
> I would even suggest the MMC_CLKGATE should be removed from the
> protocol layer, once we see that all host drivers that used it has
> switch to runtime pm.

Ah now I remember that you've actually even explained this to me ...
memory is too short sometimes. But I follow this idea.

Then we have only the coordination between runtime suspend
and suspend proper to iron out.

Russell's concern is valid if suspend() will not wait for runtime_suspend()
to complete the last cycle before suspending.

Hm this sounds scaringly familiar to what we've discussed with
Kevin Hilman et al recently...

Yours,
Linus Walleij



More information about the linux-arm-kernel mailing list