Commit 9dd4b294 authored by Rob Herring's avatar Rob Herring Committed by Stefano Stabellini

ARM: xen: only set pm function ptrs for Xen guests

xen_pm_init was unconditionally setting pm_power_off and arm_pm_restart
function pointers. This breaks multi-platform kernels. Make this
conditional on running as a Xen guest and make it a late_initcall to
ensure it is setup after platform code for Dom0.
Signed-off-by: default avatarRob Herring <rob.herring@calxeda.com>
Signed-off-by: default avatarStefano Stabellini <stefano.stabellini@eu.citrix.com>
CC: stable@vger.kernel.org
parent 23b7eaf8
...@@ -272,12 +272,15 @@ core_initcall(xen_guest_init); ...@@ -272,12 +272,15 @@ core_initcall(xen_guest_init);
static int __init xen_pm_init(void) static int __init xen_pm_init(void)
{ {
if (!xen_domain())
return -ENODEV;
pm_power_off = xen_power_off; pm_power_off = xen_power_off;
arm_pm_restart = xen_restart; arm_pm_restart = xen_restart;
return 0; return 0;
} }
subsys_initcall(xen_pm_init); late_initcall(xen_pm_init);
static irqreturn_t xen_arm_callback(int irq, void *arg) static irqreturn_t xen_arm_callback(int irq, void *arg)
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment