mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v2 0/2] ARM: configs: Enable the TEO cpuidle governor in multi-platform defconfigs
@ 2026-11-05 12:10 Linus Walleij
  2026-11-05 12:10 ` [PATCH v2 1/2] ARM: configs: multi_v5: Enable the TEO cpuidle governor Linus Walleij
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Linus Walleij @ 2026-11-05 12:10 UTC (permalink / raw)
  To: Russell King, Rafael J. Wysocki, Daniel Lezcano, Ulf Hansson,
	Anna-Maria Behnsen, Frederic Weisbecker, Ingo Molnar,
	Thomas Gleixner, Arnd Bergmann, Krzysztof Kozlowski,
	Alexandre Belloni, Linus Walleij
  Cc: linux-arm-kernel, linux-kernel

Enable the Timer Events Oriented (TEO) cpuidle governor in the ARM
multi_v5 and multi_v7 defconfigs.

The upsides of the TEO governor are described in
commit b26bf6ab716f27955e2a503ffca1691582127cbb
"cpuidle: New timer events oriented governor for tickless systems"
by Rafael.

We need to gain some traction for this governor.

Both defconfigs already enable CPU_IDLE and NO_HZ_IDLE. Selecting
CPU_IDLE_GOV_TEO suppresses Kconfig's automatic menu selection, so TEO
becomes the default governor on these tickless configurations.

Leave multi_v4t_defconfig unchanged. It uses periodic ticks, which
select the ladder governor and give it a higher runtime rating than
TEO. Enabling TEO alone would not make it the default.

Configuration generation was checked for both patches. No hardware
runtime testing was performed.

Prepared with OpenAI Codex assistance.

Signed-off-by: Linus Walleij <linusw@kernel.org>
---
Changes in v2:
- Explain the TEO selection rationale in both patch changelogs.
- Link to v1: https://patch.msgid.link/20261104-multi-timers-cpufreq-cpuidle-v1-0-c7fd14706715@kernel.org

---
Linus Walleij (2):
      ARM: configs: multi_v5: Enable the TEO cpuidle governor
      ARM: configs: multi_v7: Enable the TEO cpuidle governor

 arch/arm/configs/multi_v5_defconfig | 1 +
 arch/arm/configs/multi_v7_defconfig | 1 +
 2 files changed, 2 insertions(+)
---
base-commit: 6628e7d4c6b25c8d18f1345e3a20d21829aae7e4
change-id: 20261104-multi-timers-cpufreq-cpuidle-5da23033d9bf

Best regards,
--  
Linus Walleij <linusw@kernel.org>


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v2 1/2] ARM: configs: multi_v5: Enable the TEO cpuidle governor
  2026-11-05 12:10 [PATCH v2 0/2] ARM: configs: Enable the TEO cpuidle governor in multi-platform defconfigs Linus Walleij
@ 2026-11-05 12:10 ` Linus Walleij
  2026-11-05 16:44   ` Krzysztof Kozlowski
  2026-11-05 12:10 ` [PATCH v2 2/2] ARM: configs: multi_v7: " Linus Walleij
  2026-11-05 15:40 ` [PATCH v2 0/2] ARM: configs: Enable the TEO cpuidle governor in multi-platform defconfigs Daniel Lezcano
  2 siblings, 1 reply; 6+ messages in thread
From: Linus Walleij @ 2026-11-05 12:10 UTC (permalink / raw)
  To: Russell King, Rafael J. Wysocki, Daniel Lezcano, Ulf Hansson,
	Anna-Maria Behnsen, Frederic Weisbecker, Ingo Molnar,
	Thomas Gleixner, Arnd Bergmann, Krzysztof Kozlowski,
	Alexandre Belloni, Linus Walleij
  Cc: linux-arm-kernel, linux-kernel

The TEO governor introduced in commit b26bf6ab716f ("cpuidle: New
timer events oriented governor for tickless systems") takes a different
approach to idle-state prediction from menu. The governor gives a
better behaviour than the current default for tickless idle systems,
and for the multi-platform configs that enable tickless idle, this
should be the default governor.

multi_v5_defconfig already enables CPU_IDLE and NO_HZ_IDLE. Selecting
CPU_IDLE_GOV_TEO suppresses Kconfig's automatic menu selection, making
TEO the default governor for this tickless configuration.

Signed-off-by: Linus Walleij <linusw@kernel.org>
---
 arch/arm/configs/multi_v5_defconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/configs/multi_v5_defconfig b/arch/arm/configs/multi_v5_defconfig
index a0d2fb2fcf9a..5e5c3dba1d72 100644
--- a/arch/arm/configs/multi_v5_defconfig
+++ b/arch/arm/configs/multi_v5_defconfig
@@ -34,6 +34,7 @@ CONFIG_CPU_FREQ=y
 CONFIG_CPU_FREQ_STAT=y
 CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
 CONFIG_CPU_IDLE=y
+CONFIG_CPU_IDLE_GOV_TEO=y
 CONFIG_ARM_KIRKWOOD_CPUIDLE=y
 CONFIG_KPROBES=y
 CONFIG_MODULES=y

-- 
2.56.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v2 2/2] ARM: configs: multi_v7: Enable the TEO cpuidle governor
  2026-11-05 12:10 [PATCH v2 0/2] ARM: configs: Enable the TEO cpuidle governor in multi-platform defconfigs Linus Walleij
  2026-11-05 12:10 ` [PATCH v2 1/2] ARM: configs: multi_v5: Enable the TEO cpuidle governor Linus Walleij
@ 2026-11-05 12:10 ` Linus Walleij
  2026-11-05 16:44   ` Krzysztof Kozlowski
  2026-11-05 15:40 ` [PATCH v2 0/2] ARM: configs: Enable the TEO cpuidle governor in multi-platform defconfigs Daniel Lezcano
  2 siblings, 1 reply; 6+ messages in thread
From: Linus Walleij @ 2026-11-05 12:10 UTC (permalink / raw)
  To: Russell King, Rafael J. Wysocki, Daniel Lezcano, Ulf Hansson,
	Anna-Maria Behnsen, Frederic Weisbecker, Ingo Molnar,
	Thomas Gleixner, Arnd Bergmann, Krzysztof Kozlowski,
	Alexandre Belloni, Linus Walleij
  Cc: linux-arm-kernel, linux-kernel

The TEO governor introduced in commit b26bf6ab716f ("cpuidle: New
timer events oriented governor for tickless systems") takes a different
approach to idle-state prediction from menu. The governor gives a
better behaviour than the current default for tickless idle systems,
and for the multi-platform configs that enable tickless idle, this
should be the default governor.

multi_v7_defconfig already enables CPU_IDLE and NO_HZ_IDLE. Selecting
CPU_IDLE_GOV_TEO suppresses Kconfig's automatic menu selection, making
TEO the default governor for this tickless configuration.

Signed-off-by: Linus Walleij <linusw@kernel.org>
---
 arch/arm/configs/multi_v7_defconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v7_defconfig
index 069d5a49f01c..b583c5db8210 100644
--- a/arch/arm/configs/multi_v7_defconfig
+++ b/arch/arm/configs/multi_v7_defconfig
@@ -121,6 +121,7 @@ CONFIG_ARM_RASPBERRYPI_CPUFREQ=y
 CONFIG_ARM_SCMI_CPUFREQ=y
 CONFIG_QORIQ_CPUFREQ=y
 CONFIG_CPU_IDLE=y
+CONFIG_CPU_IDLE_GOV_TEO=y
 CONFIG_ARM_CPUIDLE=y
 CONFIG_ARM_PSCI_CPUIDLE=y
 CONFIG_ARM_ZYNQ_CPUIDLE=y

-- 
2.56.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v2 0/2] ARM: configs: Enable the TEO cpuidle governor in multi-platform defconfigs
  2026-11-05 12:10 [PATCH v2 0/2] ARM: configs: Enable the TEO cpuidle governor in multi-platform defconfigs Linus Walleij
  2026-11-05 12:10 ` [PATCH v2 1/2] ARM: configs: multi_v5: Enable the TEO cpuidle governor Linus Walleij
  2026-11-05 12:10 ` [PATCH v2 2/2] ARM: configs: multi_v7: " Linus Walleij
@ 2026-11-05 15:40 ` Daniel Lezcano
  2 siblings, 0 replies; 6+ messages in thread
From: Daniel Lezcano @ 2026-11-05 15:40 UTC (permalink / raw)
  To: Linus Walleij, Russell King, Rafael J. Wysocki, Daniel Lezcano,
	Ulf Hansson, Anna-Maria Behnsen, Frederic Weisbecker,
	Ingo Molnar, Thomas Gleixner, Arnd Bergmann, Krzysztof Kozlowski,
	Alexandre Belloni
  Cc: linux-arm-kernel, linux-kernel

On 11/5/26 13:10, Linus Walleij wrote:
> Enable the Timer Events Oriented (TEO) cpuidle governor in the ARM
> multi_v5 and multi_v7 defconfigs.
> 
> The upsides of the TEO governor are described in
> commit b26bf6ab716f27955e2a503ffca1691582127cbb
> "cpuidle: New timer events oriented governor for tickless systems"
> by Rafael.
> 
> We need to gain some traction for this governor.
> 
> Both defconfigs already enable CPU_IDLE and NO_HZ_IDLE. Selecting
> CPU_IDLE_GOV_TEO suppresses Kconfig's automatic menu selection, so TEO
> becomes the default governor on these tickless configurations.
> 
> Leave multi_v4t_defconfig unchanged. It uses periodic ticks, which
> select the ladder governor and give it a higher runtime rating than
> TEO. Enabling TEO alone would not make it the default.
> 
> Configuration generation was checked for both patches. No hardware
> runtime testing was performed.
> 
> Prepared with OpenAI Codex assistance.
> 
> Signed-off-by: Linus Walleij <linusw@kernel.org>

Reviewed-by: Daniel Lezcano <daniel.lezcano@oss.qualcomm.com>



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v2 1/2] ARM: configs: multi_v5: Enable the TEO cpuidle governor
  2026-11-05 12:10 ` [PATCH v2 1/2] ARM: configs: multi_v5: Enable the TEO cpuidle governor Linus Walleij
@ 2026-11-05 16:44   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 6+ messages in thread
From: Krzysztof Kozlowski @ 2026-11-05 16:44 UTC (permalink / raw)
  To: Linus Walleij, Russell King, Rafael J. Wysocki, Daniel Lezcano,
	Ulf Hansson, Anna-Maria Behnsen, Frederic Weisbecker,
	Ingo Molnar, Thomas Gleixner, Arnd Bergmann, Alexandre Belloni
  Cc: linux-arm-kernel, linux-kernel

On 05/11/2026 13:10, Linus Walleij wrote:
> The TEO governor introduced in commit b26bf6ab716f ("cpuidle: New
> timer events oriented governor for tickless systems") takes a different
> approach to idle-state prediction from menu. The governor gives a
> better behaviour than the current default for tickless idle systems,
> and for the multi-platform configs that enable tickless idle, this
> should be the default governor.
> 
> multi_v5_defconfig already enables CPU_IDLE and NO_HZ_IDLE. Selecting
> CPU_IDLE_GOV_TEO suppresses Kconfig's automatic menu selection, making
> TEO the default governor for this tickless configuration.
> 
> Signed-off-by: Linus Walleij <linusw@kernel.org>
> ---
>  arch/arm/configs/multi_v5_defconfig | 1 +
>  1 file changed, 1 insertion(+)

Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v2 2/2] ARM: configs: multi_v7: Enable the TEO cpuidle governor
  2026-11-05 12:10 ` [PATCH v2 2/2] ARM: configs: multi_v7: " Linus Walleij
@ 2026-11-05 16:44   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 6+ messages in thread
From: Krzysztof Kozlowski @ 2026-11-05 16:44 UTC (permalink / raw)
  To: Linus Walleij, Russell King, Rafael J. Wysocki, Daniel Lezcano,
	Ulf Hansson, Anna-Maria Behnsen, Frederic Weisbecker,
	Ingo Molnar, Thomas Gleixner, Arnd Bergmann, Alexandre Belloni
  Cc: linux-arm-kernel, linux-kernel

On 05/11/2026 13:10, Linus Walleij wrote:
> The TEO governor introduced in commit b26bf6ab716f ("cpuidle: New
> timer events oriented governor for tickless systems") takes a different
> approach to idle-state prediction from menu. The governor gives a
> better behaviour than the current default for tickless idle systems,
> and for the multi-platform configs that enable tickless idle, this
> should be the default governor.
> 
> multi_v7_defconfig already enables CPU_IDLE and NO_HZ_IDLE. Selecting
> CPU_IDLE_GOV_TEO suppresses Kconfig's automatic menu selection, making
> TEO the default governor for this tickless configuration.
> 
> Signed-off-by: Linus Walleij <linusw@kernel.org>


Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2026-11-05 16:44 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-11-05 12:10 [PATCH v2 0/2] ARM: configs: Enable the TEO cpuidle governor in multi-platform defconfigs Linus Walleij
2026-11-05 12:10 ` [PATCH v2 1/2] ARM: configs: multi_v5: Enable the TEO cpuidle governor Linus Walleij
2026-11-05 16:44   ` Krzysztof Kozlowski
2026-11-05 12:10 ` [PATCH v2 2/2] ARM: configs: multi_v7: " Linus Walleij
2026-11-05 16:44   ` Krzysztof Kozlowski
2026-11-05 15:40 ` [PATCH v2 0/2] ARM: configs: Enable the TEO cpuidle governor in multi-platform defconfigs Daniel Lezcano

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®