Fedora kernel-2.6.17-1.2142_FC4 patched with stable patch-2.6.17.4-vs2.0.2-rc26.diff
[linux-2.6.git] / drivers / cpufreq / Kconfig
index 889f243..2cc71b6 100644 (file)
@@ -1,20 +1,59 @@
-config CPU_FREQ_PROC_INTF
-       tristate "/proc/cpufreq interface (deprecated)"
-       depends on CPU_FREQ && PROC_FS
+config CPU_FREQ
+       bool "CPU Frequency scaling"
        help
        help
-         This enables the /proc/cpufreq interface for controlling
-         CPUFreq. Please note that it is recommended to use the sysfs
-         interface instead (which is built automatically). 
-         
-         For details, take a look at <file:Documentation/cpu-freq/>.
-         
+         CPU Frequency scaling allows you to change the clock speed of 
+         CPUs on the fly. This is a nice method to save power, because 
+         the lower the CPU clock speed, the less power the CPU consumes.
+
+         Note that this driver doesn't automatically change the CPU
+         clock speed, you need to either enable a dynamic cpufreq governor
+         (see below) after boot, or use a userspace tool.
+
+         For details, take a look at <file:Documentation/cpu-freq>.
+
          If in doubt, say N.
 
          If in doubt, say N.
 
+if CPU_FREQ
+
+config CPU_FREQ_TABLE
+       def_tristate m
+
+config CPU_FREQ_DEBUG
+       bool "Enable CPUfreq debugging"
+       help
+         Say Y here to enable CPUfreq subsystem (including drivers)
+         debugging. You will need to activate it via the kernel
+         command line by passing
+            cpufreq.debug=<value>
+
+         To get <value>, add 
+              1 to activate CPUfreq core debugging,
+              2 to activate CPUfreq drivers debugging, and
+              4 to activate CPUfreq governor debugging
+
+config CPU_FREQ_STAT
+       tristate "CPU frequency translation statistics"
+       select CPU_FREQ_TABLE
+       default y
+       help
+         This driver exports CPU frequency statistics information through sysfs
+         file system
+
+config CPU_FREQ_STAT_DETAILS
+       bool "CPU frequency translation statistics details"
+       depends on CPU_FREQ_STAT
+       help
+         This will show detail CPU frequency translation table in sysfs file
+         system
+
+# Note that it is not currently possible to set the other governors (such as ondemand)
+# as the default, since if they fail to initialise, cpufreq will be
+# left in an undefined state.
+
 choice
        prompt "Default CPUFreq governor"
 choice
        prompt "Default CPUFreq governor"
-       depends on CPU_FREQ
-       default CPU_FREQ_DEFAULT_GOV_PERFORMANCE if !CPU_FREQ_SA1100 && !CPU_FREQ_SA1110
        default CPU_FREQ_DEFAULT_GOV_USERSPACE if CPU_FREQ_SA1100 || CPU_FREQ_SA1110
        default CPU_FREQ_DEFAULT_GOV_USERSPACE if CPU_FREQ_SA1100 || CPU_FREQ_SA1110
+       default CPU_FREQ_DEFAULT_GOV_PERFORMANCE
        help
          This option sets which CPUFreq governor shall be loaded at
          startup. If in doubt, select 'performance'.
        help
          This option sets which CPUFreq governor shall be loaded at
          startup. If in doubt, select 'performance'.
@@ -33,37 +72,34 @@ config CPU_FREQ_DEFAULT_GOV_USERSPACE
        help
          Use the CPUFreq governor 'userspace' as default. This allows
          you to set the CPU frequency manually or when an userspace 
        help
          Use the CPUFreq governor 'userspace' as default. This allows
          you to set the CPU frequency manually or when an userspace 
-         programm shall be able to set the CPU dynamically without having
+         program shall be able to set the CPU dynamically without having
          to enable the userspace governor manually.
 
 endchoice
 
 config CPU_FREQ_GOV_PERFORMANCE
        tristate "'performance' governor"
          to enable the userspace governor manually.
 
 endchoice
 
 config CPU_FREQ_GOV_PERFORMANCE
        tristate "'performance' governor"
-       depends on CPU_FREQ
        help
        help
-         This cpufreq governors set the frequency statically to the
+         This cpufreq governor sets the frequency statically to the
          highest available CPU frequency.
 
          If in doubt, say Y.
 
 config CPU_FREQ_GOV_POWERSAVE
        tristate "'powersave' governor"
          highest available CPU frequency.
 
          If in doubt, say Y.
 
 config CPU_FREQ_GOV_POWERSAVE
        tristate "'powersave' governor"
-       depends on CPU_FREQ
        help
        help
-         Theis cpufreq governors set the frequency statically to the
+         This cpufreq governor sets the frequency statically to the
          lowest available CPU frequency.
 
          If in doubt, say Y.
 
 config CPU_FREQ_GOV_USERSPACE
        tristate "'userspace' governor for userspace frequency scaling"
          lowest available CPU frequency.
 
          If in doubt, say Y.
 
 config CPU_FREQ_GOV_USERSPACE
        tristate "'userspace' governor for userspace frequency scaling"
-       depends on CPU_FREQ 
        help
          Enable this cpufreq governor when you either want to set the
        help
          Enable this cpufreq governor when you either want to set the
-         CPU frequency manually or when an userspace programm shall
-          be able to set the CPU dynamically, like on LART 
-         <http://www.lart.tudelft.nl/>
+         CPU frequency manually or when an userspace program shall
+         be able to set the CPU dynamically, like on LART 
+         <http://www.lartmaker.nl/>.
 
          For details, take a look at <file:Documentation/cpu-freq/>.
 
 
          For details, take a look at <file:Documentation/cpu-freq/>.
 
@@ -71,7 +107,6 @@ config CPU_FREQ_GOV_USERSPACE
 
 config CPU_FREQ_GOV_ONDEMAND
        tristate "'ondemand' cpufreq policy governor"
 
 config CPU_FREQ_GOV_ONDEMAND
        tristate "'ondemand' cpufreq policy governor"
-       depends on CPU_FREQ
        help
          'ondemand' - This driver adds a dynamic cpufreq policy governor.
          The governor does a periodic polling and 
        help
          'ondemand' - This driver adds a dynamic cpufreq policy governor.
          The governor does a periodic polling and 
@@ -84,16 +119,24 @@ config CPU_FREQ_GOV_ONDEMAND
 
          If in doubt, say N.
 
 
          If in doubt, say N.
 
-config CPU_FREQ_24_API
-       bool "/proc/sys/cpu/ interface (2.4. / OLD)"
-       depends on CPU_FREQ && SYSCTL && CPU_FREQ_GOV_USERSPACE
+config CPU_FREQ_GOV_CONSERVATIVE
+       tristate "'conservative' cpufreq governor"
+       depends on CPU_FREQ
        help
        help
-         This enables the /proc/sys/cpu/ sysctl interface for controlling
-         the CPUFreq,"userspace" governor. This is the same interface
-         as known from the 2.4.-kernel patches for CPUFreq, and offers
-         the same functionality as long as "userspace" is the
-         selected governor for the specified CPU.
-       
-         For details, take a look at <file:Documentation/cpu-freq/>.
+         'conservative' - this driver is rather similar to the 'ondemand'
+         governor both in its source code and its purpose, the difference is
+         its optimisation for better suitability in a battery powered
+         environment.  The frequency is gracefully increased and decreased
+         rather than jumping to 100% when speed is required.
+
+         If you have a desktop machine then you should really be considering
+         the 'ondemand' governor instead, however if you are using a laptop,
+         PDA or even an AMD64 based computer (due to the unacceptable
+         step-by-step latency issues between the minimum and maximum frequency
+         transitions in the CPU) you will probably want to use this governor.
+
+         For details, take a look at linux/Documentation/cpu-freq.
 
          If in doubt, say N.
 
          If in doubt, say N.
+
+endif  # CPU_FREQ