2

Here I got a strange problem with my ThinkPad X200.

This notebook uses Intel(R) Core(TM)2 Duo CPU P8600, which has a designed frequency of 2.4GHz. When I use battery only, the maximum scaling frequency can be 2.4GHz, HOWEVER, when I insert the AC adapter, the frequency is limited to 1.6GHz.

The problem still exists even I have disabled cpufreqd, and forced the governor to performance.

That's so weird! Would anybody have an idea?

P.S. My kernel version is 4.19.5.

Akura Ryu
  • 31
  • 1
  • 4

3 Answers3

1

Yeah, no one cares my problem, that's a tremendous pity.

However, luckily, I lave found a solution to deal with it!

What limits the CPU's maximum frequency? BIOS!

The file /sys/devices/system/cpu/cpu*/cpufreq/bios_limit tells the limitation value of BIOS.

On condition that performance governor is activated, when I use battery only, the value of bios_limit is 2400000, the maximum of the hardware. However, when I connect AC adapter, this value will soon lower to 1600000.

By default, Linux's governor follows bios_limit, so the problem occurs. But we can let Linux to ignore it, and don't let the maximum frequency stucks. Just set ignore_ppc to 1.

echo 1 | sudo tee /sys/module/processor/parameters/ignore_ppc

And modify /etc/default/grub to automatically set ignore_ppc on reboot. Open it with root privilege, attach processor.ignore_ppc=1 to GRUB_CMDLINE_LINUX_DEFAULT, just like this:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash processor.ignore_ppc=1"

then run:

sudo update-grub

and reboot.

References:

Akura Ryu
  • 31
  • 1
  • 4
1

TLP would come handy in such situations

sudo apt-get install tlp

And check the config file /etc/tlp.conf or tlpui graphical interface

which might give you a clearer idea on your cpu performance limits under AC/BAT

#CPU_SCALING_MAX_FREQ_ON_AC 
#CPU_MAX_PERF_ON_AC
#CPU_SCALING_GOVERNOR_ON_AC
#CPU_BOOST_ON_AC
...
muru
  • 207,228
rz1027
  • 11
0

It seems to be an option in BIOS. according to this image: BIOS of ThinkPad X200

I hope i help you. Best regards.

Santi
  • 129
  • 6