Page 1 of 1

1st Generation Intel Core CPU frequency Scaling in Linux

Posted: Sun Jun 15, 2025 1:45 pm
by GiGaBiTe
There exists a bug/oversight in the Linux kernel regarding 1st generation Core i3/i5/i7 series processors where frequency scaling in Linux doesn't work because the intel-pstate driver doesn't support the aforementioned processors. It's a rather strange problem because the Core 2 series before it and the 2nd gen Sandy Bridge CPUs after it are unaffected.

The fix for this involves two settings changes. The first of which is to go into the motherboard BIOS/UEFI and make sure that SpeedStep or EIST is enabled. Different vendors call this feature different things, so I can't give you a specific setting name, it will just be something in the realm of those two settings. Some motherboard vendors have an "auto" setting, this should not be used if possible, because the Linux kernel doesn't tell the BIOS explicitly to enable it, you should always use the "enable" or "on" option for those settings.

The second involves modifying the bootloader to change the kernel boot arguments. In Fedora, you need to edit /boot/grub2/grub.cfg.

In the file, look for the following string:

Code: Select all

if [ -z "${kernelopts}" ]; then
The line below this will contain the kernel boot arguments. At the end, append the following:

Code: Select all

intel_pstate=disable
And save the file. After this, run:

Code: Select all

grub2-mkconfig -o /boot/grub2/grub.cfg
Once a new grub config is generated, reboot the system and the kernel should fall back to the older acpi-cpufreq plugin. If it still doesn't work, go back into the grub.cfg file and append "acpi=force" after the above line and regenerate the grub configuration again.

If frequency scaling still doesn't work, you may have a motherboard with broken ACPI, which is unfortunately not fixable. You can try and update the BIOS on your motherboard if you're not running the latest, but more likely than not, it will not fix the problem and you'll have to live with the CPU running at whatever frequency the motherboard is telling it to.