]> nv-tegra.nvidia Code Review - linux-2.6.git/blobdiff - arch/ia64/Kconfig
Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6
[linux-2.6.git] / arch / ia64 / Kconfig
index 21aa4fc5f8efc64347d4518afec33d9dda000eb6..2d7f56a98e0f484ce80d544223b4b9923526cb2a 100644 (file)
@@ -7,6 +7,8 @@ mainmenu "IA-64 Linux Kernel Configuration"
 
 source "init/Kconfig"
 
+source "kernel/Kconfig.freezer"
+
 menu "Processor type and features"
 
 config IA64
@@ -15,6 +17,18 @@ config IA64
        select ACPI if (!IA64_HP_SIM)
        select PM if (!IA64_HP_SIM)
        select ARCH_SUPPORTS_MSI
+       select HAVE_UNSTABLE_SCHED_CLOCK
+       select HAVE_IDE
+       select HAVE_OPROFILE
+       select HAVE_KPROBES
+       select HAVE_KRETPROBES
+       select HAVE_FTRACE_MCOUNT_RECORD
+       select HAVE_DYNAMIC_FTRACE if (!ITANIUM)
+       select HAVE_FUNCTION_TRACER
+       select HAVE_DMA_ATTRS
+       select HAVE_KVM
+       select HAVE_ARCH_TRACEHOOK
+       select HAVE_DMA_API_DEBUG
        default y
        help
          The Itanium Processor Family is Intel's 64-bit successor to
@@ -42,17 +56,20 @@ config MMU
 config SWIOTLB
        bool
 
+config IOMMU_HELPER
+       bool
+
+config GENERIC_LOCKBREAK
+       def_bool n
+
 config RWSEM_XCHGADD_ALGORITHM
        bool
        default y
 
-config ARCH_HAS_ILOG2_U32
+config HUGETLB_PAGE_SIZE_VARIABLE
        bool
-       default n
-
-config ARCH_HAS_ILOG2_U64
-       bool
-       default n
+       depends on HUGETLB_PAGE
+       default y
 
 config GENERIC_FIND_NEXT_BIT
        bool
@@ -70,6 +87,9 @@ config GENERIC_TIME_VSYSCALL
        bool
        default y
 
+config HAVE_SETUP_PER_CPU_AREA
+       def_bool y
+
 config DMI
        bool
        default y
@@ -82,7 +102,7 @@ config GENERIC_IOMAP
        bool
        default y
 
-config SCHED_NO_NO_OMIT_FRAME_POINTER
+config SCHED_OMIT_FRAME_POINTER
        bool
        default y
 
@@ -90,10 +110,41 @@ config IA64_UNCACHED_ALLOCATOR
        bool
        select GENERIC_ALLOCATOR
 
+config ARCH_USES_PG_UNCACHED
+       def_bool y
+       depends on IA64_UNCACHED_ALLOCATOR
+
 config AUDIT_ARCH
        bool
        default y
 
+menuconfig PARAVIRT_GUEST
+       bool "Paravirtualized guest support"
+       help
+         Say Y here to get to see options related to running Linux under
+         various hypervisors.  This option alone does not add any kernel code.
+
+         If you say N, all options in this submenu will be skipped and disabled.
+
+if PARAVIRT_GUEST
+
+config PARAVIRT
+       bool "Enable paravirtualization code"
+       depends on PARAVIRT_GUEST
+       default y
+       bool
+       default y
+       help
+         This changes the kernel so it can modify itself when it is run
+         under a hypervisor, potentially improving performance significantly
+         over full virtualization.  However, when run without a hypervisor
+         the kernel is theoretically slower and slightly larger.
+
+
+source "arch/ia64/xen/Kconfig"
+
+endif
+
 choice
        prompt "System type"
        default IA64_GENERIC
@@ -103,6 +154,8 @@ config IA64_GENERIC
        select NUMA
        select ACPI_NUMA
        select SWIOTLB
+       select PCI_MSI
+       select DMAR
        help
          This selects the system type of your hardware.  A "generic" kernel
          will run on any supported IA-64 system.  However, if you configure
@@ -110,10 +163,13 @@ config IA64_GENERIC
 
          generic               For any supported IA-64 system
          DIG-compliant         For DIG ("Developer's Interface Guide") compliant systems
+         DIG+Intel+IOMMU       For DIG systems with Intel IOMMU
          HP-zx1/sx1000         For HP systems
          HP-zx1/sx1000+swiotlb For HP systems with (broken) DMA-constrained devices.
          SGI-SN2               For SGI Altix systems
+         SGI-UV                For SGI UV systems
          Ski-simulator         For the HP simulator <http://www.hpl.hp.com/research/linux/ski/>
+         Xen-domU              For xen domU system
 
          If you don't know what to do, choose "generic".
 
@@ -121,6 +177,11 @@ config IA64_DIG
        bool "DIG-compliant"
        select SWIOTLB
 
+config IA64_DIG_VTD
+       bool "DIG+Intel+IOMMU"
+       select DMAR
+       select PCI_MSI
+
 config IA64_HP_ZX1
        bool "HP-zx1/sx1000"
        help
@@ -139,6 +200,8 @@ config IA64_HP_ZX1_SWIOTLB
 
 config IA64_SGI_SN2
        bool "SGI-SN2"
+       select NUMA
+       select ACPI_NUMA
        help
          Selecting this option will optimize the kernel for use on sn2 based
          systems, but the resulting kernel binary will not run on other
@@ -146,10 +209,30 @@ config IA64_SGI_SN2
          to select this option.  If in doubt, select ia64 generic support
          instead.
 
+config IA64_SGI_UV
+       bool "SGI-UV"
+       select NUMA
+       select ACPI_NUMA
+       select SWIOTLB
+       help
+         Selecting this option will optimize the kernel for use on UV based
+         systems, but the resulting kernel binary will not run on other
+         types of ia64 systems.  If you have an SGI UV system, it's safe
+         to select this option.  If in doubt, select ia64 generic support
+         instead.
+
 config IA64_HP_SIM
        bool "Ski-simulator"
        select SWIOTLB
 
+config IA64_XEN_GUEST
+       bool "Xen guest"
+       select SWIOTLB
+       depends on XEN
+       help
+         Build a kernel that runs on Xen guest domain. At this moment only
+         16KB page size in supported.
+
 endchoice
 
 choice
@@ -216,7 +299,14 @@ config PGTABLE_4
 
 endchoice
 
+if IA64_HP_SIM
+config HZ
+       default 32
+endif
+
+if !IA64_HP_SIM
 source kernel/Kconfig.hz
+endif
 
 config IA64_BRL_EMU
        bool
@@ -240,25 +330,26 @@ config IOSAPIC
        depends on !IA64_HP_SIM
        default y
 
-config IA64_SGI_SN_XP
-       tristate "Support communication between SGI SSIs"
-       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
-         hardware based memory protection from the others.  Enabling
-         this feature will allow for direct communication between SSIs
-         based on a network adapter and DMA messaging.
-
 config FORCE_MAX_ZONEORDER
        int "MAX_ORDER (11 - 17)"  if !HUGETLB_PAGE
        range 11 17  if !HUGETLB_PAGE
        default "17" if HUGETLB_PAGE
        default "11"
 
+config VIRT_CPU_ACCOUNTING
+       bool "Deterministic task and CPU time accounting"
+       default n
+       help
+         Select this option to enable more accurate task and CPU time
+         accounting.  This is done by reading a CPU counter on each
+         kernel entry and exit and on transitions within the kernel
+         between system, softirq and hardirq state, so there is a
+         small performance impact.
+         If in doubt, say N here.
+
 config SMP
        bool "Symmetric multi-processing support"
+       select USE_GENERIC_SMP_HELPERS
        help
          This enables support for systems with more than one CPU. If you have
          a system with only one CPU, say N.  If you have a system with more
@@ -270,16 +361,16 @@ config SMP
          single processor systems.  On a single processor system, the kernel
          will run faster if you say N here.
 
-         See also the <file:Documentation/smp.txt> and the SMP-HOWTO
-         available at <http://www.tldp.org/docs.html#howto>.
+         See also the SMP-HOWTO available at
+         <http://www.tldp.org/docs.html#howto>.
 
          If you don't know what to do here, say N.
 
 config NR_CPUS
-       int "Maximum number of CPUs (2-1024)"
-       range 2 1024
+       int "Maximum number of CPUs (2-4096)"
+       range 2 4096
        depends on SMP
-       default "1024"
+       default "4096"
        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
@@ -300,6 +391,9 @@ config HOTPLUG_CPU
 config ARCH_ENABLE_MEMORY_HOTPLUG
        def_bool y
 
+config ARCH_ENABLE_MEMORY_HOTREMOVE
+       def_bool y
+
 config SCHED_SMT
        bool "SMT scheduler support"
        depends on SMP
@@ -327,17 +421,7 @@ config FORCE_CPEI_RETARGET
        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
-          This option reduces the latency of the kernel when reacting to
-          real-time or interactive events by allowing a low priority process to
-          be preempted even if it is in kernel mode executing a system call.
-          This allows applications to run more reliably even when the system is
-          under load.
-
-          Say Y here if you are building a kernel for a desktop, embedded
-          or real-time system.  Say N if you are unsure.
+source "kernel/Kconfig.preempt"
 
 source "mm/Kconfig"
 
@@ -358,6 +442,7 @@ config ARCH_FLATMEM_ENABLE
 config ARCH_SPARSEMEM_ENABLE
        def_bool y
        depends on ARCH_DISCONTIGMEM_ENABLE
+       select SPARSEMEM_VMEMMAP_ENABLE
 
 config ARCH_DISCONTIGMEM_DEFAULT
        def_bool y if (IA64_SGI_SN2 || IA64_GENERIC || IA64_HP_ZX1 || IA64_HP_ZX1_SWIOTLB)
@@ -404,13 +489,16 @@ config HOLES_IN_ZONE
        default y if VIRTUAL_MEM_MAP
 
 config HAVE_ARCH_EARLY_PFN_TO_NID
-       def_bool y
-       depends on NEED_MULTIPLE_NODES
+       def_bool NUMA && SPARSEMEM
 
 config HAVE_ARCH_NODEDATA_EXTENSION
        def_bool y
        depends on NUMA
 
+config ARCH_PROC_KCORE_TEXT
+       def_bool y
+       depends on PROC_KCORE
+
 config IA32_SUPPORT
        bool "Support for Linux/x86 binaries"
        help
@@ -453,9 +541,9 @@ config IA64_PALINFO
 config IA64_MC_ERR_INJECT
        tristate "MC error injection support"
        help
-         Selets whether support for MC error injection. By enabling the
-         support, kernel provide sysfs interface for user application to
-         call MC error injection PAL procedure to inject various errors.
+         Adds support for MC error injection. If enabled, the kernel 
+         will provide a sysfs interface for user applications to
+         call MC error injection PAL procedures to inject various errors.
          This is a useful tool for MCA testing.
 
          If you're unsure, do not select this option.
@@ -471,6 +559,16 @@ config IA64_ESI
          firmware extensions, such as the ability to inject memory-errors
          for test-purposes.  If you're unsure, say N.
 
+config IA64_HP_AML_NFW
+       bool "Support ACPI AML calls to native firmware"
+       help
+         This driver installs a global ACPI Operation Region handler for
+         region 0xA1.  AML methods can use this OpRegion to call arbitrary
+         native firmware functions.  The driver installs the OpRegion
+         handler if there is an HPQ5001 device or if the user supplies
+         the "force" module parameter, e.g., with the "aml_nfw.force"
+         kernel command line option.
+
 source "drivers/sn/Kconfig"
 
 config KEXEC
@@ -482,7 +580,7 @@ config KEXEC
          but it is independent 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.
+         The name comes from the similarity 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
@@ -491,8 +589,8 @@ config KEXEC
          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)
+         bool "kernel crash dumps"
+         depends on IA64_MCA_RECOVERY && !IA64_HP_SIM && (!SMP || HOTPLUG_CPU)
          help
            Generate crash dump after being started by kexec.
 
@@ -502,7 +600,7 @@ source "fs/Kconfig.binfmt"
 
 endmenu
 
-menu "Power management and ACPI"
+menu "Power management and ACPI options"
 
 source "kernel/power/Kconfig"
 
@@ -540,6 +638,27 @@ source "drivers/pci/hotplug/Kconfig"
 
 source "drivers/pcmcia/Kconfig"
 
+config DMAR
+        bool "Support for DMA Remapping Devices (EXPERIMENTAL)"
+        depends on IA64_GENERIC && ACPI && EXPERIMENTAL
+       help
+         DMA remapping (DMAR) devices support enables independent address
+         translations for Direct Memory Access (DMA) from devices.
+         These DMA remapping devices are reported via ACPI tables
+         and include PCI device scope covered by these DMA
+         remapping devices.
+
+config DMAR_DEFAULT_ON
+       def_bool y
+       prompt "Enable DMA Remapping Devices by default"
+       depends on DMAR
+       help
+         Selecting this option will enable a DMAR device at boot time if
+         one is found. If this option is not selected, DMAR support can
+         be enabled by passing intel_iommu=on to the kernel. It is
+         recommended you say N here while the DMAR code remains
+         experimental.
+
 endmenu
 
 endif
@@ -548,6 +667,8 @@ source "net/Kconfig"
 
 source "drivers/Kconfig"
 
+source "arch/ia64/hp/sim/Kconfig"
+
 config MSPEC
        tristate "Memory special operations driver"
        depends on IA64
@@ -559,6 +680,14 @@ config MSPEC
 
 source "fs/Kconfig"
 
+source "arch/ia64/Kconfig.debug"
+
+source "security/Kconfig"
+
+source "crypto/Kconfig"
+
+source "arch/ia64/kvm/Kconfig"
+
 source "lib/Kconfig"
 
 #
@@ -581,26 +710,8 @@ config IRQ_PER_CPU
        bool
        default y
 
-source "arch/ia64/hp/sim/Kconfig"
+config IOMMU_HELPER
+       def_bool (IA64_HP_ZX1 || IA64_HP_ZX1_SWIOTLB || IA64_GENERIC || SWIOTLB)
 
-menu "Instrumentation Support"
-        depends on EXPERIMENTAL
-
-source "arch/ia64/oprofile/Kconfig"
-
-config KPROBES
-       bool "Kprobes"
-       depends on KALLSYMS && 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 "security/Kconfig"
-
-source "crypto/Kconfig"
+config IOMMU_API
+       def_bool (DMAR)