linaro-pm-wg team mailing list archive
Mailing list archive
[Blueprint cpuidle-smp-drivers] CPUidle driver changes needed for SMP ARM platforms
Blueprint changed by Mounir Bsaibes:
Tegra implements this in an interesting way with some interrupt mechanism to signal between CPUs in the CPUidle driver:
As an example of driver that needs adapting, the OMAP4 CPUidle driver in the Android tree expects CPU1 to be taken offline via hotplug framework before CPU0 takes the whole ARM cluster down to a lower C-state:
Main discussion that needs to take place @ UDS is:
1) do we like the approach Tegra takes for other ARM platforms?
2) is it relevant/possible to other ARM platforms?
3) what consolidation can take place here?
4) division of labor to implement platform-specific bits
Discussion from LDS revealed:
1) Other platforms have a similar solution to Tegra and don't *require* Hotplug for CPUidle functionality.
a) OMAP implementation needs to be updated to remove hotplug dependency
b) What other platforms need updating?
c) Should wait on Lorenzo's idle consolidation patches?
2) Hotplug is still desirable from the power optimization perspective
+ [1-13-2012] based on note from Mike Turqueete the SMP CPUidle patches
+ that were developed for OMAP by the Android folks have been posted to
+ the Linux OMAP mailing list. See,
+ So that action is unblocked now. What remains is to determine if the
+ other platforms can also implement an SMP CPUidle. Maybe the platform
+ owners can be assigned this task?
[mturquette] determine which ARM platforms need updating: DONE
- [mturquette] only OMAP requires hotplug in idle path. Follow up with internal teams on removing hotplug dependency: BLOCKED
+ [mturquette] only OMAP requires hotplug in idle path. Follow up with internal teams on removing hotplug dependency: DONE
+ determine if the other platforms can also implement an SMP CPUidle: TODO
CPUidle driver changes needed for SMP ARM platforms