1# 2# For a description of the syntax of this configuration file, 3# see Documentation/kbuild/kconfig-language.txt. 4# 5 6mainmenu "IA-64 Linux Kernel Configuration" 7 8source "init/Kconfig" 9 10menu "Processor type and features" 11 12config IA64 13 bool 14 default y 15 help 16 The Itanium Processor Family is Intel's 64-bit successor to 17 the 32-bit X86 line. The IA-64 Linux project has a home 18 page at <http://www.linuxia64.org/> and a mailing list at 19 <linux-ia64@vger.kernel.org>. 20 21config 64BIT 22 bool 23 default y 24 25config MMU 26 bool 27 default y 28 29config SWIOTLB 30 bool 31 default y 32 33config RWSEM_XCHGADD_ALGORITHM 34 bool 35 default y 36 37config GENERIC_CALIBRATE_DELAY 38 bool 39 default y 40 41config TIME_INTERPOLATION 42 bool 43 default y 44 45config EFI 46 bool 47 default y 48 49config GENERIC_IOMAP 50 bool 51 default y 52 53config SCHED_NO_NO_OMIT_FRAME_POINTER 54 bool 55 default y 56 57config IA64_UNCACHED_ALLOCATOR 58 bool 59 select GENERIC_ALLOCATOR 60 61choice 62 prompt "System type" 63 default IA64_GENERIC 64 65config IA64_GENERIC 66 bool "generic" 67 select ACPI 68 select NUMA 69 select ACPI_NUMA 70 help 71 This selects the system type of your hardware. A "generic" kernel 72 will run on any supported IA-64 system. However, if you configure 73 a kernel for your specific system, it will be faster and smaller. 74 75 generic For any supported IA-64 system 76 DIG-compliant For DIG ("Developer's Interface Guide") compliant systems 77 HP-zx1/sx1000 For HP systems 78 HP-zx1/sx1000+swiotlb For HP systems with (broken) DMA-constrained devices. 79 SGI-SN2 For SGI Altix systems 80 Ski-simulator For the HP simulator <http://www.hpl.hp.com/research/linux/ski/> 81 82 If you don't know what to do, choose "generic". 83 84config IA64_DIG 85 bool "DIG-compliant" 86 87config IA64_HP_ZX1 88 bool "HP-zx1/sx1000" 89 help 90 Build a kernel that runs on HP zx1 and sx1000 systems. This adds 91 support for the HP I/O MMU. 92 93config IA64_HP_ZX1_SWIOTLB 94 bool "HP-zx1/sx1000 with software I/O TLB" 95 help 96 Build a kernel that runs on HP zx1 and sx1000 systems even when they 97 have broken PCI devices which cannot DMA to full 32 bits. Apart 98 from support for the HP I/O MMU, this includes support for the software 99 I/O TLB, which allows supporting the broken devices at the expense of 100 wasting some kernel memory (about 2MB by default). 101 102config IA64_SGI_SN2 103 bool "SGI-SN2" 104 help 105 Selecting this option will optimize the kernel for use on sn2 based 106 systems, but the resulting kernel binary will not run on other 107 types of ia64 systems. If you have an SGI Altix system, it's safe 108 to select this option. If in doubt, select ia64 generic support 109 instead. 110 111config IA64_HP_SIM 112 bool "Ski-simulator" 113 114endchoice 115 116choice 117 prompt "Processor type" 118 default ITANIUM 119 120config ITANIUM 121 bool "Itanium" 122 help 123 Select your IA-64 processor type. The default is Itanium. 124 This choice is safe for all IA-64 systems, but may not perform 125 optimally on systems with, say, Itanium 2 or newer processors. 126 127config MCKINLEY 128 bool "Itanium 2" 129 help 130 Select this to configure for an Itanium 2 (McKinley) processor. 131 132endchoice 133 134choice 135 prompt "Kernel page size" 136 default IA64_PAGE_SIZE_16KB 137 138config IA64_PAGE_SIZE_4KB 139 bool "4KB" 140 help 141 This lets you select the page size of the kernel. For best IA-64 142 performance, a page size of 8KB or 16KB is recommended. For best 143 IA-32 compatibility, a page size of 4KB should be selected (the vast 144 majority of IA-32 binaries work perfectly fine with a larger page 145 size). For Itanium 2 or newer systems, a page size of 64KB can also 146 be selected. 147 148 4KB For best IA-32 compatibility 149 8KB For best IA-64 performance 150 16KB For best IA-64 performance 151 64KB Requires Itanium 2 or newer processor. 152 153 If you don't know what to do, choose 16KB. 154 155config IA64_PAGE_SIZE_8KB 156 bool "8KB" 157 158config IA64_PAGE_SIZE_16KB 159 bool "16KB" 160 161config IA64_PAGE_SIZE_64KB 162 depends on !ITANIUM 163 bool "64KB" 164 165endchoice 166 167source kernel/Kconfig.hz 168 169config IA64_BRL_EMU 170 bool 171 depends on ITANIUM 172 default y 173 174# align cache-sensitive data to 128 bytes 175config IA64_L1_CACHE_SHIFT 176 int 177 default "7" if MCKINLEY 178 default "6" if ITANIUM 179 180# align cache-sensitive data to 64 bytes 181config IA64_CYCLONE 182 bool "Cyclone (EXA) Time Source support" 183 help 184 Say Y here to enable support for IBM EXA Cyclone time source. 185 If you're unsure, answer N. 186 187config IOSAPIC 188 bool 189 depends on !IA64_HP_SIM 190 default y 191 192config IA64_SGI_SN_XP 193 tristate "Support communication between SGI SSIs" 194 select IA64_UNCACHED_ALLOCATOR 195 help 196 An SGI machine can be divided into multiple Single System 197 Images which act independently of each other and have 198 hardware based memory protection from the others. Enabling 199 this feature will allow for direct communication between SSIs 200 based on a network adapter and DMA messaging. 201 202config FORCE_MAX_ZONEORDER 203 int "MAX_ORDER (11 - 17)" if !HUGETLB_PAGE 204 range 11 17 if !HUGETLB_PAGE 205 default "17" if HUGETLB_PAGE 206 default "11" 207 208config SMP 209 bool "Symmetric multi-processing support" 210 help 211 This enables support for systems with more than one CPU. If you have 212 a system with only one CPU, say N. If you have a system with more 213 than one CPU, say Y. 214 215 If you say N here, the kernel will run on single and multiprocessor 216 systems, but will use only one CPU of a multiprocessor system. If 217 you say Y here, the kernel will run on many, but not all, 218 single processor systems. On a single processor system, the kernel 219 will run faster if you say N here. 220 221 See also the <file:Documentation/smp.txt> and the SMP-HOWTO 222 available at <http://www.tldp.org/docs.html#howto>. 223 224 If you don't know what to do here, say N. 225 226config NR_CPUS 227 int "Maximum number of CPUs (2-1024)" 228 range 2 1024 229 depends on SMP 230 default "64" 231 help 232 You should set this to the number of CPUs in your system, but 233 keep in mind that a kernel compiled for, e.g., 2 CPUs will boot but 234 only use 2 CPUs on a >2 CPU system. Setting this to a value larger 235 than 64 will cause the use of a CPU mask array, causing a small 236 performance hit. 237 238config HOTPLUG_CPU 239 bool "Support for hot-pluggable CPUs (EXPERIMENTAL)" 240 depends on SMP && EXPERIMENTAL 241 select HOTPLUG 242 default n 243 ---help--- 244 Say Y here to experiment with turning CPUs off and on. CPUs 245 can be controlled through /sys/devices/system/cpu/cpu#. 246 Say N if you want to disable CPU hotplug. 247 248config SCHED_SMT 249 bool "SMT scheduler support" 250 depends on SMP 251 default off 252 help 253 Improves the CPU scheduler's decision making when dealing with 254 Intel IA64 chips with MultiThreading at a cost of slightly increased 255 overhead in some places. If unsure say N here. 256 257config PREEMPT 258 bool "Preemptible Kernel" 259 help 260 This option reduces the latency of the kernel when reacting to 261 real-time or interactive events by allowing a low priority process to 262 be preempted even if it is in kernel mode executing a system call. 263 This allows applications to run more reliably even when the system is 264 under load. 265 266 Say Y here if you are building a kernel for a desktop, embedded 267 or real-time system. Say N if you are unsure. 268 269source "mm/Kconfig" 270 271config ARCH_SELECT_MEMORY_MODEL 272 def_bool y 273 274config ARCH_DISCONTIGMEM_ENABLE 275 def_bool y 276 help 277 Say Y to support efficient handling of discontiguous physical memory, 278 for architectures which are either NUMA (Non-Uniform Memory Access) 279 or have huge holes in the physical address space for other reasons. 280 See <file:Documentation/vm/numa> for more. 281 282config ARCH_FLATMEM_ENABLE 283 def_bool y 284 285config ARCH_SPARSEMEM_ENABLE 286 def_bool y 287 depends on ARCH_DISCONTIGMEM_ENABLE 288 289config ARCH_DISCONTIGMEM_DEFAULT 290 def_bool y if (IA64_SGI_SN2 || IA64_GENERIC || IA64_HP_ZX1 || IA64_HP_ZX1_SWIOTLB) 291 depends on ARCH_DISCONTIGMEM_ENABLE 292 293config NUMA 294 bool "NUMA support" 295 depends on !IA64_HP_SIM && !FLATMEM 296 default y if IA64_SGI_SN2 297 help 298 Say Y to compile the kernel to support NUMA (Non-Uniform Memory 299 Access). This option is for configuring high-end multiprocessor 300 server systems. If in doubt, say N. 301 302# VIRTUAL_MEM_MAP and FLAT_NODE_MEM_MAP are functionally equivalent. 303# VIRTUAL_MEM_MAP has been retained for historical reasons. 304config VIRTUAL_MEM_MAP 305 bool "Virtual mem map" 306 depends on !SPARSEMEM 307 default y if !IA64_HP_SIM 308 help 309 Say Y to compile the kernel with support for a virtual mem map. 310 This code also only takes effect if a memory hole of greater than 311 1 Gb is found during boot. You must turn this option on if you 312 require the DISCONTIGMEM option for your machine. If you are 313 unsure, say Y. 314 315config HOLES_IN_ZONE 316 bool 317 default y if VIRTUAL_MEM_MAP 318 319config HAVE_ARCH_EARLY_PFN_TO_NID 320 def_bool y 321 depends on NEED_MULTIPLE_NODES 322 323config IA32_SUPPORT 324 bool "Support for Linux/x86 binaries" 325 help 326 IA-64 processors can execute IA-32 (X86) instructions. By 327 saying Y here, the kernel will include IA-32 system call 328 emulation support which makes it possible to transparently 329 run IA-32 Linux binaries on an IA-64 Linux system. 330 If in doubt, say Y. 331 332config COMPAT 333 bool 334 depends on IA32_SUPPORT 335 default y 336 337config IA64_MCA_RECOVERY 338 tristate "MCA recovery from errors other than TLB." 339 340config PERFMON 341 bool "Performance monitor support" 342 help 343 Selects whether support for the IA-64 performance monitor hardware 344 is included in the kernel. This makes some kernel data-structures a 345 little bigger and slows down execution a bit, but it is generally 346 a good idea to turn this on. If you're unsure, say Y. 347 348config IA64_PALINFO 349 tristate "/proc/pal support" 350 help 351 If you say Y here, you are able to get PAL (Processor Abstraction 352 Layer) information in /proc/pal. This contains useful information 353 about the processors in your systems, such as cache and TLB sizes 354 and the PAL firmware version in use. 355 356 To use this option, you have to ensure that the "/proc file system 357 support" (CONFIG_PROC_FS) is enabled, too. 358 359source "drivers/firmware/Kconfig" 360 361source "fs/Kconfig.binfmt" 362 363endmenu 364 365menu "Power management and ACPI" 366 367source "kernel/power/Kconfig" 368 369source "drivers/acpi/Kconfig" 370 371if PM 372 373source "arch/ia64/kernel/cpufreq/Kconfig" 374 375endif 376 377endmenu 378 379if !IA64_HP_SIM 380 381menu "Bus options (PCI, PCMCIA)" 382 383config PCI 384 bool "PCI support" 385 help 386 Real IA-64 machines all have PCI/PCI-X/PCI Express busses. Say Y 387 here unless you are using a simulator without PCI support. 388 389config PCI_DOMAINS 390 bool 391 default PCI 392 393source "drivers/pci/Kconfig" 394 395source "drivers/pci/hotplug/Kconfig" 396 397source "drivers/pcmcia/Kconfig" 398 399endmenu 400 401endif 402 403source "net/Kconfig" 404 405source "drivers/Kconfig" 406 407source "fs/Kconfig" 408 409source "lib/Kconfig" 410 411# 412# Use the generic interrupt handling code in kernel/irq/: 413# 414config GENERIC_HARDIRQS 415 bool 416 default y 417 418config GENERIC_IRQ_PROBE 419 bool 420 default y 421 422config GENERIC_PENDING_IRQ 423 bool 424 depends on GENERIC_HARDIRQS && SMP 425 default y 426 427source "arch/ia64/hp/sim/Kconfig" 428 429source "arch/ia64/oprofile/Kconfig" 430 431source "arch/ia64/Kconfig.debug" 432 433source "security/Kconfig" 434 435source "crypto/Kconfig" 436