.. | .. |
---|
| 1 | +# SPDX-License-Identifier: GPL-2.0-only |
---|
1 | 2 | menu "CPU Idle" |
---|
2 | 3 | |
---|
3 | 4 | config CPU_IDLE |
---|
4 | 5 | bool "CPU idle PM support" |
---|
5 | 6 | default y if ACPI || PPC_PSERIES |
---|
6 | 7 | select CPU_IDLE_GOV_LADDER if (!NO_HZ && !NO_HZ_IDLE) |
---|
7 | | - select CPU_IDLE_GOV_MENU if (NO_HZ || NO_HZ_IDLE) |
---|
| 8 | + select CPU_IDLE_GOV_MENU if (NO_HZ || NO_HZ_IDLE) && !CPU_IDLE_GOV_TEO |
---|
8 | 9 | help |
---|
9 | 10 | CPU idle is a generic framework for supporting software-controlled |
---|
10 | 11 | idle processor power management. It includes modular cross-platform |
---|
.. | .. |
---|
15 | 16 | if CPU_IDLE |
---|
16 | 17 | |
---|
17 | 18 | config CPU_IDLE_MULTIPLE_DRIVERS |
---|
18 | | - bool |
---|
| 19 | + bool |
---|
19 | 20 | |
---|
20 | 21 | config CPU_IDLE_GOV_LADDER |
---|
21 | 22 | bool "Ladder governor (for periodic timer tick)" |
---|
22 | 23 | |
---|
23 | 24 | config CPU_IDLE_GOV_MENU |
---|
24 | 25 | bool "Menu governor (for tickless system)" |
---|
| 26 | + |
---|
| 27 | +config CPU_IDLE_GOV_TEO |
---|
| 28 | + bool "Timer events oriented (TEO) governor (for tickless systems)" |
---|
| 29 | + help |
---|
| 30 | + This governor implements a simplified idle state selection method |
---|
| 31 | + focused on timer events and does not do any interactivity boosting. |
---|
| 32 | + |
---|
| 33 | + Some workloads benefit from using it and it generally should be safe |
---|
| 34 | + to use. Say Y here if you are not happy with the alternatives. |
---|
| 35 | + |
---|
| 36 | +config CPU_IDLE_GOV_HALTPOLL |
---|
| 37 | + bool "Haltpoll governor (for virtualized systems)" |
---|
| 38 | + depends on KVM_GUEST |
---|
| 39 | + help |
---|
| 40 | + This governor implements haltpoll idle state selection, to be |
---|
| 41 | + used in conjunction with the haltpoll cpuidle driver, allowing |
---|
| 42 | + for polling for a certain amount of time before entering idle |
---|
| 43 | + state. |
---|
| 44 | + |
---|
| 45 | + Some virtualized workloads benefit from using it. |
---|
25 | 46 | |
---|
26 | 47 | config DT_IDLE_STATES |
---|
27 | 48 | bool |
---|
.. | .. |
---|
41 | 62 | source "drivers/cpuidle/Kconfig.powerpc" |
---|
42 | 63 | endmenu |
---|
43 | 64 | |
---|
| 65 | +config HALTPOLL_CPUIDLE |
---|
| 66 | + tristate "Halt poll cpuidle driver" |
---|
| 67 | + depends on X86 && KVM_GUEST |
---|
| 68 | + default y |
---|
| 69 | + help |
---|
| 70 | + This option enables halt poll cpuidle driver, which allows to poll |
---|
| 71 | + before halting in the guest (more efficient than polling in the |
---|
| 72 | + host via halt_poll_ns for some scenarios). |
---|
| 73 | + |
---|
44 | 74 | endif |
---|
45 | 75 | |
---|
46 | 76 | config ARCH_NEEDS_CPU_IDLE_COUPLED |
---|