fedora core 6 1.2949 + vserver 2.2.0
[linux-2.6.git] / arch / ia64 / Kconfig
index b8dbcdd..d222e51 100644 (file)
@@ -11,6 +11,7 @@ menu "Processor type and features"
 
 config IA64
        bool
 
 config IA64
        bool
+       select ATA_NONSTANDARD if ATA
        default y
        help
          The Itanium Processor Family is Intel's 64-bit successor to
        default y
        help
          The Itanium Processor Family is Intel's 64-bit successor to
@@ -26,10 +27,26 @@ config MMU
        bool
        default y
 
        bool
        default y
 
+config SWIOTLB
+       bool
+       default y
+
 config RWSEM_XCHGADD_ALGORITHM
        bool
        default y
 
 config RWSEM_XCHGADD_ALGORITHM
        bool
        default y
 
+config ARCH_HAS_ILOG2_U32
+       bool
+       default n
+
+config ARCH_HAS_ILOG2_U64
+       bool
+       default n
+
+config GENERIC_FIND_NEXT_BIT
+       bool
+       default y
+
 config GENERIC_CALIBRATE_DELAY
        bool
        default y
 config GENERIC_CALIBRATE_DELAY
        bool
        default y
@@ -38,6 +55,10 @@ config TIME_INTERPOLATION
        bool
        default y
 
        bool
        default y
 
+config DMI
+       bool
+       default y
+
 config EFI
        bool
        default y
 config EFI
        bool
        default y
@@ -46,20 +67,42 @@ config GENERIC_IOMAP
        bool
        default y
 
        bool
        default y
 
+config XEN
+       bool "Xen hypervisor support"
+       default y
+       help
+         Enable Xen hypervisor support.  Resulting kernel runs
+         both as a guest OS on Xen and natively on hardware.
+
+config XEN_IA64_VDSO_PARAVIRT
+       bool
+       depends on XEN && !ITANIUM
+       default y
+       help
+         vDSO paravirtualization
+
 config SCHED_NO_NO_OMIT_FRAME_POINTER
        bool
        default y
 
 config SCHED_NO_NO_OMIT_FRAME_POINTER
        bool
        default y
 
+config IA64_UNCACHED_ALLOCATOR
+       bool
+       select GENERIC_ALLOCATOR
+
+config AUDIT_ARCH
+       bool
+       default y
+
 choice
        prompt "System type"
        default IA64_GENERIC
 
 config IA64_GENERIC
        bool "generic"
 choice
        prompt "System type"
        default IA64_GENERIC
 
 config IA64_GENERIC
        bool "generic"
+       select ACPI
+       select PCI
        select NUMA
        select ACPI_NUMA
        select NUMA
        select ACPI_NUMA
-       select VIRTUAL_MEM_MAP
-       select DISCONTIGMEM
        help
          This selects the system type of your hardware.  A "generic" kernel
          will run on any supported IA-64 system.  However, if you configure
        help
          This selects the system type of your hardware.  A "generic" kernel
          will run on any supported IA-64 system.  However, if you configure
@@ -157,6 +200,21 @@ config IA64_PAGE_SIZE_64KB
 
 endchoice
 
 
 endchoice
 
+choice
+       prompt "Page Table Levels"
+       default PGTABLE_3
+
+config PGTABLE_3
+       bool "3 Levels"
+
+config PGTABLE_4
+       depends on !IA64_PAGE_SIZE_64KB
+       bool "4 Levels"
+
+endchoice
+
+source kernel/Kconfig.hz
+
 config IA64_BRL_EMU
        bool
        depends on ITANIUM
 config IA64_BRL_EMU
        bool
        depends on ITANIUM
@@ -168,41 +226,6 @@ config IA64_L1_CACHE_SHIFT
        default "7" if MCKINLEY
        default "6" if ITANIUM
 
        default "7" if MCKINLEY
        default "6" if ITANIUM
 
-# align cache-sensitive data to 64 bytes
-config NUMA
-       bool "NUMA support"
-       depends on !IA64_HP_SIM
-       default y if IA64_SGI_SN2
-       select ACPI_NUMA
-       help
-         Say Y to compile the kernel to support NUMA (Non-Uniform Memory
-         Access).  This option is for configuring high-end multiprocessor
-         server systems.  If in doubt, say N.
-
-config VIRTUAL_MEM_MAP
-       bool "Virtual mem map"
-       default y if !IA64_HP_SIM
-       help
-         Say Y to compile the kernel with support for a virtual mem map.
-         This code also only takes effect if a memory hole of greater than
-         1 Gb is found during boot.  You must turn this option on if you
-         require the DISCONTIGMEM option for your machine. If you are
-         unsure, say Y.
-
-config HOLES_IN_ZONE
-       bool
-       default y if VIRTUAL_MEM_MAP
-
-config DISCONTIGMEM
-       bool "Discontiguous memory support"
-       depends on (IA64_DIG || IA64_SGI_SN2 || IA64_GENERIC || IA64_HP_ZX1 || IA64_HP_ZX1_SWIOTLB) && NUMA && VIRTUAL_MEM_MAP
-       default y if (IA64_SGI_SN2 || IA64_GENERIC) && NUMA
-       help
-         Say Y to support efficient handling of discontiguous physical memory,
-         for architectures which are either NUMA (Non-Uniform Memory Access)
-         or have huge holes in the physical address space for other reasons.
-         See <file:Documentation/vm/numa> for more.
-
 config IA64_CYCLONE
        bool "Cyclone (EXA) Time Source support"
        help
 config IA64_CYCLONE
        bool "Cyclone (EXA) Time Source support"
        help
@@ -214,16 +237,10 @@ config IOSAPIC
        depends on !IA64_HP_SIM
        default y
 
        depends on !IA64_HP_SIM
        default y
 
-config IA64_SGI_SN_SIM
-       bool "SGI Medusa Simulator Support"
-       depends on IA64_SGI_SN2
-       help
-         If you are compiling a kernel that will run under SGI's IA-64
-         simulator (Medusa) then say Y, otherwise say N.
-
 config IA64_SGI_SN_XP
        tristate "Support communication between SGI SSIs"
 config IA64_SGI_SN_XP
        tristate "Support communication between SGI SSIs"
-       depends on MSPEC
+       depends on IA64_GENERIC || IA64_SGI_SN2
+       select IA64_UNCACHED_ALLOCATOR
        help
          An SGI machine can be divided into multiple Single System
          Images which act independently of each other and have
        help
          An SGI machine can be divided into multiple Single System
          Images which act independently of each other and have
@@ -232,8 +249,10 @@ config IA64_SGI_SN_XP
          based on a network adapter and DMA messaging.
 
 config FORCE_MAX_ZONEORDER
          based on a network adapter and DMA messaging.
 
 config FORCE_MAX_ZONEORDER
-       int
-       default "18"
+       int "MAX_ORDER (11 - 17)"  if !HUGETLB_PAGE
+       range 11 17  if !HUGETLB_PAGE
+       default "17" if HUGETLB_PAGE
+       default "11"
 
 config SMP
        bool "Symmetric multi-processing support"
 
 config SMP
        bool "Symmetric multi-processing support"
@@ -254,10 +273,10 @@ config SMP
          If you don't know what to do here, say N.
 
 config NR_CPUS
          If you don't know what to do here, say N.
 
 config NR_CPUS
-       int "Maximum number of CPUs (2-512)"
-       range 2 512
+       int "Maximum number of CPUs (2-1024)"
+       range 2 1024
        depends on SMP
        depends on SMP
-       default "64"
+       default "1024"
        help
          You should set this to the number of CPUs in your system, but
          keep in mind that a kernel compiled for, e.g., 2 CPUs will boot but
        help
          You should set this to the number of CPUs in your system, but
          keep in mind that a kernel compiled for, e.g., 2 CPUs will boot but
@@ -275,15 +294,36 @@ config HOTPLUG_CPU
          can be controlled through /sys/devices/system/cpu/cpu#.
          Say N if you want to disable CPU hotplug.
 
          can be controlled through /sys/devices/system/cpu/cpu#.
          Say N if you want to disable CPU hotplug.
 
+config ARCH_ENABLE_MEMORY_HOTPLUG
+       def_bool y
+
 config SCHED_SMT
        bool "SMT scheduler support"
        depends on SMP
 config SCHED_SMT
        bool "SMT scheduler support"
        depends on SMP
-       default off
        help
          Improves the CPU scheduler's decision making when dealing with
          Intel IA64 chips with MultiThreading at a cost of slightly increased
          overhead in some places. If unsure say N here.
 
        help
          Improves the CPU scheduler's decision making when dealing with
          Intel IA64 chips with MultiThreading at a cost of slightly increased
          overhead in some places. If unsure say N here.
 
+config PERMIT_BSP_REMOVE
+       bool "Support removal of Bootstrap Processor"
+       depends on HOTPLUG_CPU
+       default n
+       ---help---
+       Say Y here if your platform SAL will support removal of BSP with HOTPLUG_CPU
+       support. 
+
+config FORCE_CPEI_RETARGET
+       bool "Force assumption that CPEI can be re-targetted"
+       depends on PERMIT_BSP_REMOVE
+       default n
+       ---help---
+       Say Y if you need to force the assumption that CPEI can be re-targetted to
+       any cpu in the system. This hint is available via ACPI 3.0 specifications.
+       Tiger4 systems are capable of re-directing CPEI to any CPU other than BSP.
+       This option it useful to enable this feature on older BIOS's as well.
+       You can also enable this by using boot command line option force_cpei=1.
+
 config PREEMPT
        bool "Preemptible Kernel"
         help
 config PREEMPT
        bool "Preemptible Kernel"
         help
@@ -296,10 +336,77 @@ config PREEMPT
           Say Y here if you are building a kernel for a desktop, embedded
           or real-time system.  Say N if you are unsure.
 
           Say Y here if you are building a kernel for a desktop, embedded
           or real-time system.  Say N if you are unsure.
 
-config HAVE_DEC_LOCK
+source "mm/Kconfig"
+
+config ARCH_SELECT_MEMORY_MODEL
+       def_bool y
+
+config ARCH_DISCONTIGMEM_ENABLE
+       def_bool y
+       help
+         Say Y to support efficient handling of discontiguous physical memory,
+         for architectures which are either NUMA (Non-Uniform Memory Access)
+         or have huge holes in the physical address space for other reasons.
+         See <file:Documentation/vm/numa> for more.
+
+config ARCH_FLATMEM_ENABLE
+       def_bool y
+
+config ARCH_SPARSEMEM_ENABLE
+       def_bool y
+       depends on ARCH_DISCONTIGMEM_ENABLE
+
+config ARCH_DISCONTIGMEM_DEFAULT
+       def_bool y if (IA64_SGI_SN2 || IA64_GENERIC || IA64_HP_ZX1 || IA64_HP_ZX1_SWIOTLB)
+       depends on ARCH_DISCONTIGMEM_ENABLE
+
+config NUMA
+       bool "NUMA support"
+       depends on !IA64_HP_SIM && !FLATMEM
+       default y if IA64_SGI_SN2
+       select ACPI_NUMA if ACPI
+       help
+         Say Y to compile the kernel to support NUMA (Non-Uniform Memory
+         Access).  This option is for configuring high-end multiprocessor
+         server systems.  If in doubt, say N.
+
+config NODES_SHIFT
+       int "Max num nodes shift(3-10)"
+       range 3 10
+       default "10"
+       depends on NEED_MULTIPLE_NODES
+       help
+         This option specifies the maximum number of nodes in your SSI system.
+         MAX_NUMNODES will be 2^(This value).
+         If in doubt, use the default.
+
+config ARCH_POPULATES_NODE_MAP
+       def_bool y
+
+# VIRTUAL_MEM_MAP and FLAT_NODE_MEM_MAP are functionally equivalent.
+# VIRTUAL_MEM_MAP has been retained for historical reasons.
+config VIRTUAL_MEM_MAP
+       bool "Virtual mem map"
+       depends on !SPARSEMEM
+       default y if !IA64_HP_SIM
+       help
+         Say Y to compile the kernel with support for a virtual mem map.
+         This code also only takes effect if a memory hole of greater than
+         1 Gb is found during boot.  You must turn this option on if you
+         require the DISCONTIGMEM option for your machine. If you are
+         unsure, say Y.
+
+config HOLES_IN_ZONE
        bool
        bool
-       depends on (SMP || PREEMPT)
-       default y
+       default y if VIRTUAL_MEM_MAP
+
+config HAVE_ARCH_EARLY_PFN_TO_NID
+       def_bool y
+       depends on NEED_MULTIPLE_NODES
+
+config HAVE_ARCH_NODEDATA_EXTENSION
+       def_bool y
+       depends on NUMA
 
 config IA32_SUPPORT
        bool "Support for Linux/x86 binaries"
 
 config IA32_SUPPORT
        bool "Support for Linux/x86 binaries"
@@ -337,10 +444,41 @@ config IA64_PALINFO
          To use this option, you have to ensure that the "/proc file system
          support" (CONFIG_PROC_FS) is enabled, too.
 
          To use this option, you have to ensure that the "/proc file system
          support" (CONFIG_PROC_FS) is enabled, too.
 
-config ACPI_DEALLOCATE_IRQ
-       bool
-       depends on IOSAPIC && EXPERIMENTAL
-       default y
+config SGI_SN
+       def_bool y if (IA64_SGI_SN2 || IA64_GENERIC)
+
+config IA64_ESI
+       bool "ESI (Extensible SAL Interface) support"
+       help
+         If you say Y here, support is built into the kernel to
+         make ESI calls.  ESI calls are used to support vendor-specific
+         firmware extensions, such as the ability to inject memory-errors
+         for test-purposes.  If you're unsure, say N.
+
+source "drivers/sn/Kconfig"
+
+config KEXEC
+       bool "kexec system call (EXPERIMENTAL)"
+       depends on EXPERIMENTAL && !IA64_HP_SIM && (!SMP || HOTPLUG_CPU)
+       help
+         kexec is a system call that implements the ability to shutdown your
+         current kernel, and to start another kernel.  It is like a reboot
+         but it is indepedent of the system firmware.   And like a reboot
+         you can start any kernel with it, not just Linux.
+
+         The name comes from the similiarity to the exec system call.
+
+         It is an ongoing process to be certain the hardware in a machine
+         is properly shutdown, so do not be surprised if this code does not
+         initially work for you.  It may help to enable device hotplugging
+         support.  As of this writing the exact hardware interface is
+         strongly in flux, so no good recommendation can be made.
+
+config CRASH_DUMP
+         bool "kernel crash dumps (EXPERIMENTAL)"
+         depends on EXPERIMENTAL && IA64_MCA_RECOVERY && !IA64_HP_SIM && (!SMP || HOTPLUG_CPU)
+         help
+           Generate crash dump after being started by kexec.
 
 source "drivers/firmware/Kconfig"
 
 
 source "drivers/firmware/Kconfig"
 
@@ -350,36 +488,14 @@ endmenu
 
 menu "Power management and ACPI"
 
 
 menu "Power management and ACPI"
 
-config PM
-       bool "Power Management support"
-       depends on !IA64_HP_SIM
-       default y
-       help
-         "Power Management" means that parts of your computer are shut
-         off or put into a power conserving "sleep" mode if they are not
-         being used.  There are two competing standards for doing this: APM
-         and ACPI.  If you want to use either one, say Y here and then also
-         to the requisite support below.
-
-         Power Management is most important for battery powered laptop
-         computers; if you have a laptop, check out the Linux Laptop home
-         page on the WWW at <http://www.linux-on-laptops.com/> and the
-         Battery Powered Linux mini-HOWTO, available from
-         <http://www.tldp.org/docs.html#howto>.
-
-         Note that, even if you say N here, Linux on the x86 architecture
-         will issue the hlt instruction if nothing is to be done, thereby
-         sending the processor to sleep and saving power.
-
-config ACPI
-       bool
-       depends on !IA64_HP_SIM
-       default y
-
-if !IA64_HP_SIM
+source "kernel/power/Kconfig"
 
 source "drivers/acpi/Kconfig"
 
 
 source "drivers/acpi/Kconfig"
 
+if PM
+
+source "arch/ia64/kernel/cpufreq/Kconfig"
+
 endif
 
 endmenu
 endif
 
 endmenu
@@ -391,20 +507,30 @@ menu "Bus options (PCI, PCMCIA)"
 config PCI
        bool "PCI support"
        help
 config PCI
        bool "PCI support"
        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
-         your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
-         VESA. If you have PCI, say Y, otherwise N.
-
-         The PCI-HOWTO, available from
-         <http://www.tldp.org/docs.html#howto>, contains valuable
-         information about which PCI hardware does work under Linux and which
-         doesn't.
+         Real IA-64 machines all have PCI/PCI-X/PCI Express busses.  Say Y
+         here unless you are using a simulator without PCI support.
 
 config PCI_DOMAINS
        bool
        default PCI
 
 
 config PCI_DOMAINS
        bool
        default PCI
 
+config XEN_PCIDEV_FRONTEND
+       bool "Xen PCI Frontend"
+       depends on PCI && XEN
+       default y
+       help
+         The PCI device frontend driver allows the kernel to import arbitrary
+         PCI devices from a PCI backend to support PCI driver domains.
+
+config XEN_PCIDEV_FE_DEBUG
+       bool "Xen PCI Frontend Debugging"
+       depends on XEN_PCIDEV_FRONTEND
+       default n
+       help
+         Enables some debug statements within the PCI Frontend.
+
+source "drivers/pci/pcie/Kconfig"
+
 source "drivers/pci/Kconfig"
 
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/Kconfig"
 
 source "drivers/pci/hotplug/Kconfig"
@@ -415,8 +541,19 @@ endmenu
 
 endif
 
 
 endif
 
+source "net/Kconfig"
+
 source "drivers/Kconfig"
 
 source "drivers/Kconfig"
 
+config MSPEC
+       tristate "Memory special operations driver"
+       depends on IA64
+       select IA64_UNCACHED_ALLOCATOR
+       help
+         If you have an ia64 and you want to enable memory special
+         operations support (formerly known as fetchop), say Y here,
+         otherwise say N.
+
 source "fs/Kconfig"
 
 source "lib/Kconfig"
 source "fs/Kconfig"
 
 source "lib/Kconfig"
@@ -432,10 +569,33 @@ config GENERIC_IRQ_PROBE
        bool
        default y
 
        bool
        default y
 
+config GENERIC_PENDING_IRQ
+       bool
+       depends on GENERIC_HARDIRQS && SMP
+       default y
+
+config IRQ_PER_CPU
+       bool
+       default y
+
 source "arch/ia64/hp/sim/Kconfig"
 
 source "arch/ia64/hp/sim/Kconfig"
 
+menu "Instrumentation Support"
+        depends on EXPERIMENTAL
+
 source "arch/ia64/oprofile/Kconfig"
 
 source "arch/ia64/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/ia64/Kconfig.debug"
 
 source "kernel/vserver/Kconfig"
 source "arch/ia64/Kconfig.debug"
 
 source "kernel/vserver/Kconfig"
@@ -443,3 +603,34 @@ source "kernel/vserver/Kconfig"
 source "security/Kconfig"
 
 source "crypto/Kconfig"
 source "security/Kconfig"
 
 source "crypto/Kconfig"
+
+#
+# override default values of drivers/xen/Kconfig
+#
+if XEN
+config XEN_UTIL
+       default n
+
+config HAVE_ARCH_ALLOC_SKB
+       default y
+
+config HAVE_ARCH_DEV_ALLOC_SKB
+       default y
+
+config XEN_BALLOON
+       default y
+
+config XEN_SKBUFF
+       default y
+
+config XEN_DEVMEM
+       default n
+
+config XEN_REBOOT
+       default y
+
+config XEN_SMPBOOT
+       default n
+endif
+
+source "drivers/xen/Kconfig"