Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge back cpufreq material for v5.8.

+21 -14
+19 -13
Documentation/admin-guide/pm/intel_pstate.rst
··· 62 62 Active Mode 63 63 ----------- 64 64 65 - This is the default operation mode of ``intel_pstate``. If it works in this 66 - mode, the ``scaling_driver`` policy attribute in ``sysfs`` for all ``CPUFreq`` 67 - policies contains the string "intel_pstate". 65 + This is the default operation mode of ``intel_pstate`` for processors with 66 + hardware-managed P-states (HWP) support. If it works in this mode, the 67 + ``scaling_driver`` policy attribute in ``sysfs`` for all ``CPUFreq`` policies 68 + contains the string "intel_pstate". 68 69 69 70 In this mode the driver bypasses the scaling governors layer of ``CPUFreq`` and 70 71 provides its own scaling algorithms for P-state selection. Those algorithms ··· 139 138 Active Mode Without HWP 140 139 ~~~~~~~~~~~~~~~~~~~~~~~ 141 140 142 - This is the default operation mode for processors that do not support the HWP 143 - feature. It also is used by default with the ``intel_pstate=no_hwp`` argument 144 - in the kernel command line. However, in this mode ``intel_pstate`` may refuse 145 - to work with the given processor if it does not recognize it. [Note that 146 - ``intel_pstate`` will never refuse to work with any processor with the HWP 147 - feature enabled.] 141 + This operation mode is optional for processors that do not support the HWP 142 + feature or when the ``intel_pstate=no_hwp`` argument is passed to the kernel in 143 + the command line. The active mode is used in those cases if the 144 + ``intel_pstate=active`` argument is passed to the kernel in the command line. 145 + In this mode ``intel_pstate`` may refuse to work with processors that are not 146 + recognized by it. [Note that ``intel_pstate`` will never refuse to work with 147 + any processor with the HWP feature enabled.] 148 148 149 149 In this mode ``intel_pstate`` registers utilization update callbacks with the 150 150 CPU scheduler in order to run a P-state selection algorithm, either ··· 190 188 Passive Mode 191 189 ------------ 192 190 193 - This mode is used if the ``intel_pstate=passive`` argument is passed to the 194 - kernel in the command line (it implies the ``intel_pstate=no_hwp`` setting too). 195 - Like in the active mode without HWP support, in this mode ``intel_pstate`` may 196 - refuse to work with the given processor if it does not recognize it. 191 + This is the default operation mode of ``intel_pstate`` for processors without 192 + hardware-managed P-states (HWP) support. It is always used if the 193 + ``intel_pstate=passive`` argument is passed to the kernel in the command line 194 + regardless of whether or not the given processor supports HWP. [Note that the 195 + ``intel_pstate=no_hwp`` setting implies ``intel_pstate=passive`` if it is used 196 + without ``intel_pstate=active``.] Like in the active mode without HWP support, 197 + in this mode ``intel_pstate`` may refuse to work with processors that are not 198 + recognized by it. 197 199 198 200 If the driver works in this mode, the ``scaling_driver`` policy attribute in 199 201 ``sysfs`` for all ``CPUFreq`` policies contains the string "intel_cpufreq".
+2 -1
drivers/cpufreq/intel_pstate.c
··· 2771 2771 pr_info("Invalid MSRs\n"); 2772 2772 return -ENODEV; 2773 2773 } 2774 + /* Without HWP start in the passive mode. */ 2775 + default_driver = &intel_cpufreq; 2774 2776 2775 2777 hwp_cpu_matched: 2776 2778 /* ··· 2818 2816 if (!strcmp(str, "disable")) { 2819 2817 no_load = 1; 2820 2818 } else if (!strcmp(str, "passive")) { 2821 - pr_info("Passive mode enabled\n"); 2822 2819 default_driver = &intel_cpufreq; 2823 2820 no_hwp = 1; 2824 2821 }