linux-pm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/4] PM / Domains: Fix race conditions during boot
@ 2014-09-30 12:43 Ulf Hansson
  2014-09-30 12:43 ` [PATCH 1/4] PM / Domains: Remove pm_genpd_dev_need_restore() API Ulf Hansson
                   ` (4 more replies)
  0 siblings, 5 replies; 20+ messages in thread
From: Ulf Hansson @ 2014-09-30 12:43 UTC (permalink / raw)
  To: Rafael J. Wysocki, Len Brown, Pavel Machek, linux-pm
  Cc: Geert Uytterhoeven, Kevin Hilman, Tomasz Figa, Philipp Zabel,
	Russell King, Mark Brown, Wolfram Sang, Greg Kroah-Hartman,
	Dmitry Torokhov, Jack Dai, Jinkun Hong, Ulf Hansson

When there are more than one device in a PM domain these will obviously
be probed at different times. Depending on timing and the implemented
support for runtime PM in a driver/subsystem, genpd may be advised to
power off a PM domain after a successful probe sequence.
    
Ideally we should have relied on the driver/subsystem, through runtime
PM, to bring their device's PM domain into powered state prior doing
probing if such requirement exist.
    
Since this is not a common practice by drivers/subsystems, enforcing
such a change doesn't seem viable.
    
Instead, let's improve the situation, by preventing genpd from powering
off any of the PM domains until late_init. At that point genpd already
tries to power off unused PM domains, so it seems like a decent match.
    
Cases which can't be covered within the window of until late_init needs
to be adressed separately and likely through a more common long term
solution.


Ulf Hansson (4):
  PM / Domains: Remove pm_genpd_dev_need_restore() API
  ARM: exynos: Ensure PM domains are powered at initialization
  PM / Domains: Expect PM domains being powered at initialization
  PM / Domains: Enforce PM domains to stay powered during boot

 arch/arm/mach-exynos/pm_domains.c   |  7 ++++---
 arch/arm/mach-s3c64xx/pm.c          |  4 ++--
 arch/arm/mach-shmobile/pm-r8a7779.c |  2 +-
 arch/arm/mach-shmobile/pm-rmobile.c |  2 +-
 drivers/base/power/domain.c         | 42 ++++++++++++++++---------------------
 include/linux/pm_domain.h           |  7 +++----
 6 files changed, 29 insertions(+), 35 deletions(-)

-- 
1.9.1


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2014-10-02 10:07 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-09-30 12:43 [PATCH 0/4] PM / Domains: Fix race conditions during boot Ulf Hansson
2014-09-30 12:43 ` [PATCH 1/4] PM / Domains: Remove pm_genpd_dev_need_restore() API Ulf Hansson
2014-09-30 13:21   ` Geert Uytterhoeven
2014-09-30 18:07   ` Kevin Hilman
2014-09-30 12:43 ` [PATCH 2/4] ARM: exynos: Ensure PM domains are powered at initialization Ulf Hansson
2014-09-30 18:33   ` Kevin Hilman
2014-10-01 11:23     ` Tomasz Figa
2014-10-01 12:45       ` Ulf Hansson
2014-09-30 12:43 ` [PATCH 3/4] PM / Domains: Expect PM domains being " Ulf Hansson
2014-09-30 13:24   ` Geert Uytterhoeven
2014-09-30 18:21   ` Kevin Hilman
2014-10-01 11:09     ` Ulf Hansson
2014-09-30 18:30   ` Kevin Hilman
2014-10-01 10:47     ` Ulf Hansson
2014-09-30 12:43 ` [PATCH 4/4] PM / Domains: Enforce PM domains to stay powered during boot Ulf Hansson
2014-09-30 20:08 ` [PATCH 0/4] PM / Domains: Fix race conditions " Rafael J. Wysocki
2014-10-01  7:35   ` Ulf Hansson
2014-10-01 20:31     ` Rafael J. Wysocki
2014-10-02  9:28       ` Ulf Hansson
2014-10-02 10:07       ` Ulf Hansson

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).