Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 83e267d7 authored by Stuart Yoder's avatar Stuart Yoder Committed by Scott Wood
Browse files

powerpc: move epapr paravirt init of power_save to an initcall



some restructuring of epapr paravirt init resulted in
ppc_md.power_save being set, and then overwritten to
NULL during machine_init.  This patch splits the
initialization of ppc_md.power_save out into a postcore
init call.

Signed-off-by: default avatarStuart Yoder <stuart.yoder@freescale.com>
Signed-off-by: default avatarScott Wood <scottwood@freescale.com>
parent 2b09c603
Loading
Loading
Loading
Loading
+11 −1
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@ extern u32 epapr_ev_idle_start[];
#endif

bool epapr_paravirt_enabled;
static bool epapr_has_idle;

static int __init early_init_dt_scan_epapr(unsigned long node,
					   const char *uname,
@@ -55,7 +56,7 @@ static int __init early_init_dt_scan_epapr(unsigned long node,

#if !defined(CONFIG_64BIT) || defined(CONFIG_PPC_BOOK3E_64)
	if (of_get_flat_dt_prop(node, "has-idle", NULL))
		ppc_md.power_save = epapr_ev_idle;
		epapr_has_idle = true;
#endif

	epapr_paravirt_enabled = true;
@@ -70,3 +71,12 @@ int __init epapr_paravirt_early_init(void)
	return 0;
}

static int __init epapr_idle_init(void)
{
	if (epapr_has_idle)
		ppc_md.power_save = epapr_ev_idle;

	return 0;
}

postcore_initcall(epapr_idle_init);