summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefano Stabellini <stefano.stabellini@eu.citrix.com>2013-05-08 11:59:01 +0000
committerStefano Stabellini <stefano.stabellini@eu.citrix.com>2013-05-13 16:13:04 +0000
commit1aa3d8d9935dfb459d64f06ccd828b56147fd971 (patch)
treead07113278fbe2a251a49e147819469bd5724ee4
parent9bc25a1d5f95f97e9e378620a46e954d3f842641 (diff)
downloadlinux-1aa3d8d9935dfb459d64f06ccd828b56147fd971.tar.bz2
xen/arm: initialize pm functions later
If we are running in dom0, we have to wait for the arch specific code to complete the initialization in order for us to successfully reset the power_off and pm_restart functions. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
-rw-r--r--arch/arm/xen/enlighten.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/arch/arm/xen/enlighten.c b/arch/arm/xen/enlighten.c
index d30042e39974..83d13b0d5f74 100644
--- a/arch/arm/xen/enlighten.c
+++ b/arch/arm/xen/enlighten.c
@@ -272,12 +272,18 @@ static int __init xen_guest_init(void)
if (!xen_initial_domain())
xenbus_probe(NULL);
+ return 0;
+}
+core_initcall(xen_guest_init);
+
+static int __init xen_pm_init(void)
+{
pm_power_off = xen_power_off;
arm_pm_restart = xen_restart;
return 0;
}
-core_initcall(xen_guest_init);
+subsys_initcall(xen_pm_init);
static irqreturn_t xen_arm_callback(int irq, void *arg)
{