Commit f70d3e

2025-06-12 13:30:10 deseven: -/-
/dev/null .. Guides/C-States.md
@@ 0,0 1,28 @@
+ # C-States
+
+ ### Problem
+ When running Linux, especially older 6.x kernels, you might find that the CPU doesn't use C-states below C1, constantly running on higher frequences and eating power.
+
+ ### Solution
+ For some reason I couldn't make it work with either `acpi_cpufreq` or `amd_pstate`, but [CoreFreq](https://github.com/cyring/CoreFreq) turned out to be a perfect solution once again.
+
+ Assuming that you already have it installed and working (otherwise check [[this guide|Guides/Hardware-Monitoring]] first):
+
+ ```bash
+ # /etc/kernel/cmdline
+ ... initcall_blacklist=acpi_cpufreq_init nmi_watchdog=0 idle=halt amd_pstate=disable tsc=unstable nowatchdog
+ ```
+
+ ```bash
+ # /etc/modprobe.d/blacklist.conf
+ k10temp
+ acpi_cpufreq
+ rapl
+ ```
+
+ ```bash
+ # /etc/modprobe.d/corefreqk.conf
+ options corefreqk Register_ClockSource=1 Register_CPU_Freq=1 Register_Governor=1 Register_CPU_Idle=1 Override_SubCstate="1,1,1,1,1,1,0,0"
+ ```
+
+ Don't forget to do `update-initramfs -u -k all` after changing kernel's cmdline.
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9