From 661d608788c51d15990bb844862387968ca4e394 Mon Sep 17 00:00:00 2001 From: RGBCube Date: Wed, 11 Jun 2025 23:44:45 +0300 Subject: [PATCH] config: add default --- config.toml | 110 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 109 insertions(+), 1 deletion(-) diff --git a/config.toml b/config.toml index 04159cd..a89f807 100644 --- a/config.toml +++ b/config.toml @@ -1,3 +1,111 @@ +# Watt Default Configuration + +# Rules are evaluated by priority (higher number => higher priority). +# Each rule can specify conditions and actions for CPU and power management. + +# Emergency thermal protection (highest priority). +[[rule]] +priority = 100 +if = { value = "$cpu-temperature", is-more-than = 85.0 } +cpu.governor = "powersave" +cpu.energy-performance-preference = "power" +cpu.frequency-mhz-maximum = 2000 +cpu.turbo = false + +# Critical battery preservation. +[[rule]] +priority = 90 +if.all = [ + "?discharging", + { value = "%power-supply-charge", is-less-than = 0.3 }, +] +cpu.governor = "powersave" +cpu.energy-performance-preference = "power" +cpu.frequency-mhz-maximum = 800 # More aggressive below critical threshold. +cpu.turbo = false +power.platform-profile = "low-power" + +# High performance mode for sustained high load. +[[rule]] +priority = 80 +if.all = [ + { value = "%cpu-usage", is-more-than = 0.8 }, + { value = "$cpu-idle-seconds", is-less-than = 30.0 }, + { value = "$cpu-temperature", is-less-than = 75.0 }, +] +cpu.governor = "performance" +cpu.energy-performance-preference = "performance" +cpu.turbo = true + +# Performance mode when charging. +[[rule]] +priority = 70 +if.all = [ + "?charging", + { value = "%cpu-usage", is-more-than = 0.1 }, + { value = "$cpu-temperature", is-less-than = 80.0 }, +] +cpu.governor = "performance" +cpu.energy-performance-preference = "performance" +cpu.energy-performance-bias = "balance_performance" +cpu.turbo = true + +# Moderate performance for medium load. +[[rule]] +priority = 60 +if.all = [ + { value = "%cpu-usage", is-more-than = 0.4 }, + { value = "%cpu-usage", is-less-than = 0.8 }, +] +cpu.governor = "schedutil" +cpu.energy-performance-preference = "balance_performance" + +# Power saving during low activity. +[[rule]] +priority = 50 +if.all = [ + { value = "%cpu-usage", is-less-than = 0.2 }, + { value = "$cpu-idle-seconds", is-more-than = 60.0 }, +] +cpu.governor = "powersave" +cpu.energy-performance-preference = "power" +cpu.turbo = false + +# Extended idle power optimization. +[[rule]] +priority = 40 +if = { value = "$cpu-idle-seconds", is-more-than = 300.0 } +cpu.governor = "powersave" +cpu.energy-performance-preference = "power" +cpu.frequency-mhz-maximum = 1600 +cpu.turbo = false + +# Battery conservation when discharging. +[[rule]] +priority = 30 +if.all = [ + "?discharging", + { value = "%power-supply-charge", is-less-than = 0.5 }, +] +cpu.governor = "powersave" +cpu.energy-performance-preference = "power" +cpu.frequency-mhz-maximum = 2000 +cpu.turbo = false +power.platform-profile = "low-power" + +# General battery mode. +[[rule]] +priority = 20 +if = "?discharging" +cpu.governor = "powersave" +cpu.energy-performance-preference = "power" +cpu.energy-performance-bias = "balance_power" +cpu.frequency-mhz-maximum = 1800 +cpu.frequency-mhz-minimum = 200 +cpu.turbo = false + +# Balanced performance for general use. Default fallback rule. [[rule]] priority = 0 -if = { value = "%cpu-usage", is-more-than = 0.7 } +cpu.governor = "schedutil" +cpu.energy-performance-preference = "balance_performance"