Permanently setting intel pstate driver to "passive"
You can force the intel_pstate CPU frequency scaling driver to startup as the intel_cpufreq driver (A.K.A. intel_pstate in passive mode) via the kernel command line. You can select the desired CPU frequency scaling governor the same way.
Edit /etc/default/grub
and change the GRUB_CMDLINE_LINUX_DEFAULT
to include what is desired by adding directives to what is already there.
GRUB_CMDLINE_LINUX_DEFAULT="intel_pstate=passive cpufreq.default_governor=schedutil"
Remember to do sudo update-grub
afterwards, and save the copy of grub before editing.
Now, Ubuntu also has a service that might override the desired governor, setting it to ondemand. It can be disabled:
sudo systemctl disable ondemand
I also prefer to disable HWP (HardWare Pstate) control so my actual grub command line is:
GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 consoleblank=450 intel_pstate=passive intel_pstate=no_hwp cpufreq.default_governor=schedutil msr.allow_writes=on cpuidle.governor=teo"