diff options
author | Ulf Hansson <ulf.hansson@linaro.org> | 2017-10-06 07:20:25 +0300 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2017-10-19 18:46:36 +0300 |
commit | 72ecd793865f91c3cdeb06884f230f38f434c67c (patch) | |
tree | d744ddc59d5df574501bb40ae6101398c13347d9 /arch/arm/mach-ux500/pm.c | |
parent | 8633e4f2e94a4d12cfb413fedfe4c072a6b99a79 (diff) | |
download | linux-72ecd793865f91c3cdeb06884f230f38f434c67c.tar.xz |
ARM: ux500: Fix regression while init PM domains
The commit afece3ab9a36 ("PM / Domains: Add time accounting to various
genpd states") causes a boot regression for ux500.
The problem occurs when the ux500 machine code calls pm_genpd_init(), which
since the above change triggers a call to ktime_get(). More precisely,
because ux500 initializes PM domains in the init_IRQ() phase of the boot,
timekeeping has not yet been initialized.
Fix the problem by moving the initialization of the PM domains to after
timekeeping has been initialized.
Fixes: afece3ab9a36 ("PM / Domains: Add time accounting to various genpd..")
Cc: Thara Gopinath <thara.gopinath@linaro.org>
Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/arm/mach-ux500/pm.c')
-rw-r--r-- | arch/arm/mach-ux500/pm.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/arch/arm/mach-ux500/pm.c b/arch/arm/mach-ux500/pm.c index a970e7fcba9e..f6c33a0c1c61 100644 --- a/arch/arm/mach-ux500/pm.c +++ b/arch/arm/mach-ux500/pm.c @@ -19,7 +19,6 @@ #include <linux/of_address.h> #include "db8500-regs.h" -#include "pm_domains.h" /* ARM WFI Standby signal register */ #define PRCM_ARM_WFI_STANDBY (prcmu_base + 0x130) @@ -203,7 +202,4 @@ void __init ux500_pm_init(u32 phy_base, u32 size) /* Set up ux500 suspend callbacks. */ suspend_set_ops(UX500_SUSPEND_OPS); - - /* Initialize ux500 power domains */ - ux500_pm_domains_init(); } |