Squashed backup commit (no shallow-clone history issues) of xiaomi-mt6833-dev/kernel_xiaomi_mt6833 (lineage-23.2 branch, upstream commit 9eece662e) plus all fixes applied to get everpal_defconfig building clean against a modern (GCC 15.2.0) toolchain -- see the previous commit message on the lineage-23.2 branch (also in this repo history is not available here since this is a squashed snapshot; full incremental history lives in the local DL380 checkout and the upstream GitHub remote). Upstream: https://github.com/xiaomi-mt6833-dev/kernel_xiaomi_mt6833 (lineage-23.2)
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
|