29 lines
951 B
Plaintext
29 lines
951 B
Plaintext
|
|
|
|
|
|
Supporting multiple CPU idle levels in kernel
|
|
|
|
cpuidle governors
|
|
|
|
|
|
|
|
|
|
cpuidle governor is policy routine that decides what idle state to enter at
|
|
any given time. cpuidle core uses different callbacks to the governor.
|
|
|
|
* enable() to enable governor for a particular device
|
|
* disable() to disable governor for a particular device
|
|
* select() to select an idle state to enter
|
|
* reflect() called after returning from the idle state, which can be used
|
|
by the governor for some record keeping.
|
|
|
|
More than one governor can be registered at the same time and
|
|
users can switch between drivers using /sysfs interface (when enabled).
|
|
More than one governor part is supported for developers to easily experiment
|
|
with different governors. By default, most optimal governor based on your
|
|
kernel configuration and platform will be selected by cpuidle.
|
|
|
|
Interfaces:
|
|
extern int cpuidle_register_governor(struct cpuidle_governor *gov);
|
|
struct cpuidle_governor
|