From: broonie@opensource.wolfsonmicro.com (Mark Brown)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 20/28] ARM: tegra: cpufreq: Disable cpufreq during suspend
Date: Tue, 25 Jan 2011 12:40:05 +0000 [thread overview]
Message-ID: <20110125124005.GB31453@opensource.wolfsonmicro.com> (raw)
In-Reply-To: <AANLkTinzXJ=PoSNEHAh1gCeH=2araVTvEB++9kcuUmes@mail.gmail.com>
On Tue, Jan 25, 2011 at 07:56:19PM +0900, MyungJoo Ham wrote:
> Moreover, the suspend-related cpufreq issue gets worse with hibernation.
> Generally PMICs preserve their register values during suspend-to-mem;
> however, they lose the values with power-off (and hibernation).
That's interesting - hibernation has been a bit easier when I've looked
at this stuff precisely because it's equivalent to a cold boot, if the
PMIC weren't able to boot the CPU then us software engineers wouldn't
have to worry about any of this stuff :)
> In samsung SoCs, we have mitigated the issue by stopping cpufreq at pm_begin
> (could have a bit different name) and resume with end. When stopping
> cpufreq, we have made it to fix at the boot freq so that we dont face into
> the inconsistency with hibernation.
> Sometimes, when we set voltages for the core, bus, and others, simply saving
> the whole things and restoring them does not work because the order how the
> voltages change may matter (and it does with some of Samsung SoCs). Thus, we
> made them to stop changing and fix at the boot-time default during suspend
> and hibernation.
The ordering matters greatly, this is the big part of what the PMIC
power sequencing is doing. There's also often some handshaking going on
so the PMIC has to wait for the CPU at various points (with delays or
with explicit signals) in the process.
Just thinking about how we could address this in cpufreq is the major
issue that the CPU comes back from resume in a state other than that
which cpufreq remembered it being in or is the issue that the system
tries to restore old voltages as part of the resume process? I guess
either way a feature in cpufreq which allows the driver to override the
governor-chosen configuration for suspend would provide a mechanism to
deal with the issue.
next prev parent reply other threads:[~2011-01-25 12:40 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-25 10:56 [PATCH v2 20/28] ARM: tegra: cpufreq: Disable cpufreq during suspend MyungJoo Ham
2011-01-25 12:40 ` Mark Brown [this message]
-- strict thread matches above, loose matches on Subject: below --
2011-01-24 2:01 [PATCH v2 00/28] Updates for Tegra support in 2.6.39 Colin Cross
2011-01-24 2:01 ` [PATCH v2 20/28] ARM: tegra: cpufreq: Disable cpufreq during suspend Colin Cross
2011-01-24 14:41 ` Mark Brown
2011-01-24 18:50 ` Colin Cross
2011-01-24 19:35 ` Mark Brown
2011-01-24 19:52 ` Colin Cross
2011-01-24 20:26 ` Mark Brown
2011-01-24 20:52 ` Colin Cross
2011-01-24 21:08 ` Mark Brown
2011-01-24 21:24 ` Colin Cross
2011-01-25 4:26 ` Kyungmin Park
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110125124005.GB31453@opensource.wolfsonmicro.com \
--to=broonie@opensource.wolfsonmicro.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).