Disable CPU Idle on Armada 38x
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iEYEABECAAYFAlUc/VsACgkQCwYYjhRyO9VRMQCgm649m2RGKpuIHIfrrUY5Ml9P
 sYEAn3B+ExgeILErBXde/N3gGlu84U4Q
 =qI89
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-fixes-4.0' of git://git.infradead.org/linux-mvebu into fixes

Merge "ARM: mvebu: fixes for v4.0" from Gregory Clement:

mvebu fix for 4.0

Disable CPU Idle on Armada 38x

* tag 'mvebu-fixes-4.0' of git://git.infradead.org/linux-mvebu:
  ARM: mvebu: Disable CPU Idle on Armada 38x

Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
Olof Johansson 2015-04-03 13:55:38 -07:00
Родитель 77479b38e2 548ae94c1c
Коммит 1eddf578e2
1 изменённых файлов: 15 добавлений и 1 удалений

Просмотреть файл

@ -415,6 +415,9 @@ static __init int armada_38x_cpuidle_init(void)
void __iomem *mpsoc_base;
u32 reg;
pr_warn("CPU idle is currently broken on Armada 38x: disabling");
return 0;
np = of_find_compatible_node(NULL, NULL,
"marvell,armada-380-coherency-fabric");
if (!np)
@ -476,6 +479,16 @@ static int __init mvebu_v7_cpu_pm_init(void)
return 0;
of_node_put(np);
/*
* Currently the CPU idle support for Armada 38x is broken, as
* the CPU hotplug uses some of the CPU idle functions it is
* broken too, so let's disable it
*/
if (of_machine_is_compatible("marvell,armada380")) {
cpu_hotplug_disable();
pr_warn("CPU hotplug support is currently broken on Armada 38x: disabling");
}
if (of_machine_is_compatible("marvell,armadaxp"))
ret = armada_xp_cpuidle_init();
else if (of_machine_is_compatible("marvell,armada370"))
@ -489,6 +502,7 @@ static int __init mvebu_v7_cpu_pm_init(void)
return ret;
mvebu_v7_pmsu_enable_l2_powerdown_onidle();
if (mvebu_v7_cpuidle_device.name)
platform_device_register(&mvebu_v7_cpuidle_device);
cpu_pm_register_notifier(&mvebu_v7_cpu_pm_notifier);