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: Rob Herring <rob.herring@calxeda.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
CC: stable@vger.kernel.org
This commit is contained in:
Rob Herring 2013-08-29 07:43:52 -05:00 committed by Stefano Stabellini
parent 23b7eaf822
commit 9dd4b2944c

View file

@ -272,12 +272,15 @@ core_initcall(xen_guest_init);
static int __init xen_pm_init(void)
{
if (!xen_domain())
return -ENODEV;
pm_power_off = xen_power_off;
arm_pm_restart = xen_restart;
return 0;
}
subsys_initcall(xen_pm_init);
late_initcall(xen_pm_init);
static irqreturn_t xen_arm_callback(int irq, void *arg)
{