[PATCH v2 11/12] cpuidle: mvebu: Add initial CPU idle support for Armada 370/XP SoC
Gregory CLEMENT
gregory.clement at free-electrons.com
Mon Oct 14 10:01:36 EDT 2013
On 15/09/2013 19:31, Daniel Lezcano wrote:
Hi Daniel,
>>>> + .state_count = ARMADA_370_XP_MAX_STATES,
>>>> +};
>>>
>>> What about the local timers ? Are they shutdown ?
>>
>> I need to chekc it.
>
> Ok, if it is the case, there is the flag CPUIDLE_FLAG_TIMER_STOP to tell
> the cpuidle framework to switch to the broadcast timer with this state.
I have just sent a new version taking into account all your remarks, expect
this one. The timers used on Armada 370/XP are only the locale timer then
they are not shutdown when the CPUs go to idle.
Regards,
Gregory
>
>>>> +static int __init armada_370_xp_cpuidle_init(void)
>>>> +{
>>>> + if (!of_find_compatible_node(NULL, NULL, "marvell,armada-370-xp-pmsu"))
>>>> + return -ENODEV;
>>>> +
>>>> + if (!of_find_compatible_node(NULL, NULL, "marvell,coherency-fabric"))
>>>> + return -ENODEV;
>>>> +
>>>> + pr_info("Initializing Armada-XP CPU power management ");
>>>> +
>>>> + armada_370_xp_pmsu_enable_l2_powerdown_onidle();
>>>> +
>>>> + return cpuidle_register(&armada_370_xp_idle_driver, NULL);
>>>> +}
>>>> +
>>>> +module_init(armada_370_xp_cpuidle_init);
>>>
>>> Isn't it possible to replace it by module_platform_driver ? like ux500
>>> or kirkwood ?
>>
>> It should be possible indeed, I will check it.
>
> That would be great. It is a nicer approach for the single zImage IMHO.
>
> Thanks !
> -- Daniel
>
--
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
More information about the linux-arm-kernel
mailing list