Processors fixed at 400 MHz, as of a few days ago, for no apparent reason

So I’ve got a good one here.

12th Gen FW13.

Had it for about 2.5 years.

Only problem ever had been it gets hot - 100C - when running under load, and the fan of course goes bananas, and I in the past did work with thermald to address this, which after a year or more stopped working, and then I moved to simply capping the same CPU freq to 2.0 GHz.

Now I have a completely new problem, and seemingly from out of nowhere - but it is something I suspect has in fact occasionally been happening for a little while, but then going away.

The problem is that all processors are running at and only at 400 MHz.

What’s more, I think this is happening from the moment the laptop powers up, because booting is slow. This isn’t the OS messing things up after boot.

The upshot of this is performance is sluggish - browsers take a long time to start, XFCE is slow opening windows, video doesn’t play at full speed, frame rate in WoW is about 30 instead of 120, etc.

(After I moved away from thermald to CPU max freq limiting, I noticed in WoW that occasionally the frame rate would drop down to about 30 or so, and then after a while go back to normal. I think now this was the CPU going down to 400 MHz.)

I’ve been playing around with various configuration options, in Linux and in the BIOS, no luck so far.

In Linux, I can use cpupower frequency-set to set min and max to 2.1 GHz, but the processor stays at 400 MHz - some sort of power state over-ride, maybe?

I turned off SpeedShift in the BIOS, and so then had acpi-powersave rather than intel_pstate, and behavour was unchanged.

I’ve just been playing around with cpupower, and disabled all idle states, and that seemed indeed to disable all idle states, but frequency remains at 400 MHz (and ths is with min and max set to 2.1 GHz, and setting max only used to work - I have been using it for some time to keep the processor temp down.)

Have also just tried disabling both speed step and speed shift in BIOS. This left me with no scaling driver, and the processors - well - four of them running at 2.1 GHZ and the other eight at 400 MHz, but the four at 2.1 being 0, 1, 2 and 11… which is not expected. In any event, performance remained unchanged, so either I have misdiagnosed the problem (and the problem is not processor speed) or in fact the cores are not really running at 2.1, or only the 400 MHz cores were in use. Messy picture / situation…

I’ve seen this 400MHz cap when I set cpupower to turn fans on in a temperature range that a past Intel Core i7 (6th gen, Broadwell) was already throttling itself.

After a couple of years of use, maybe your thermal paste needs to be refreshed, and maybe the heatsink vanes and fan need to be cleaned or the heatsink assembly replaced.

K3n.

So, fixed it. Tried all kinds of different things, for about four hours, nothing.

Then opened up the case, and popped the CMOS battery.

Gave it 30s, put it back.

Also hoovered out the case and the fan, but there was hardly any dust I could see, even after all this time.

Bizarrely, CMOS settings were not lost - they were unchanged - but problem has gone away and clock speed back to normal.