[PATCH v5 14/14] ARM: mvebu: register the cpuidle driver for the Armada XP SoCs
Ezequiel Garcia
ezequiel.garcia at free-electrons.com
Wed Mar 26 06:30:25 EDT 2014
Hi Gregory,
On Mar 25, Gregory CLEMENT wrote:
> @@ -285,4 +290,21 @@ static struct notifier_block armada_370_xp_cpu_pm_notifier = {
> .notifier_call = armada_370_xp_cpu_pm_notify,
> };
>
> +int __init armada_370_xp_cpu_pm_init(void)
> +{
> + if (!((of_find_compatible_node(NULL, NULL, "marvell,armada-370-xp-pmsu") ||
> + of_find_compatible_node(NULL, NULL, "marvell,armada-370-pmsu"))
> + && of_find_compatible_node(NULL, NULL, "marvell,coherency-fabric")
> + && of_machine_is_compatible("marvell,armadaxp")))
> + return 0;
> +
of_find_compatible_node() gets the returned node, so you should put it
after using it. How about something along this pseudo-code?
pmsu = of_find_compatible_node(pmsu);
coherency_fabric = of_find_compatible_node(coherency_fabric);
if (pmsu && coherency_fabric && of_machine_is_compatible(armadaxp)) {
/* Do your thing ... */
}
of_node_put(pmsu);
of_node_put(coherency_fabric);
And you also gain some readability, as a side effect.
--
Ezequiel García, Free Electrons
Embedded Linux, Kernel and Android Engineering
http://free-electrons.com
More information about the linux-arm-kernel
mailing list