• Rajagopal Venkat's avatar
    PM / devfreq: Core updates to support devices which can idle · 7e6fdd4b
    Rajagopal Venkat authored
    Prepare devfreq core framework to support devices which
    can idle. When device idleness is detected perhaps through
    runtime-pm, need some mechanism to suspend devfreq load
    monitoring and resume back when device is online. Present
    code continues monitoring unless device is removed from
    devfreq core.
    
    This patch introduces following design changes,
    
     - use per device work instead of global work to monitor device
       load. This enables suspend/resume of device devfreq and
       reduces monitoring code complexity.
     - decouple delayed work based load monitoring logic from core
       by introducing helpers functions to be used by governors. This
       provides flexibility for governors either to use delayed work
       based monitoring functions or to implement their own mechanism.
     - devfreq core interacts with governors via events to perform
       specific actions. These events include start/stop devfreq.
       This sets ground for adding suspend/resume events.
    
    The devfreq apis are not modified and are kept intact.
    Signed-off-by: default avatarRajagopal Venkat <rajagopal.venkat@linaro.org>
    Acked-by: default avatarMyungJoo Ham <myungjoo.ham@samsung.com>
    Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    7e6fdd4b
governor_userspace.c 3.03 KB