#
# CPU Frequency scaling
#

menu "CPU Frequency scaling"

source "drivers/cpufreq/Kconfig"

if CPU_FREQ

comment "CPUFreq processor drivers"

config X86_ACPI_CPUFREQ
	tristate "ACPI Processor P-States driver"
	select CPU_FREQ_TABLE
	depends on ACPI_PROCESSOR
	help
	  This driver adds a CPUFreq driver which utilizes the ACPI
	  Processor Performance States.

	  For details, take a look at <file:Documentation/cpu-freq/>.

	  If in doubt, say N.

config ELAN_CPUFREQ
	tristate "AMD Elan SC400 and SC410"
	select CPU_FREQ_TABLE
	depends on X86_ELAN
	---help---
	  This adds the CPUFreq driver for AMD Elan SC400 and SC410
	  processors.

	  You need to specify the processor maximum speed as boot
	  parameter: elanfreq=maxspeed (in kHz) or as module
	  parameter "max_freq".

	  For details, take a look at <file:Documentation/cpu-freq/>.

	  If in doubt, say N.

config SC520_CPUFREQ
	tristate "AMD Elan SC520"
	select CPU_FREQ_TABLE
	depends on X86_ELAN
	---help---
	  This adds the CPUFreq driver for AMD Elan SC520 processor.

	  For details, take a look at <file:Documentation/cpu-freq/>.

	  If in doubt, say N.


config X86_POWERNOW_K6
	tristate "AMD Mobile K6-2/K6-3 PowerNow!"
	select CPU_FREQ_TABLE
	help
	  This adds the CPUFreq driver for mobile AMD K6-2+ and mobile
	  AMD K6-3+ processors.

	  For details, take a look at <file:Documentation/cpu-freq/>.

	  If in doubt, say N.

config X86_POWERNOW_K7
	tristate "AMD Mobile Athlon/Duron PowerNow!"
	select CPU_FREQ_TABLE
	help
	  This adds the CPUFreq driver for mobile AMD K7 mobile processors.

	  For details, take a look at <file:Documentation/cpu-freq/>.

	  If in doubt, say N.

config X86_POWERNOW_K7_ACPI
	bool
	depends on X86_POWERNOW_K7 && ACPI_PROCESSOR
	depends on !(X86_POWERNOW_K7 = y && ACPI_PROCESSOR = m)
	default y

config X86_POWERNOW_K8
	tristate "AMD Opteron/Athlon64 PowerNow!"
	select CPU_FREQ_TABLE
	depends on EXPERIMENTAL
	help
	  This adds the CPUFreq driver for mobile AMD Opteron/Athlon64 processors.

	  For details, take a look at <file:Documentation/cpu-freq/>.

	  If in doubt, say N.

config X86_POWERNOW_K8_ACPI
	bool
	depends on X86_POWERNOW_K8 && ACPI_PROCESSOR
	depends on !(X86_POWERNOW_K8 = y && ACPI_PROCESSOR = m)
	default y

config X86_GX_SUSPMOD
	tristate "Cyrix MediaGX/NatSemi Geode Suspend Modulation"
	help
	 This add the CPUFreq driver for NatSemi Geode processors which
	 support suspend modulation.

	 For details, take a look at <file:Documentation/cpu-freq/>.

	 If in doubt, say N.

config X86_SPEEDSTEP_CENTRINO
	tristate "Intel Enhanced SpeedStep"
	select CPU_FREQ_TABLE
	select X86_SPEEDSTEP_CENTRINO_TABLE if (!X86_SPEEDSTEP_CENTRINO_ACPI)
	help
	  This adds the CPUFreq driver for Enhanced SpeedStep enabled
	  mobile CPUs.  This means Intel Pentium M (Centrino) CPUs. However,
	  you also need to say Y to "Use ACPI tables to decode..." below
	  [which might imply enabling ACPI] if you want to use this driver
	  on non-Banias CPUs.
	  
	  For details, take a look at <file:Documentation/cpu-freq/>.
	  
	  If in doubt, say N.

config X86_SPEEDSTEP_CENTRINO_ACPI
	bool "Use ACPI tables to decode valid frequency/voltage pairs"
	depends on X86_SPEEDSTEP_CENTRINO && ACPI_PROCESSOR
	depends on !(X86_SPEEDSTEP_CENTRINO = y && ACPI_PROCESSOR = m)
	default y
	help
	  Use primarily the information provided in the BIOS ACPI tables
	  to determine valid CPU frequency and voltage pairings. It is
	  required for the driver to work on non-Banias CPUs.

	  If in doubt, say Y.

config X86_SPEEDSTEP_CENTRINO_TABLE
	bool "Built-in tables for Banias CPUs"
	depends on X86_SPEEDSTEP_CENTRINO
	default y
	help
	  Use built-in tables for Banias CPUs if ACPI encoding
	  is not available.

	  If in doubt, say N.

config X86_SPEEDSTEP_ICH
	tristate "Intel Speedstep on ICH-M chipsets (ioport interface)"
	select CPU_FREQ_TABLE
	help
	  This adds the CPUFreq driver for certain mobile Intel Pentium III
	  (Coppermine), all mobile Intel Pentium III-M (Tualatin) and all
	  mobile Intel Pentium 4 P4-M on systems which have an Intel ICH2, 
	  ICH3 or ICH4 southbridge.

	  For details, take a look at <file:Documentation/cpu-freq/>.

	  If in doubt, say N.

config X86_SPEEDSTEP_SMI
	tristate "Intel SpeedStep on 440BX/ZX/MX chipsets (SMI interface)"
	select CPU_FREQ_TABLE
	depends on EXPERIMENTAL
	help
	  This adds the CPUFreq driver for certain mobile Intel Pentium III
	  (Coppermine), all mobile Intel Pentium III-M (Tualatin)  
	  on systems which have an Intel 440BX/ZX/MX southbridge.

	  For details, take a look at <file:Documentation/cpu-freq/>.

	  If in doubt, say N.

config X86_P4_CLOCKMOD
	tristate "Intel Pentium 4 clock modulation"
	select CPU_FREQ_TABLE
	help
	  This adds the CPUFreq driver for Intel Pentium 4 / XEON
	  processors.

	  For details, take a look at <file:Documentation/cpu-freq/>.

	  If in doubt, say N.

config X86_CPUFREQ_NFORCE2
	tristate "nVidia nForce2 FSB changing"
	depends on EXPERIMENTAL
	help
	  This adds the CPUFreq driver for FSB changing on nVidia nForce2
	  platforms.

	  For details, take a look at <file:Documentation/cpu-freq/>.

	  If in doubt, say N.

config X86_LONGRUN
	tristate "Transmeta LongRun"
	help
	  This adds the CPUFreq driver for Transmeta Crusoe and Efficeon processors
	  which support LongRun.

	  For details, take a look at <file:Documentation/cpu-freq/>.

	  If in doubt, say N.

config X86_LONGHAUL
	tristate "VIA Cyrix III Longhaul"
	select CPU_FREQ_TABLE
	help
	  This adds the CPUFreq driver for VIA Samuel/CyrixIII, 
	  VIA Cyrix Samuel/C3, VIA Cyrix Ezra and VIA Cyrix Ezra-T 
	  processors.

	  For details, take a look at <file:Documentation/cpu-freq/>.

	  If in doubt, say N.

comment "shared options"

config X86_ACPI_CPUFREQ_PROC_INTF
        bool "/proc/acpi/processor/../performance interface (deprecated)"
	depends on PROC_FS
	depends on X86_ACPI_CPUFREQ || X86_SPEEDSTEP_CENTRINO_ACPI || X86_POWERNOW_K7_ACPI || X86_POWERNOW_K8_ACPI
	help
	  This enables the deprecated /proc/acpi/processor/../performance 
	  interface. While it is helpful for debugging, the generic,
	  cross-architecture cpufreq interfaces should be used.

	  If in doubt, say N.

config X86_SPEEDSTEP_LIB
	tristate
	default X86_SPEEDSTEP_ICH || X86_SPEEDSTEP_SMI || X86_P4_CLOCKMOD

config X86_SPEEDSTEP_RELAXED_CAP_CHECK
	bool "Relaxed speedstep capability checks"
	depends on (X86_SPEEDSTEP_SMI || X86_SPEEDSTEP_ICH)
	help
	  Don't perform all checks for a speedstep capable system which would 
	  normally be done. Some ancient or strange systems, though speedstep 
	  capable, don't always indicate that they are speedstep capable. This 
	  option lets the probing code bypass some of those checks if the
	  parameter "relaxed_check=1" is passed to the module.

endif	# CPU_FREQ

endmenu
