[lkml]   [2011]   [Feb]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    Subject[RFC PATCH V3 0/3] cpuidle: Cleanup pm_idle and include driver/cpuidle.c in-kernel
    V2 did not support architectures other than x86 that use pm_idle.
    With this patch, architectures that use pm_idle (other than x86) can
    continue to do so and co-exist. They can be incrementally converted
    to directly call into cpuidle instead of pm_idle pointer.

    Changes in V3:

    * Re-arranged code in driver/cpuidle.c to allow non-x86 architectures
    to continue to use pm-idle pointer until cpuidle.c is included into
    the kernel for those architectures.

    * This patch series tries to maintain pm_idle pointer for non-x86
    archs so that the interface does not change at this point. These
    archs can continue to set pm_idle=cpuidle_idle_call() if they want
    to use cpuidle or stick to the present boot process.

    * After wider review and testing we could incrementally convert other
    archs (including arm, blackfin, cris, ia64, m32r, m68knommu,
    microblaze, mn10300, sh, sparc) also to use cpuidle.c implicitly.

    * This patch series applies on 2.6.37, and was tested on x86 system
    with multiple sleep states. It was also compile tested on ARM,
    boot tested on POWER6.

    This patch series tries to achieve the goal of having cpuidle manage
    all idle routine for x86. It removes pm_idle function pointer which
    causes problems discussed at and

    V1 of this series is at
    and V2 is at

    * Force default idle for xen in xen/setup.c
    * This series applies on 2.6.37, would have to be rebased to


    Trinabh Gupta (3):
    cpuidle: default idle driver for x86
    cpuidle: list based cpuidle driver registration and selection
    cpuidle: Remove pm_idle pointer for x86

    arch/x86/kernel/process.c | 340 -------------------------------
    arch/x86/kernel/process_32.c | 4
    arch/x86/kernel/process_64.c | 4
    arch/x86/xen/setup.c | 1
    drivers/acpi/processor_idle.c | 2
    drivers/cpuidle/Kconfig | 9 +
    drivers/cpuidle/cpuidle.c | 43 +++-
    drivers/cpuidle/driver.c | 112 ++++++++++
    drivers/idle/Makefile | 2
    drivers/idle/default_driver.c | 453 +++++++++++++++++++++++++++++++++++++++++
    include/linux/cpuidle.h | 3
    11 files changed, 613 insertions(+), 360 deletions(-)
    create mode 100644 drivers/idle/default_driver.c


     \ /
      Last update: 2011-02-08 11:55    [W:0.020 / U:15.316 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site