Update arch/ to use sg helpers
[safe/jmp/linux-2.6] / arch / i386 / Kconfig
index 0dfee81..f6e44fc 100644 (file)
@@ -18,6 +18,23 @@ config GENERIC_TIME
        bool
        default y
 
+config GENERIC_CMOS_UPDATE
+       bool
+       default y
+
+config CLOCKSOURCE_WATCHDOG
+       bool
+       default y
+
+config GENERIC_CLOCKEVENTS
+       bool
+       default y
+
+config GENERIC_CLOCKEVENTS_BROADCAST
+       bool
+       default y
+       depends on X86_LOCAL_APIC
+
 config LOCKDEP_SUPPORT
        bool
        default y
@@ -38,6 +55,14 @@ config MMU
        bool
        default y
 
+config ZONE_DMA
+       bool
+       default y
+
+config QUICKLIST
+       bool
+       default y
+
 config SBUS
        bool
 
@@ -70,6 +95,8 @@ source "init/Kconfig"
 
 menu "Processor type and features"
 
+source "kernel/time/Kconfig"
+
 config SMP
        bool "Symmetric multi-processing support"
        ---help---
@@ -119,6 +146,7 @@ config X86_ELAN
 
 config X86_VOYAGER
        bool "Voyager (NCR)"
+       select SMP if !BROKEN
        help
          Voyager is an MCA-based 32-way capable SMP architecture proprietary
          to NCR Corp.  Machine classes 345x/35xx/4100/51xx are Voyager-based.
@@ -187,6 +215,17 @@ config X86_ES7000
 
 endchoice
 
+config SCHED_NO_NO_OMIT_FRAME_POINTER
+       bool "Single-depth WCHAN output"
+       default y
+       help
+         Calculate simpler /proc/<PID>/wchan values. If this option
+         is disabled then wchan values will recurse back to the
+         caller function. This provides more accurate wchan values,
+         at the expense of slightly more scheduling overhead.
+
+         If in doubt, say "Y".
+
 config PARAVIRT
        bool "Paravirtualization support (EXPERIMENTAL)"
        depends on EXPERIMENTAL
@@ -199,6 +238,17 @@ config PARAVIRT
          However, when run without a hypervisor the kernel is
          theoretically slower.  If in doubt, say N.
 
+source "arch/x86/xen/Kconfig"
+
+config VMI
+       bool "VMI Paravirt-ops support"
+       depends on PARAVIRT
+       help
+         VMI provides a paravirtualized interface to the VMware ESX server
+         (it could be used by other hypervisors in theory too, but is not
+         at the moment), by linking the kernel to a GPL-ed ROM module
+         provided by the hypervisor.
+
 config ACPI_SRAT
        bool
        default y
@@ -342,7 +392,7 @@ config X86_MCE_NONFATAL
          will look at the machine check registers to see if anything happened.
          Non-fatal problems automatically get corrected (but still logged).
          Disable this if you don't want to see these messages.
-         Seeing the messages this option prints out may be indicative of dying hardware,
+         Seeing the messages this option prints out may be indicative of dying
          or out-of-spec (ie, overclocked) hardware.
          This option only does something on certain CPUs.
          (AMD Athlon/Duron and Intel Pentium 4)
@@ -409,8 +459,8 @@ config X86_REBOOTFIXUPS
          this config is intended, is when reboot ends with a stalled/hung
          system.
 
-         Currently, the only fixup is for the Geode GX1/CS5530A/TROM2.1.
-         combination.
+         Currently, the only fixup is for the Geode machines using
+         CS5530A and CS5536 chipsets.
 
          Say Y if you want to enable the fixup. Currently, it's safe to
          enable this option even if you don't need it.
@@ -420,8 +470,7 @@ config MICROCODE
        tristate "/dev/cpu/microcode - Intel IA32 CPU microcode support"
        select FW_LOADER
        ---help---
-         If you say Y here and also to "/dev file system support" in the
-         'File systems' section, you will be able to update the microcode on
+         If you say Y here, you will be able to update the microcode on
          Intel processors in the IA32 family, e.g. Pentium Pro, Pentium II,
          Pentium III, Pentium 4, Xeon etc.  You will obviously need the
          actual microcode binary data itself which is not shipped with the
@@ -509,7 +558,8 @@ config HIGHMEM4G
 
 config HIGHMEM64G
        bool "64GB"
-       depends on X86_CMPXCHG64
+       depends on !M386 && !M486
+       select X86_PAE
        help
          Select this if you have a 32-bit processor and more than 4
          gigabytes of physical RAM.
@@ -539,10 +589,13 @@ choice
        config VMSPLIT_3G
                bool "3G/1G user/kernel split"
        config VMSPLIT_3G_OPT
-               depends on !HIGHMEM
+               depends on !X86_PAE
                bool "3G/1G user/kernel split (for full 1G low memory)"
        config VMSPLIT_2G
                bool "2G/2G user/kernel split"
+       config VMSPLIT_2G_OPT
+               depends on !X86_PAE
+               bool "2G/2G user/kernel split (for full 2G low memory)"
        config VMSPLIT_1G
                bool "1G/3G user/kernel split"
 endchoice
@@ -550,7 +603,8 @@ endchoice
 config PAGE_OFFSET
        hex
        default 0xB0000000 if VMSPLIT_3G_OPT
-       default 0x78000000 if VMSPLIT_2G
+       default 0x80000000 if VMSPLIT_2G
+       default 0x78000000 if VMSPLIT_2G_OPT
        default 0x40000000 if VMSPLIT_1G
        default 0xC0000000
 
@@ -560,17 +614,26 @@ config HIGHMEM
        default y
 
 config X86_PAE
-       bool
-       depends on HIGHMEM64G
-       default y
+       bool "PAE (Physical Address Extension) Support"
+       default n
+       depends on !HIGHMEM4G
        select RESOURCES_64BIT
+       help
+         PAE is required for NX support, and furthermore enables
+         larger swapspace support for non-overcommit purposes. It
+         has the cost of more pagetable lookup overhead, and also
+         consumes more pagetable space per process.
 
 # Common NUMA Features
 config NUMA
-       bool "Numa Memory Allocation and Scheduler Support"
-       depends on SMP && HIGHMEM64G && (X86_NUMAQ || (X86_SUMMIT || X86_GENERICARCH) && ACPI)
+       bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)"
+       depends on SMP && HIGHMEM64G && (X86_NUMAQ || (X86_SUMMIT || X86_GENERICARCH) && ACPI) && EXPERIMENTAL
        default n if X86_PC
        default y if (X86_NUMAQ || X86_SUMMIT)
+       help
+         NUMA support for i386. This is currently highly experimental
+         and should be only used for kernel development. It might also
+         cause boot failures.
 
 comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI"
        depends on X86_SUMMIT && (!HIGHMEM64G || !ACPI)
@@ -656,7 +719,7 @@ config MATH_EMULATION
          intend to use this kernel on different machines.
 
          More information about the internals of the Linux math coprocessor
-         emulation can be found in <file:arch/i386/math-emu/README>.
+         emulation can be found in <file:arch/x86/math-emu/README>.
 
          If you are not sure, say Y; apart from resulting in a 66 KB bigger
          kernel, it won't hurt.
@@ -769,16 +832,18 @@ config CRASH_DUMP
        depends on HIGHMEM
        help
          Generate crash dump after being started by kexec.
-          This should be normally only set in special crash dump kernels
+         This should be normally only set in special crash dump kernels
          which are loaded in the main kernel with kexec-tools into
          a specially reserved region and then later executed after
          a crash by kdump/kexec. The crash dump kernel must be compiled
-          to a memory address not used by the main kernel or BIOS using
-          PHYSICAL_START.
+         to a memory address not used by the main kernel or BIOS using
+         PHYSICAL_START, or it must be built as a relocatable image
+         (CONFIG_RELOCATABLE=y).
          For more details see Documentation/kdump/kdump.txt
 
 config PHYSICAL_START
        hex "Physical address where the kernel is loaded" if (EMBEDDED || CRASH_DUMP)
+       default "0x1000000" if X86_NUMAQ
        default "0x100000"
        help
          This gives the physical address where the kernel is loaded.
@@ -819,17 +884,17 @@ config PHYSICAL_START
          Don't change this unless you know what you are doing.
 
 config RELOCATABLE
-       bool "Build a relocatable kernel(EXPERIMENTAL)"
+       bool "Build a relocatable kernel (EXPERIMENTAL)"
        depends on EXPERIMENTAL
        help
-         This build a kernel image that retains relocation information
-          so it can be loaded someplace besides the default 1MB.
-         The relocations tend to the kernel binary about 10% larger,
-          but are discarded at runtime.
+         This builds a kernel image that retains relocation information
+         so it can be loaded someplace besides the default 1MB.
+         The relocations tend to make the kernel binary about 10% larger,
+         but are discarded at runtime.
 
          One use is for the kexec on panic case where the recovery kernel
-          must live at a different physical address than the primary
-          kernel.
+         must live at a different physical address than the primary
+         kernel.
 
 config PHYSICAL_ALIGN
        hex "Alignment value to which kernel should be aligned"
@@ -855,7 +920,7 @@ config PHYSICAL_ALIGN
          Don't change this unless you know what you are doing.
 
 config HOTPLUG_CPU
-       bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
+       bool "Support for suspend on SMP and hot-pluggable CPUs (EXPERIMENTAL)"
        depends on SMP && HOTPLUG && EXPERIMENTAL && !X86_VOYAGER
        ---help---
          Say Y here to experiment with turning CPUs off and on, and to
@@ -865,7 +930,6 @@ config HOTPLUG_CPU
 config COMPAT_VDSO
        bool "Compat VDSO support"
        default y
-       depends on !PARAVIRT
        help
          Map the VDSO to the predictable old-style address too.
        ---help---
@@ -888,12 +952,9 @@ source kernel/power/Kconfig
 
 source "drivers/acpi/Kconfig"
 
-menu "APM (Advanced Power Management) BIOS Support"
-depends on PM && !X86_VISWS
-
-config APM
+menuconfig APM
        tristate "APM (Advanced Power Management) BIOS support"
-       depends on PM
+       depends on PM_SLEEP && !X86_VISWS
        ---help---
          APM is a BIOS specification for saving power using several different
          techniques. This is mostly useful for battery powered laptops with
@@ -950,9 +1011,10 @@ config APM
          To compile this driver as a module, choose M here: the
          module will be called apm.
 
+if APM
+
 config APM_IGNORE_USER_SUSPEND
        bool "Ignore USER SUSPEND"
-       depends on APM
        help
          This option will ignore USER SUSPEND requests. On machines with a
          compliant APM BIOS, you want to say N. However, on the NEC Versa M
@@ -960,7 +1022,6 @@ config APM_IGNORE_USER_SUSPEND
 
 config APM_DO_ENABLE
        bool "Enable PM at boot time"
-       depends on APM
        ---help---
          Enable APM features at boot time. From page 36 of the APM BIOS
          specification: "When disabled, the APM BIOS does not automatically
@@ -978,7 +1039,6 @@ config APM_DO_ENABLE
 
 config APM_CPU_IDLE
        bool "Make CPU Idle calls when idle"
-       depends on APM
        help
          Enable calls to APM CPU Idle/CPU Busy inside the kernel's idle loop.
          On some machines, this can activate improved power savings, such as
@@ -990,7 +1050,6 @@ config APM_CPU_IDLE
 
 config APM_DISPLAY_BLANK
        bool "Enable console blanking using APM"
-       depends on APM
        help
          Enable console blanking using the APM. Some laptops can use this to
          turn off the LCD backlight when the screen blanker of the Linux
@@ -1002,22 +1061,8 @@ config APM_DISPLAY_BLANK
          backlight at all, or it might print a lot of errors to the console,
          especially if you are using gpm.
 
-config APM_RTC_IS_GMT
-       bool "RTC stores time in GMT"
-       depends on APM
-       help
-         Say Y here if your RTC (Real Time Clock a.k.a. hardware clock)
-         stores the time in GMT (Greenwich Mean Time). Say N if your RTC
-         stores localtime.
-
-         It is in fact recommended to store GMT in your RTC, because then you
-         don't have to worry about daylight savings time changes. The only
-         reason not to use GMT in your RTC is if you also run a broken OS
-         that doesn't understand GMT.
-
 config APM_ALLOW_INTS
        bool "Allow interrupts during APM BIOS calls"
-       depends on APM
        help
          Normally we disable external interrupts while we are making calls to
          the APM BIOS as a measure to lessen the effects of a badly behaving
@@ -1028,15 +1073,16 @@ config APM_ALLOW_INTS
 
 config APM_REAL_MODE_POWER_OFF
        bool "Use real mode APM BIOS call to power off"
-       depends on APM
        help
          Use real mode APM BIOS calls to switch off the computer. This is
          a work-around for a number of buggy BIOSes. Switch this option on if
          your computer crashes instead of powering off properly.
 
-endmenu
+endif # APM
+
+source "arch/x86/kernel/cpu/cpufreq/Kconfig_32"
 
-source "arch/i386/kernel/cpu/cpufreq/Kconfig"
+source "drivers/cpuidle/Kconfig"
 
 endmenu
 
@@ -1046,6 +1092,7 @@ config PCI
        bool "PCI support" if !X86_VISWS
        depends on !X86_VOYAGER
        default y if X86_VISWS
+       select ARCH_SUPPORTS_MSI if (X86_LOCAL_APIC && X86_IO_APIC)
        help
          Find out whether you have a PCI motherboard. PCI is the name of a
          bus system, i.e. the way the CPU talks to the other stuff inside
@@ -1105,6 +1152,11 @@ config PCI_MMCONFIG
        depends on PCI && ACPI && (PCI_GOMMCONFIG || PCI_GOANY)
        default y
 
+config PCI_DOMAINS
+       bool
+       depends on PCI
+       default y
+
 source "drivers/pci/pcie/Kconfig"
 
 source "drivers/pci/Kconfig"
@@ -1174,6 +1226,16 @@ config SCx200HR_TIMER
          processor goes idle (as is done by the scheduler).  The
          other workaround is idle=poll boot option.
 
+config GEODE_MFGPT_TIMER
+       bool "Geode Multi-Function General Purpose Timer (MFGPT) events"
+       depends on MGEODE_LX && GENERIC_TIME && GENERIC_CLOCKEVENTS
+       default y
+       help
+         This driver provides a clock event source based on the MFGPT
+         timer(s) in the CS5535 and CS5536 companion chip for the geode.
+         MFGPTs have a better resolution and max interval than the
+         generic PIT, and are suitable for use as high-res timers.
+
 config K8_NB
        def_bool y
        depends on AGP_AMD64
@@ -1196,22 +1258,6 @@ source "drivers/Kconfig"
 
 source "fs/Kconfig"
 
-menu "Instrumentation Support"
-       depends on EXPERIMENTAL
-
-source "arch/i386/oprofile/Kconfig"
-
-config KPROBES
-       bool "Kprobes (EXPERIMENTAL)"
-       depends on KALLSYMS && EXPERIMENTAL && MODULES
-       help
-         Kprobes allows you to trap at almost any kernel address and
-         execute a callback function.  register_kprobe() establishes
-         a probepoint and specifies the callback.  Kprobes is useful
-         for kernel debugging, non-intrusive instrumentation and testing.
-         If in doubt, say "N".
-endmenu
-
 source "arch/i386/Kconfig.debug"
 
 source "security/Kconfig"