On 10/15/2013 01:25 AM, Jean-Christophe PLAGNIOL-VILLARD wrote:
On 22:15 Mon 14 Oct , Daniel Lezcano wrote:
Using the platform driver model is a good way to separate the cpuidle specific code from the low level pm code. It allows to remove the dependency between these two components.
The platform_device is located in the pm code and a 'set' function has been added to set the standby function from the AT91_SOC_START initialization function. Each SoC with a cpuidle driver will set the standby function in the platform_data field at init time. Then pm code will register the cpuidle platform device.
The cpuidle driver will register the platform_driver and use the device's platform_data as a standby callback in the idle path.
I've an issue while re-reading the pm code
we use the xx_standby for 2 drivers cpuidle and suspend/resume
with all the cpu_is_xxxx
so you need to do one more step in this series by cleaning up the PM_SUSPEND_STANDBY to as you put a function pointer with the correct one in pm.c
I was plannning to send it as a separate patch.
otherwise looks good
Cool. Thanks for the review.
-- Daniel
[ ... ]