Kconfig 10.3 KB
Newer Older
1 2 3 4 5
#
# For a description of the syntax of this configuration file,
# see Documentation/kbuild/kconfig-language.txt.
#

6 7 8 9 10 11 12 13 14 15
mainmenu "IA-64 Linux Kernel Configuration"

source "init/Kconfig"

menu "Processor type and features"

config IA64
	bool
	default y
	help
David Mosberger's avatar
David Mosberger committed
16 17 18
	  The Itanium Processor Family is Intel's 64-bit successor to
	  the 32-bit X86 line.  The IA-64 Linux project has a home
	  page at <http://www.linuxia64.org/> and a mailing list at
19
	  <linux-ia64@vger.kernel.org>.
20

Matthew Wilcox's avatar
Matthew Wilcox committed
21
config 64BIT
22 23
	bool
	default y
Matthew Wilcox's avatar
Matthew Wilcox committed
24

25 26 27 28
config MMU
	bool
	default y

29
config RWSEM_XCHGADD_ALGORITHM
30 31 32
	bool
	default y

33 34 35 36
config TIME_INTERPOLATION
	bool
	default y

37 38 39 40
config EFI
	bool
	default y

41 42 43 44
config GENERIC_IOMAP
	bool
	default y

45
choice
46
	prompt "System type"
47 48 49 50
	default IA64_GENERIC

config IA64_GENERIC
	bool "generic"
51 52 53 54
	select NUMA
	select ACPI_NUMA
	select VIRTUAL_MEM_MAP
	select DISCONTIGMEM
55
	help
56 57 58 59
	  This selects the system type of your hardware.  A "generic" kernel
	  will run on any supported IA-64 system.  However, if you configure
	  a kernel for your specific system, it will be faster and smaller.

60 61 62
	  generic	 For any supported IA-64 system
	  DIG-compliant	 For DIG ("Developer's Interface Guide") compliant systems
	  HP-zx1/sx1000	 For HP systems
63
	  SGI-SN2	 For SGI Altix systems
64
	  Ski-simulator  For the HP simulator <http://www.hpl.hp.com/research/linux/ski/>
65 66 67 68 69 70 71

	  If you don't know what to do, choose "generic".

config IA64_DIG
	bool "DIG-compliant"

config IA64_HP_ZX1
72
	bool "HP-zx1/sx1000"
73
	help
74 75
	  Build a kernel that runs on HP zx1 and sx1000 systems.  This adds
	  support for the HP I/O MMU.
76 77 78

config IA64_SGI_SN2
	bool "SGI-SN2"
79 80 81 82 83 84
	help
	  Selecting this option will optimize the kernel for use on sn2 based
	  systems, but the resulting kernel binary will not run on other
	  types of ia64 systems.  If you have an SGI Altix system, it's safe
	  to select this option.  If in doubt, select ia64 generic support
	  instead.
85

86 87 88
config IA64_HP_SIM
	bool "Ski-simulator"

89 90
endchoice

91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108
choice
	prompt "Processor type"
	default ITANIUM

config ITANIUM
	bool "Itanium"
	help
	  Select your IA-64 processor type.  The default is Itanium.
	  This choice is safe for all IA-64 systems, but may not perform
	  optimally on systems with, say, Itanium 2 or newer processors.

config MCKINLEY
	bool "Itanium 2"
	help
	  Select this to configure for an Itanium 2 (McKinley) processor.

endchoice

109 110 111 112 113 114
choice
	prompt "Kernel page size"
	default IA64_PAGE_SIZE_16KB

config IA64_PAGE_SIZE_4KB
	bool "4KB"
115
	help
116 117 118 119
	  This lets you select the page size of the kernel.  For best IA-64
	  performance, a page size of 8KB or 16KB is recommended.  For best
	  IA-32 compatibility, a page size of 4KB should be selected (the vast
	  majority of IA-32 binaries work perfectly fine with a larger page
David Mosberger's avatar
David Mosberger committed
120 121
	  size).  For Itanium 2 or newer systems, a page size of 64KB can also
	  be selected.
122 123 124 125

	  4KB                For best IA-32 compatibility
	  8KB                For best IA-64 performance
	  16KB               For best IA-64 performance
David Mosberger's avatar
David Mosberger committed
126
	  64KB               Requires Itanium 2 or newer processor.
127

David Mosberger's avatar
David Mosberger committed
128
	  If you don't know what to do, choose 16KB.
129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147

config IA64_PAGE_SIZE_8KB
	bool "8KB"

config IA64_PAGE_SIZE_16KB
	bool "16KB"

config IA64_PAGE_SIZE_64KB
	depends on !ITANIUM
	bool "64KB"

endchoice

config IA64_BRL_EMU
	bool
	depends on ITANIUM
	default y

config ITANIUM_BSTEP_SPECIFIC
148
	bool "Itanium B-step specific code"
149 150 151 152 153 154 155 156 157
	depends on ITANIUM
	help
	  Select this option to build a kernel for an Itanium prototype system
	  with a B-step CPU.  You have a B-step CPU if the "revision" field in
	  /proc/cpuinfo has a value in the range from 1 to 4.

# align cache-sensitive data to 128 bytes
config IA64_L1_CACHE_SHIFT
	int
Jesse Barnes's avatar
Jesse Barnes committed
158 159
	default "7" if MCKINLEY
	default "6" if ITANIUM
160 161 162

# align cache-sensitive data to 64 bytes
config NUMA
163 164 165
	bool "NUMA support"
	depends on !IA64_HP_SIM
	default y if IA64_SGI_SN2
166 167 168
	help
	  Say Y to compile the kernel to support NUMA (Non-Uniform Memory
	  Access).  This option is for configuring high-end multiprocessor
David Mosberger's avatar
David Mosberger committed
169
	  server systems.  If in doubt, say N.
170

171
config VIRTUAL_MEM_MAP
172
	bool "Virtual mem map"
Jesse Barnes's avatar
Jesse Barnes committed
173
	default y if !IA64_HP_SIM
174 175
	help
	  Say Y to compile the kernel with support for a virtual mem map.
176 177 178 179
	  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.
180

181 182
config DISCONTIGMEM
	bool "Discontiguous memory support"
183
	depends on (IA64_DIG || IA64_SGI_SN2 || IA64_GENERIC || IA64_HP_ZX1) && NUMA && VIRTUAL_MEM_MAP
184 185 186 187 188 189 190
	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.

191
config IA64_CYCLONE
192
	bool "Cyclone (EXA) Time Source support"
193
	help
194 195
	  Say Y here to enable support for IBM EXA Cyclone time source.
	  If you're unsure, answer N.
196

197 198
config IOSAPIC
	bool
199
	depends on !IA64_HP_SIM
200 201 202
	default y

config IA64_SGI_SN_SIM
203
	bool "SGI Medusa Simulator Support"
Jesse Barnes's avatar
Jesse Barnes committed
204
	depends on IA64_SGI_SN2
205
	help
David Mosberger's avatar
David Mosberger committed
206
	  If you are compiling a kernel that will run under SGI's IA-64
207 208 209 210 211 212 213
	  simulator (Medusa) then say Y, otherwise say N.

config FORCE_MAX_ZONEORDER
	int
	default "18"

config SMP
214 215
	bool "Symmetric multi-processing support"
	help
216
	  This enables support for systems with more than one CPU. If you have
217 218
	  a system with only one CPU, say N.  If you have a system with more
	  than one CPU, say Y.
219 220

	  If you say N here, the kernel will run on single and multiprocessor
221
	  systems, but will use only one CPU of a multiprocessor system.  If
222
	  you say Y here, the kernel will run on many, but not all,
223
	  single processor systems.  On a single processor system, the kernel
224 225
	  will run faster if you say N here.

226 227
	  See also the <file:Documentation/smp.txt> and the SMP-HOWTO
	  available at <http://www.tldp.org/docs.html#howto>.
228 229 230

	  If you don't know what to do here, say N.

231 232 233 234 235 236 237 238 239 240 241 242
config NR_CPUS
	int "Maximum number of CPUs (2-512)"
	range 2 512
	depends on SMP
	default "64"
	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
	  only use 2 CPUs on a >2 CPU system.  Setting this to a value larger
	  than 64 will cause the use of a CPU mask array, causing a small
	  performance hit.

243 244 245 246 247 248 249 250 251
config HOTPLUG_CPU
    bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
    depends on SMP && HOTPLUG && EXPERIMENTAL
	default n
    ---help---
      Say Y here to experiment with turning CPUs off and on.  CPUs
      can be controlled through /sys/devices/system/cpu/cpu#.
      Say N if you want to disable CPU hotplug.

252 253 254 255 256 257 258 259 260 261 262 263
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.

264 265 266 267 268
config HAVE_DEC_LOCK
	bool
	depends on (SMP || PREEMPT)
	default y

269
config IA32_SUPPORT
270
	bool "Support for Linux/x86 binaries"
271
	help
David Mosberger's avatar
David Mosberger committed
272 273 274 275 276
	  IA-64 processors can execute IA-32 (X86) instructions.  By
	  saying Y here, the kernel will include IA-32 system call
	  emulation support which makes it possible to transparently
	  run IA-32 Linux binaries on an IA-64 Linux system.
	  If in doubt, say Y.
277

278 279 280 281 282
config COMPAT
	bool
	depends on IA32_SUPPORT
	default y

283 284 285 286 287
config PERFMON
	bool "Performance monitor support"
	help
	  Selects whether support for the IA-64 performance monitor hardware
	  is included in the kernel.  This makes some kernel data-structures a
David Mosberger's avatar
David Mosberger committed
288 289
	  little bigger and slows down execution a bit, but it is generally
	  a good idea to turn this on.  If you're unsure, say Y.
290 291 292 293 294 295 296 297 298

config IA64_PALINFO
	tristate "/proc/pal support"
	help
	  If you say Y here, you are able to get PAL (Processor Abstraction
	  Layer) information in /proc/pal.  This contains useful information
	  about the processors in your systems, such as cache and TLB sizes
	  and the PAL firmware version in use.

David Mosberger's avatar
David Mosberger committed
299
	  To use this option, you have to ensure that the "/proc file system
300 301
	  support" (CONFIG_PROC_FS) is enabled, too.

302 303
source "drivers/firmware/Kconfig"

304
source "fs/Kconfig.binfmt"
305

306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335
endmenu

menu "Power management and ACPI"

config PM
	bool "Power Management support"
	depends on IA64_GENERIC || IA64_DIG || IA64_HP_ZX1
	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

336 337 338 339
if !IA64_HP_SIM

source "drivers/acpi/Kconfig"

340 341 342 343 344 345 346 347
endif

endmenu

if !IA64_HP_SIM

menu "Bus options (PCI, PCMCIA)"

348 349 350 351 352 353 354 355 356
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
357
	  <http://www.tldp.org/docs.html#howto>, contains valuable
358 359 360
	  information about which PCI hardware does work under Linux and which
	  doesn't.

361 362 363 364
config PCI_DOMAINS
	bool
	default PCI

365 366
source "drivers/pci/Kconfig"

367
source "drivers/pci/hotplug/Kconfig"
368 369 370 371 372

source "drivers/pcmcia/Kconfig"

endmenu

373 374
endif

375
source "drivers/Kconfig"
376 377 378

source "fs/Kconfig"

379 380
source "lib/Kconfig"

381 382
source "arch/ia64/hp/sim/Kconfig"

Will Cohen's avatar
Will Cohen committed
383
source "arch/ia64/oprofile/Kconfig"
384

385
source "arch/ia64/Kconfig.debug"
386 387 388 389

source "security/Kconfig"

source "crypto/Kconfig"