Kconfig (60a5317ff0f42dd313094b88f809f63041568b08) | Kconfig (c5c606d9dce6e0852a401c57a8b0542acdbb6796) |
---|---|
1# x86 configuration 2mainmenu "Linux Kernel Configuration for x86" 3 4# Select 32 or 64 bit 5config 64BIT 6 bool "64-bit kernel" if ARCH = "x86" 7 default ARCH = "x86_64" | 1# x86 configuration 2mainmenu "Linux Kernel Configuration for x86" 3 4# Select 32 or 64 bit 5config 64BIT 6 bool "64-bit kernel" if ARCH = "x86" 7 default ARCH = "x86_64" |
8 help | 8 ---help--- |
9 Say yes to build a 64-bit kernel - formerly known as x86_64 10 Say no to build a 32-bit kernel - formerly known as i386 11 12config X86_32 13 def_bool !64BIT 14 15config X86_64 16 def_bool 64BIT --- 12 unchanged lines hidden (view full) --- 29 select ARCH_WANT_OPTIONAL_GPIOLIB 30 select ARCH_WANT_FRAME_POINTERS 31 select HAVE_KRETPROBES 32 select HAVE_FTRACE_MCOUNT_RECORD 33 select HAVE_DYNAMIC_FTRACE 34 select HAVE_FUNCTION_TRACER 35 select HAVE_FUNCTION_GRAPH_TRACER 36 select HAVE_FUNCTION_TRACE_MCOUNT_TEST | 9 Say yes to build a 64-bit kernel - formerly known as x86_64 10 Say no to build a 32-bit kernel - formerly known as i386 11 12config X86_32 13 def_bool !64BIT 14 15config X86_64 16 def_bool 64BIT --- 12 unchanged lines hidden (view full) --- 29 select ARCH_WANT_OPTIONAL_GPIOLIB 30 select ARCH_WANT_FRAME_POINTERS 31 select HAVE_KRETPROBES 32 select HAVE_FTRACE_MCOUNT_RECORD 33 select HAVE_DYNAMIC_FTRACE 34 select HAVE_FUNCTION_TRACER 35 select HAVE_FUNCTION_GRAPH_TRACER 36 select HAVE_FUNCTION_TRACE_MCOUNT_TEST |
37 select HAVE_KVM if ((X86_32 && !X86_VOYAGER && !X86_VISWS && !X86_NUMAQ) || X86_64) 38 select HAVE_ARCH_KGDB if !X86_VOYAGER | 37 select HAVE_KVM 38 select HAVE_ARCH_KGDB |
39 select HAVE_ARCH_TRACEHOOK 40 select HAVE_GENERIC_DMA_COHERENT if X86_32 41 select HAVE_EFFICIENT_UNALIGNED_ACCESS 42 select USER_STACKTRACE_SUPPORT 43 44config ARCH_DEFCONFIG 45 string 46 default "arch/x86/configs/i386_defconfig" if X86_32 --- 88 unchanged lines hidden (view full) --- 135config HAVE_SETUP_PER_CPU_AREA 136 def_bool y 137 138config HAVE_CPUMASK_OF_CPU_MAP 139 def_bool X86_64_SMP 140 141config ARCH_HIBERNATION_POSSIBLE 142 def_bool y | 39 select HAVE_ARCH_TRACEHOOK 40 select HAVE_GENERIC_DMA_COHERENT if X86_32 41 select HAVE_EFFICIENT_UNALIGNED_ACCESS 42 select USER_STACKTRACE_SUPPORT 43 44config ARCH_DEFCONFIG 45 string 46 default "arch/x86/configs/i386_defconfig" if X86_32 --- 88 unchanged lines hidden (view full) --- 135config HAVE_SETUP_PER_CPU_AREA 136 def_bool y 137 138config HAVE_CPUMASK_OF_CPU_MAP 139 def_bool X86_64_SMP 140 141config ARCH_HIBERNATION_POSSIBLE 142 def_bool y |
143 depends on !SMP || !X86_VOYAGER | 143 depends on !SMP |
144 145config ARCH_SUSPEND_POSSIBLE 146 def_bool y | 144 145config ARCH_SUSPEND_POSSIBLE 146 def_bool y |
147 depends on !X86_VOYAGER | |
148 149config ZONE_DMA32 150 bool 151 default X86_64 152 153config ARCH_POPULATES_NODE_MAP 154 def_bool y 155 --- 13 unchanged lines hidden (view full) --- 169 bool 170 default y 171 172config GENERIC_PENDING_IRQ 173 bool 174 depends on GENERIC_HARDIRQS && SMP 175 default y 176 | 147 148config ZONE_DMA32 149 bool 150 default X86_64 151 152config ARCH_POPULATES_NODE_MAP 153 def_bool y 154 --- 13 unchanged lines hidden (view full) --- 168 bool 169 default y 170 171config GENERIC_PENDING_IRQ 172 bool 173 depends on GENERIC_HARDIRQS && SMP 174 default y 175 |
177config X86_SMP 178 bool 179 depends on SMP && ((X86_32 && !X86_VOYAGER) || X86_64) 180 default y 181 | |
182config USE_GENERIC_SMP_HELPERS 183 def_bool y 184 depends on SMP 185 186config X86_32_SMP 187 def_bool y 188 depends on X86_32 && SMP 189 190config X86_64_SMP 191 def_bool y 192 depends on X86_64 && SMP 193 194config X86_HT 195 bool 196 depends on SMP | 176config USE_GENERIC_SMP_HELPERS 177 def_bool y 178 depends on SMP 179 180config X86_32_SMP 181 def_bool y 182 depends on X86_32 && SMP 183 184config X86_64_SMP 185 def_bool y 186 depends on X86_64 && SMP 187 188config X86_HT 189 bool 190 depends on SMP |
197 depends on (X86_32 && !X86_VOYAGER) || X86_64 | |
198 default y 199 | 191 default y 192 |
200config X86_BIOS_REBOOT 201 bool 202 depends on !X86_VOYAGER 203 default y 204 | |
205config X86_TRAMPOLINE 206 bool | 193config X86_TRAMPOLINE 194 bool |
207 depends on X86_SMP || (X86_VOYAGER && SMP) || (64BIT && ACPI_SLEEP) | 195 depends on SMP || (64BIT && ACPI_SLEEP) |
208 default y 209 | 196 default y 197 |
210config X86_32_LAZY_GS 211 def_bool y 212 depends on X86_32 && !CC_STACKPROTECTOR 213 | |
214config KTIME_SCALAR 215 def_bool X86_32 216source "init/Kconfig" 217source "kernel/Kconfig.freezer" 218 219menu "Processor type and features" 220 221source "kernel/time/Kconfig" --- 21 unchanged lines hidden (view full) --- 243 Management" code will be disabled if you say Y here. 244 245 See also <file:Documentation/i386/IO-APIC.txt>, 246 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at 247 <http://www.tldp.org/docs.html#howto>. 248 249 If you don't know what to do here, say N. 250 | 198config KTIME_SCALAR 199 def_bool X86_32 200source "init/Kconfig" 201source "kernel/Kconfig.freezer" 202 203menu "Processor type and features" 204 205source "kernel/time/Kconfig" --- 21 unchanged lines hidden (view full) --- 227 Management" code will be disabled if you say Y here. 228 229 See also <file:Documentation/i386/IO-APIC.txt>, 230 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at 231 <http://www.tldp.org/docs.html#howto>. 232 233 If you don't know what to do here, say N. 234 |
251config X86_HAS_BOOT_CPU_ID 252 def_bool y 253 depends on X86_VOYAGER 254 | |
255config SPARSE_IRQ 256 bool "Support sparse irq numbering" 257 depends on PCI_MSI || HT_IRQ | 235config SPARSE_IRQ 236 bool "Support sparse irq numbering" 237 depends on PCI_MSI || HT_IRQ |
258 help | 238 ---help--- |
259 This enables support for sparse irqs. This is useful for distro 260 kernels that want to define a high CONFIG_NR_CPUS value but still 261 want to have low kernel memory footprint on smaller machines. 262 263 ( Sparse IRQs can also be beneficial on NUMA boxes, as they spread 264 out the irq_desc[] array in a more NUMA-friendly way. ) 265 266 If you don't know what to do here, say N. 267 268config NUMA_MIGRATE_IRQ_DESC 269 bool "Move irq desc when changing irq smp_affinity" 270 depends on SPARSE_IRQ && NUMA 271 default n | 239 This enables support for sparse irqs. This is useful for distro 240 kernels that want to define a high CONFIG_NR_CPUS value but still 241 want to have low kernel memory footprint on smaller machines. 242 243 ( Sparse IRQs can also be beneficial on NUMA boxes, as they spread 244 out the irq_desc[] array in a more NUMA-friendly way. ) 245 246 If you don't know what to do here, say N. 247 248config NUMA_MIGRATE_IRQ_DESC 249 bool "Move irq desc when changing irq smp_affinity" 250 depends on SPARSE_IRQ && NUMA 251 default n |
272 help | 252 ---help--- |
273 This enables moving irq_desc to cpu/node that irq will use handled. 274 275 If you don't know what to do here, say N. 276 | 253 This enables moving irq_desc to cpu/node that irq will use handled. 254 255 If you don't know what to do here, say N. 256 |
277config X86_FIND_SMP_CONFIG 278 def_bool y 279 depends on X86_MPPARSE || X86_VOYAGER 280 | |
281config X86_MPPARSE 282 bool "Enable MPS table" if ACPI 283 default y 284 depends on X86_LOCAL_APIC | 257config X86_MPPARSE 258 bool "Enable MPS table" if ACPI 259 default y 260 depends on X86_LOCAL_APIC |
285 help | 261 ---help--- |
286 For old smp systems that do not have proper acpi support. Newer systems 287 (esp with 64bit cpus) with acpi support, MADT and DSDT will override it 288 | 262 For old smp systems that do not have proper acpi support. Newer systems 263 (esp with 64bit cpus) with acpi support, MADT and DSDT will override it 264 |
289choice 290 prompt "Subarchitecture Type" 291 default X86_PC | 265config X86_BIGSMP 266 bool "Support for big SMP systems with more than 8 CPUs" 267 depends on X86_32 && SMP 268 ---help--- 269 This option is needed for the systems that have more than 8 CPUs |
292 | 270 |
293config X86_PC 294 bool "PC-compatible" 295 help 296 Choose this option if your computer is a standard PC or compatible. | 271config X86_EXTENDED_PLATFORM 272 bool "Support for extended (non-PC) x86 platforms" 273 default y 274 ---help--- 275 If you disable this option then the kernel will only support 276 standard PC platforms. (which covers the vast majority of 277 systems out there.) |
297 | 278 |
279 If you enable this option then you'll be able to select a number 280 of non-PC x86 platforms. 281 282 If you have one of these systems, or if you want to build a 283 generic distribution kernel, say Y here - otherwise say N. 284 285# This is an alphabetically sorted list of 64 bit extended platforms 286# Please maintain the alphabetic order if and when there are additions 287 288config X86_VSMP 289 bool "ScaleMP vSMP" 290 select PARAVIRT 291 depends on X86_64 && PCI 292 depends on X86_EXTENDED_PLATFORM 293 ---help--- 294 Support for ScaleMP vSMP systems. Say 'Y' here if this kernel is 295 supposed to run on these EM64T-based machines. Only choose this option 296 if you have one of these machines. 297 298config X86_UV 299 bool "SGI Ultraviolet" 300 depends on X86_64 301 depends on X86_EXTENDED_PLATFORM 302 ---help--- 303 This option is needed in order to support SGI Ultraviolet systems. 304 If you don't have one of these, you should say N here. 305 306# Following is an alphabetically sorted list of 32 bit extended platforms 307# Please maintain the alphabetic order if and when there are additions 308 |
|
298config X86_ELAN 299 bool "AMD Elan" 300 depends on X86_32 | 309config X86_ELAN 310 bool "AMD Elan" 311 depends on X86_32 |
301 help | 312 depends on X86_EXTENDED_PLATFORM 313 ---help--- |
302 Select this for an AMD Elan processor. 303 304 Do not use this option for K6/Athlon/Opteron processors! 305 306 If unsure, choose "PC-compatible" instead. 307 | 314 Select this for an AMD Elan processor. 315 316 Do not use this option for K6/Athlon/Opteron processors! 317 318 If unsure, choose "PC-compatible" instead. 319 |
308config X86_VOYAGER 309 bool "Voyager (NCR)" 310 depends on X86_32 && (SMP || BROKEN) && !PCI 311 help 312 Voyager is an MCA-based 32-way capable SMP architecture proprietary 313 to NCR Corp. Machine classes 345x/35xx/4100/51xx are Voyager-based. 314 315 *** WARNING *** 316 317 If you do not specifically know you have a Voyager based machine, 318 say N here, otherwise the kernel you build will not be bootable. 319 320config X86_GENERICARCH 321 bool "Generic architecture" | 320config X86_RDC321X 321 bool "RDC R-321x SoC" |
322 depends on X86_32 | 322 depends on X86_32 |
323 help 324 This option compiles in the NUMAQ, Summit, bigsmp, ES7000, default | 323 depends on X86_EXTENDED_PLATFORM 324 select M486 325 select X86_REBOOTFIXUPS 326 ---help--- 327 This option is needed for RDC R-321x system-on-chip, also known 328 as R-8610-(G). 329 If you don't have one of these chips, you should say N here. 330 331config X86_32_NON_STANDARD 332 bool "Support non-standard 32-bit SMP architectures" 333 depends on X86_32 && SMP 334 depends on X86_EXTENDED_PLATFORM 335 ---help--- 336 This option compiles in the NUMAQ, Summit, bigsmp, ES7000, default |
325 subarchitectures. It is intended for a generic binary kernel. 326 if you select them all, kernel will probe it one by one. and will 327 fallback to default. 328 | 337 subarchitectures. It is intended for a generic binary kernel. 338 if you select them all, kernel will probe it one by one. and will 339 fallback to default. 340 |
329if X86_GENERICARCH | 341# Alphabetically sorted list of Non standard 32 bit platforms |
330 331config X86_NUMAQ 332 bool "NUMAQ (IBM/Sequent)" | 342 343config X86_NUMAQ 344 bool "NUMAQ (IBM/Sequent)" |
333 depends on SMP && X86_32 && PCI && X86_MPPARSE | 345 depends on X86_32_NON_STANDARD |
334 select NUMA | 346 select NUMA |
335 help | 347 select X86_MPPARSE 348 ---help--- |
336 This option is used for getting Linux to run on a NUMAQ (IBM/Sequent) 337 NUMA multiquad box. This changes the way that processors are 338 bootstrapped, and uses Clustered Logical APIC addressing mode instead 339 of Flat Logical. You will need a new lynxer.elf file to flash your 340 firmware with - send email to <Martin.Bligh@us.ibm.com>. 341 | 349 This option is used for getting Linux to run on a NUMAQ (IBM/Sequent) 350 NUMA multiquad box. This changes the way that processors are 351 bootstrapped, and uses Clustered Logical APIC addressing mode instead 352 of Flat Logical. You will need a new lynxer.elf file to flash your 353 firmware with - send email to <Martin.Bligh@us.ibm.com>. 354 |
342config X86_SUMMIT 343 bool "Summit/EXA (IBM x440)" 344 depends on X86_32 && SMP 345 help 346 This option is needed for IBM systems that use the Summit/EXA chipset. 347 In particular, it is needed for the x440. 348 349config X86_ES7000 350 bool "Support for Unisys ES7000 IA32 series" 351 depends on X86_32 && SMP 352 help 353 Support for Unisys ES7000 systems. Say 'Y' here if this kernel is 354 supposed to run on an IA32-based Unisys ES7000 system. 355 356config X86_BIGSMP 357 bool "Support for big SMP systems with more than 8 CPUs" 358 depends on X86_32 && SMP 359 help 360 This option is needed for the systems that have more than 8 CPUs 361 and if the system is not of any sub-arch type above. 362 363endif 364 365config X86_VSMP 366 bool "Support for ScaleMP vSMP" 367 select PARAVIRT 368 depends on X86_64 && PCI 369 help 370 Support for ScaleMP vSMP systems. Say 'Y' here if this kernel is 371 supposed to run on these EM64T-based machines. Only choose this option 372 if you have one of these machines. 373 374endchoice 375 | |
376config X86_VISWS 377 bool "SGI 320/540 (Visual Workstation)" | 355config X86_VISWS 356 bool "SGI 320/540 (Visual Workstation)" |
378 depends on X86_32 && PCI && !X86_VOYAGER && X86_MPPARSE && PCI_GODIRECT 379 help | 357 depends on X86_32 && PCI && X86_MPPARSE && PCI_GODIRECT 358 depends on X86_32_NON_STANDARD 359 ---help--- |
380 The SGI Visual Workstation series is an IA32-based workstation 381 based on SGI systems chips with some legacy PC hardware attached. 382 383 Say Y here to create a kernel to run on the SGI 320 or 540. 384 385 A kernel compiled for the Visual Workstation will run on general 386 PCs as well. See <file:Documentation/sgi-visws.txt> for details. 387 | 360 The SGI Visual Workstation series is an IA32-based workstation 361 based on SGI systems chips with some legacy PC hardware attached. 362 363 Say Y here to create a kernel to run on the SGI 320 or 540. 364 365 A kernel compiled for the Visual Workstation will run on general 366 PCs as well. See <file:Documentation/sgi-visws.txt> for details. 367 |
388config X86_RDC321X 389 bool "RDC R-321x SoC" 390 depends on X86_32 391 select M486 392 select X86_REBOOTFIXUPS 393 help 394 This option is needed for RDC R-321x system-on-chip, also known 395 as R-8610-(G). 396 If you don't have one of these chips, you should say N here. | 368config X86_SUMMIT 369 bool "Summit/EXA (IBM x440)" 370 depends on X86_32_NON_STANDARD 371 ---help--- 372 This option is needed for IBM systems that use the Summit/EXA chipset. 373 In particular, it is needed for the x440. |
397 | 374 |
398config X86_UV 399 bool "SGI Ultraviolet" 400 depends on X86_64 401 help 402 This option is needed in order to support SGI Ultraviolet systems. 403 If you don't have one of these, you should say N here. | 375config X86_ES7000 376 bool "Unisys ES7000 IA32 series" 377 depends on X86_32_NON_STANDARD && X86_BIGSMP 378 ---help--- 379 Support for Unisys ES7000 systems. Say 'Y' here if this kernel is 380 supposed to run on an IA32-based Unisys ES7000 system. |
404 | 381 |
382config X86_VOYAGER 383 bool "Voyager (NCR)" 384 depends on SMP && !PCI && BROKEN 385 depends on X86_32_NON_STANDARD 386 ---help--- 387 Voyager is an MCA-based 32-way capable SMP architecture proprietary 388 to NCR Corp. Machine classes 345x/35xx/4100/51xx are Voyager-based. 389 390 *** WARNING *** 391 392 If you do not specifically know you have a Voyager based machine, 393 say N here, otherwise the kernel you build will not be bootable. 394 |
|
405config SCHED_OMIT_FRAME_POINTER 406 def_bool y 407 prompt "Single-depth WCHAN output" 408 depends on X86 | 395config SCHED_OMIT_FRAME_POINTER 396 def_bool y 397 prompt "Single-depth WCHAN output" 398 depends on X86 |
409 help | 399 ---help--- |
410 Calculate simpler /proc/<PID>/wchan values. If this option 411 is disabled then wchan values will recurse back to the 412 caller function. This provides more accurate wchan values, 413 at the expense of slightly more scheduling overhead. 414 415 If in doubt, say "Y". 416 417menuconfig PARAVIRT_GUEST 418 bool "Paravirtualized guest support" | 400 Calculate simpler /proc/<PID>/wchan values. If this option 401 is disabled then wchan values will recurse back to the 402 caller function. This provides more accurate wchan values, 403 at the expense of slightly more scheduling overhead. 404 405 If in doubt, say "Y". 406 407menuconfig PARAVIRT_GUEST 408 bool "Paravirtualized guest support" |
419 help | 409 ---help--- |
420 Say Y here to get to see options related to running Linux under 421 various hypervisors. This option alone does not add any kernel code. 422 423 If you say N, all options in this submenu will be skipped and disabled. 424 425if PARAVIRT_GUEST 426 427source "arch/x86/xen/Kconfig" 428 429config VMI 430 bool "VMI Guest support" 431 select PARAVIRT 432 depends on X86_32 | 410 Say Y here to get to see options related to running Linux under 411 various hypervisors. This option alone does not add any kernel code. 412 413 If you say N, all options in this submenu will be skipped and disabled. 414 415if PARAVIRT_GUEST 416 417source "arch/x86/xen/Kconfig" 418 419config VMI 420 bool "VMI Guest support" 421 select PARAVIRT 422 depends on X86_32 |
433 depends on !X86_VOYAGER 434 help | 423 ---help--- |
435 VMI provides a paravirtualized interface to the VMware ESX server 436 (it could be used by other hypervisors in theory too, but is not 437 at the moment), by linking the kernel to a GPL-ed ROM module 438 provided by the hypervisor. 439 440config KVM_CLOCK 441 bool "KVM paravirtualized clock" 442 select PARAVIRT 443 select PARAVIRT_CLOCK | 424 VMI provides a paravirtualized interface to the VMware ESX server 425 (it could be used by other hypervisors in theory too, but is not 426 at the moment), by linking the kernel to a GPL-ed ROM module 427 provided by the hypervisor. 428 429config KVM_CLOCK 430 bool "KVM paravirtualized clock" 431 select PARAVIRT 432 select PARAVIRT_CLOCK |
444 depends on !X86_VOYAGER 445 help | 433 ---help--- |
446 Turning on this option will allow you to run a paravirtualized clock 447 when running over the KVM hypervisor. Instead of relying on a PIT 448 (or probably other) emulation by the underlying device model, the host 449 provides the guest with timing infrastructure such as time of day, and 450 system time 451 452config KVM_GUEST 453 bool "KVM Guest support" 454 select PARAVIRT | 434 Turning on this option will allow you to run a paravirtualized clock 435 when running over the KVM hypervisor. Instead of relying on a PIT 436 (or probably other) emulation by the underlying device model, the host 437 provides the guest with timing infrastructure such as time of day, and 438 system time 439 440config KVM_GUEST 441 bool "KVM Guest support" 442 select PARAVIRT |
455 depends on !X86_VOYAGER 456 help 457 This option enables various optimizations for running under the KVM 458 hypervisor. | 443 ---help--- 444 This option enables various optimizations for running under the KVM 445 hypervisor. |
459 460source "arch/x86/lguest/Kconfig" 461 462config PARAVIRT 463 bool "Enable paravirtualization code" | 446 447source "arch/x86/lguest/Kconfig" 448 449config PARAVIRT 450 bool "Enable paravirtualization code" |
464 depends on !X86_VOYAGER 465 help | 451 ---help--- |
466 This changes the kernel so it can modify itself when it is run 467 under a hypervisor, potentially improving performance significantly 468 over full virtualization. However, when run without a hypervisor 469 the kernel is theoretically slower and slightly larger. 470 471config PARAVIRT_CLOCK 472 bool 473 default n 474 475endif 476 477config PARAVIRT_DEBUG | 452 This changes the kernel so it can modify itself when it is run 453 under a hypervisor, potentially improving performance significantly 454 over full virtualization. However, when run without a hypervisor 455 the kernel is theoretically slower and slightly larger. 456 457config PARAVIRT_CLOCK 458 bool 459 default n 460 461endif 462 463config PARAVIRT_DEBUG |
478 bool "paravirt-ops debugging" 479 depends on PARAVIRT && DEBUG_KERNEL 480 help 481 Enable to debug paravirt_ops internals. Specifically, BUG if 482 a paravirt_op is missing when it is called. | 464 bool "paravirt-ops debugging" 465 depends on PARAVIRT && DEBUG_KERNEL 466 ---help--- 467 Enable to debug paravirt_ops internals. Specifically, BUG if 468 a paravirt_op is missing when it is called. |
483 484config MEMTEST 485 bool "Memtest" | 469 470config MEMTEST 471 bool "Memtest" |
486 help | 472 ---help--- |
487 This option adds a kernel parameter 'memtest', which allows memtest 488 to be set. | 473 This option adds a kernel parameter 'memtest', which allows memtest 474 to be set. |
489 memtest=0, mean disabled; -- default 490 memtest=1, mean do 1 test pattern; 491 ... 492 memtest=4, mean do 4 test patterns. | 475 memtest=0, mean disabled; -- default 476 memtest=1, mean do 1 test pattern; 477 ... 478 memtest=4, mean do 4 test patterns. |
493 If you are unsure how to answer this question, answer N. 494 495config X86_SUMMIT_NUMA 496 def_bool y | 479 If you are unsure how to answer this question, answer N. 480 481config X86_SUMMIT_NUMA 482 def_bool y |
497 depends on X86_32 && NUMA && X86_GENERICARCH | 483 depends on X86_32 && NUMA && X86_32_NON_STANDARD |
498 499config X86_CYCLONE_TIMER 500 def_bool y | 484 485config X86_CYCLONE_TIMER 486 def_bool y |
501 depends on X86_GENERICARCH | 487 depends on X86_32_NON_STANDARD |
502 503source "arch/x86/Kconfig.cpu" 504 505config HPET_TIMER 506 def_bool X86_64 507 prompt "HPET Timer Support" if X86_32 | 488 489source "arch/x86/Kconfig.cpu" 490 491config HPET_TIMER 492 def_bool X86_64 493 prompt "HPET Timer Support" if X86_32 |
508 help 509 Use the IA-PC HPET (High Precision Event Timer) to manage 510 time in preference to the PIT and RTC, if a HPET is 511 present. 512 HPET is the next generation timer replacing legacy 8254s. 513 The HPET provides a stable time base on SMP 514 systems, unlike the TSC, but it is more expensive to access, 515 as it is off-chip. You can find the HPET spec at 516 <http://www.intel.com/hardwaredesign/hpetspec_1.pdf>. | 494 ---help--- 495 Use the IA-PC HPET (High Precision Event Timer) to manage 496 time in preference to the PIT and RTC, if a HPET is 497 present. 498 HPET is the next generation timer replacing legacy 8254s. 499 The HPET provides a stable time base on SMP 500 systems, unlike the TSC, but it is more expensive to access, 501 as it is off-chip. You can find the HPET spec at 502 <http://www.intel.com/hardwaredesign/hpetspec_1.pdf>. |
517 | 503 |
518 You can safely choose Y here. However, HPET will only be 519 activated if the platform and the BIOS support this feature. 520 Otherwise the 8254 will be used for timing services. | 504 You can safely choose Y here. However, HPET will only be 505 activated if the platform and the BIOS support this feature. 506 Otherwise the 8254 will be used for timing services. |
521 | 507 |
522 Choose N to continue using the legacy 8254 timer. | 508 Choose N to continue using the legacy 8254 timer. |
523 524config HPET_EMULATE_RTC 525 def_bool y 526 depends on HPET_TIMER && (RTC=y || RTC=m || RTC_DRV_CMOS=m || RTC_DRV_CMOS=y) 527 528# Mark as embedded because too many people got it wrong. 529# The code disables itself when not needed. 530config DMI 531 default y 532 bool "Enable DMI scanning" if EMBEDDED | 509 510config HPET_EMULATE_RTC 511 def_bool y 512 depends on HPET_TIMER && (RTC=y || RTC=m || RTC_DRV_CMOS=m || RTC_DRV_CMOS=y) 513 514# Mark as embedded because too many people got it wrong. 515# The code disables itself when not needed. 516config DMI 517 default y 518 bool "Enable DMI scanning" if EMBEDDED |
533 help | 519 ---help--- |
534 Enabled scanning of DMI to identify machine quirks. Say Y 535 here unless you have verified that your setup is not 536 affected by entries in the DMI blacklist. Required by PNP 537 BIOS code. 538 539config GART_IOMMU 540 bool "GART IOMMU support" if EMBEDDED 541 default y 542 select SWIOTLB 543 select AGP 544 depends on X86_64 && PCI | 520 Enabled scanning of DMI to identify machine quirks. Say Y 521 here unless you have verified that your setup is not 522 affected by entries in the DMI blacklist. Required by PNP 523 BIOS code. 524 525config GART_IOMMU 526 bool "GART IOMMU support" if EMBEDDED 527 default y 528 select SWIOTLB 529 select AGP 530 depends on X86_64 && PCI |
545 help | 531 ---help--- |
546 Support for full DMA access of devices with 32bit memory access only 547 on systems with more than 3GB. This is usually needed for USB, 548 sound, many IDE/SATA chipsets and some other devices. 549 Provides a driver for the AMD Athlon64/Opteron/Turion/Sempron GART 550 based hardware IOMMU and a software bounce buffer based IOMMU used 551 on Intel systems and as fallback. 552 The code is only active when needed (enough memory and limited 553 device) unless CONFIG_IOMMU_DEBUG or iommu=force is specified 554 too. 555 556config CALGARY_IOMMU 557 bool "IBM Calgary IOMMU support" 558 select SWIOTLB 559 depends on X86_64 && PCI && EXPERIMENTAL | 532 Support for full DMA access of devices with 32bit memory access only 533 on systems with more than 3GB. This is usually needed for USB, 534 sound, many IDE/SATA chipsets and some other devices. 535 Provides a driver for the AMD Athlon64/Opteron/Turion/Sempron GART 536 based hardware IOMMU and a software bounce buffer based IOMMU used 537 on Intel systems and as fallback. 538 The code is only active when needed (enough memory and limited 539 device) unless CONFIG_IOMMU_DEBUG or iommu=force is specified 540 too. 541 542config CALGARY_IOMMU 543 bool "IBM Calgary IOMMU support" 544 select SWIOTLB 545 depends on X86_64 && PCI && EXPERIMENTAL |
560 help | 546 ---help--- |
561 Support for hardware IOMMUs in IBM's xSeries x366 and x460 562 systems. Needed to run systems with more than 3GB of memory 563 properly with 32-bit PCI devices that do not support DAC 564 (Double Address Cycle). Calgary also supports bus level 565 isolation, where all DMAs pass through the IOMMU. This 566 prevents them from going anywhere except their intended 567 destination. This catches hard-to-find kernel bugs and 568 mis-behaving drivers and devices that do not use the DMA-API 569 properly to set up their DMA buffers. The IOMMU can be 570 turned off at boot time with the iommu=off parameter. 571 Normally the kernel will make the right choice by itself. 572 If unsure, say Y. 573 574config CALGARY_IOMMU_ENABLED_BY_DEFAULT 575 def_bool y 576 prompt "Should Calgary be enabled by default?" 577 depends on CALGARY_IOMMU | 547 Support for hardware IOMMUs in IBM's xSeries x366 and x460 548 systems. Needed to run systems with more than 3GB of memory 549 properly with 32-bit PCI devices that do not support DAC 550 (Double Address Cycle). Calgary also supports bus level 551 isolation, where all DMAs pass through the IOMMU. This 552 prevents them from going anywhere except their intended 553 destination. This catches hard-to-find kernel bugs and 554 mis-behaving drivers and devices that do not use the DMA-API 555 properly to set up their DMA buffers. The IOMMU can be 556 turned off at boot time with the iommu=off parameter. 557 Normally the kernel will make the right choice by itself. 558 If unsure, say Y. 559 560config CALGARY_IOMMU_ENABLED_BY_DEFAULT 561 def_bool y 562 prompt "Should Calgary be enabled by default?" 563 depends on CALGARY_IOMMU |
578 help | 564 ---help--- |
579 Should Calgary be enabled by default? if you choose 'y', Calgary 580 will be used (if it exists). If you choose 'n', Calgary will not be 581 used even if it exists. If you choose 'n' and would like to use 582 Calgary anyway, pass 'iommu=calgary' on the kernel command line. 583 If unsure, say Y. 584 585config AMD_IOMMU 586 bool "AMD IOMMU support" 587 select SWIOTLB 588 select PCI_MSI 589 depends on X86_64 && PCI && ACPI | 565 Should Calgary be enabled by default? if you choose 'y', Calgary 566 will be used (if it exists). If you choose 'n', Calgary will not be 567 used even if it exists. If you choose 'n' and would like to use 568 Calgary anyway, pass 'iommu=calgary' on the kernel command line. 569 If unsure, say Y. 570 571config AMD_IOMMU 572 bool "AMD IOMMU support" 573 select SWIOTLB 574 select PCI_MSI 575 depends on X86_64 && PCI && ACPI |
590 help | 576 ---help--- |
591 With this option you can enable support for AMD IOMMU hardware in 592 your system. An IOMMU is a hardware component which provides 593 remapping of DMA memory accesses from devices. With an AMD IOMMU you 594 can isolate the the DMA memory of different devices and protect the 595 system from misbehaving device drivers or hardware. 596 597 You can find out if your system has an AMD IOMMU if you look into 598 your BIOS for an option to enable it or if you have an IVRS ACPI 599 table. 600 601config AMD_IOMMU_STATS 602 bool "Export AMD IOMMU statistics to debugfs" 603 depends on AMD_IOMMU 604 select DEBUG_FS | 577 With this option you can enable support for AMD IOMMU hardware in 578 your system. An IOMMU is a hardware component which provides 579 remapping of DMA memory accesses from devices. With an AMD IOMMU you 580 can isolate the the DMA memory of different devices and protect the 581 system from misbehaving device drivers or hardware. 582 583 You can find out if your system has an AMD IOMMU if you look into 584 your BIOS for an option to enable it or if you have an IVRS ACPI 585 table. 586 587config AMD_IOMMU_STATS 588 bool "Export AMD IOMMU statistics to debugfs" 589 depends on AMD_IOMMU 590 select DEBUG_FS |
605 help | 591 ---help--- |
606 This option enables code in the AMD IOMMU driver to collect various 607 statistics about whats happening in the driver and exports that 608 information to userspace via debugfs. 609 If unsure, say N. 610 611# need this always selected by IOMMU for the VIA workaround 612config SWIOTLB 613 def_bool y if X86_64 | 592 This option enables code in the AMD IOMMU driver to collect various 593 statistics about whats happening in the driver and exports that 594 information to userspace via debugfs. 595 If unsure, say N. 596 597# need this always selected by IOMMU for the VIA workaround 598config SWIOTLB 599 def_bool y if X86_64 |
614 help | 600 ---help--- |
615 Support for software bounce buffers used on x86-64 systems 616 which don't have a hardware IOMMU (e.g. the current generation 617 of Intel's x86-64 CPUs). Using this PCI devices which can only 618 access 32-bits of memory can be used on systems with more than 619 3 GB of memory. If unsure, say Y. 620 621config IOMMU_HELPER 622 def_bool (CALGARY_IOMMU || GART_IOMMU || SWIOTLB || AMD_IOMMU) 623 624config IOMMU_API 625 def_bool (AMD_IOMMU || DMAR) 626 627config MAXSMP 628 bool "Configure Maximum number of SMP Processors and NUMA Nodes" 629 depends on X86_64 && SMP && DEBUG_KERNEL && EXPERIMENTAL 630 select CPUMASK_OFFSTACK 631 default n | 601 Support for software bounce buffers used on x86-64 systems 602 which don't have a hardware IOMMU (e.g. the current generation 603 of Intel's x86-64 CPUs). Using this PCI devices which can only 604 access 32-bits of memory can be used on systems with more than 605 3 GB of memory. If unsure, say Y. 606 607config IOMMU_HELPER 608 def_bool (CALGARY_IOMMU || GART_IOMMU || SWIOTLB || AMD_IOMMU) 609 610config IOMMU_API 611 def_bool (AMD_IOMMU || DMAR) 612 613config MAXSMP 614 bool "Configure Maximum number of SMP Processors and NUMA Nodes" 615 depends on X86_64 && SMP && DEBUG_KERNEL && EXPERIMENTAL 616 select CPUMASK_OFFSTACK 617 default n |
632 help | 618 ---help--- |
633 Configure maximum number of CPUS and NUMA Nodes for this architecture. 634 If unsure, say N. 635 636config NR_CPUS 637 int "Maximum number of CPUs" if SMP && !MAXSMP 638 range 2 512 if SMP && !MAXSMP 639 default "1" if !SMP 640 default "4096" if MAXSMP 641 default "32" if SMP && (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000) 642 default "8" if SMP | 619 Configure maximum number of CPUS and NUMA Nodes for this architecture. 620 If unsure, say N. 621 622config NR_CPUS 623 int "Maximum number of CPUs" if SMP && !MAXSMP 624 range 2 512 if SMP && !MAXSMP 625 default "1" if !SMP 626 default "4096" if MAXSMP 627 default "32" if SMP && (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000) 628 default "8" if SMP |
643 help | 629 ---help--- |
644 This allows you to specify the maximum number of CPUs which this 645 kernel will support. The maximum supported value is 512 and the 646 minimum value which makes sense is 2. 647 648 This is purely to save memory - each supported CPU adds 649 approximately eight kilobytes to the kernel image. 650 651config SCHED_SMT 652 bool "SMT (Hyperthreading) scheduler support" 653 depends on X86_HT | 630 This allows you to specify the maximum number of CPUs which this 631 kernel will support. The maximum supported value is 512 and the 632 minimum value which makes sense is 2. 633 634 This is purely to save memory - each supported CPU adds 635 approximately eight kilobytes to the kernel image. 636 637config SCHED_SMT 638 bool "SMT (Hyperthreading) scheduler support" 639 depends on X86_HT |
654 help | 640 ---help--- |
655 SMT scheduler support improves the CPU scheduler's decision making 656 when dealing with Intel Pentium 4 chips with HyperThreading at a 657 cost of slightly increased overhead in some places. If unsure say 658 N here. 659 660config SCHED_MC 661 def_bool y 662 prompt "Multi-core scheduler support" 663 depends on X86_HT | 641 SMT scheduler support improves the CPU scheduler's decision making 642 when dealing with Intel Pentium 4 chips with HyperThreading at a 643 cost of slightly increased overhead in some places. If unsure say 644 N here. 645 646config SCHED_MC 647 def_bool y 648 prompt "Multi-core scheduler support" 649 depends on X86_HT |
664 help | 650 ---help--- |
665 Multi-core scheduler support improves the CPU scheduler's decision 666 making when dealing with multi-core CPU chips at a cost of slightly 667 increased overhead in some places. If unsure say N here. 668 669source "kernel/Kconfig.preempt" 670 671config X86_UP_APIC 672 bool "Local APIC support on uniprocessors" | 651 Multi-core scheduler support improves the CPU scheduler's decision 652 making when dealing with multi-core CPU chips at a cost of slightly 653 increased overhead in some places. If unsure say N here. 654 655source "kernel/Kconfig.preempt" 656 657config X86_UP_APIC 658 bool "Local APIC support on uniprocessors" |
673 depends on X86_32 && !SMP && !(X86_VOYAGER || X86_GENERICARCH) 674 help | 659 depends on X86_32 && !SMP && !X86_32_NON_STANDARD 660 ---help--- |
675 A local APIC (Advanced Programmable Interrupt Controller) is an 676 integrated interrupt controller in the CPU. If you have a single-CPU 677 system which has a processor with a local APIC, you can say Y here to 678 enable and use it. If you say Y here even though your machine doesn't 679 have a local APIC, then the kernel will still run with no slowdown at 680 all. The local APIC supports CPU-generated self-interrupts (timer, 681 performance counters), and the NMI watchdog which detects hard 682 lockups. 683 684config X86_UP_IOAPIC 685 bool "IO-APIC support on uniprocessors" 686 depends on X86_UP_APIC | 661 A local APIC (Advanced Programmable Interrupt Controller) is an 662 integrated interrupt controller in the CPU. If you have a single-CPU 663 system which has a processor with a local APIC, you can say Y here to 664 enable and use it. If you say Y here even though your machine doesn't 665 have a local APIC, then the kernel will still run with no slowdown at 666 all. The local APIC supports CPU-generated self-interrupts (timer, 667 performance counters), and the NMI watchdog which detects hard 668 lockups. 669 670config X86_UP_IOAPIC 671 bool "IO-APIC support on uniprocessors" 672 depends on X86_UP_APIC |
687 help | 673 ---help--- |
688 An IO-APIC (I/O Advanced Programmable Interrupt Controller) is an 689 SMP-capable replacement for PC-style interrupt controllers. Most 690 SMP systems and many recent uniprocessor systems have one. 691 692 If you have a single-CPU system with an IO-APIC, you can say Y here 693 to use it. If you say Y here even though your machine doesn't have 694 an IO-APIC, then the kernel will still run with no slowdown at all. 695 696config X86_LOCAL_APIC 697 def_bool y | 674 An IO-APIC (I/O Advanced Programmable Interrupt Controller) is an 675 SMP-capable replacement for PC-style interrupt controllers. Most 676 SMP systems and many recent uniprocessor systems have one. 677 678 If you have a single-CPU system with an IO-APIC, you can say Y here 679 to use it. If you say Y here even though your machine doesn't have 680 an IO-APIC, then the kernel will still run with no slowdown at all. 681 682config X86_LOCAL_APIC 683 def_bool y |
698 depends on X86_64 || (X86_32 && (X86_UP_APIC || (SMP && !X86_VOYAGER) || X86_GENERICARCH)) | 684 depends on X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_APIC |
699 700config X86_IO_APIC 701 def_bool y | 685 686config X86_IO_APIC 687 def_bool y |
702 depends on X86_64 || (X86_32 && (X86_UP_IOAPIC || (SMP && !X86_VOYAGER) || X86_GENERICARCH)) | 688 depends on X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_APIC |
703 704config X86_VISWS_APIC 705 def_bool y 706 depends on X86_32 && X86_VISWS 707 708config X86_REROUTE_FOR_BROKEN_BOOT_IRQS 709 bool "Reroute for broken boot IRQs" 710 default n 711 depends on X86_IO_APIC | 689 690config X86_VISWS_APIC 691 def_bool y 692 depends on X86_32 && X86_VISWS 693 694config X86_REROUTE_FOR_BROKEN_BOOT_IRQS 695 bool "Reroute for broken boot IRQs" 696 default n 697 depends on X86_IO_APIC |
712 help | 698 ---help--- |
713 This option enables a workaround that fixes a source of 714 spurious interrupts. This is recommended when threaded 715 interrupt handling is used on systems where the generation of 716 superfluous "boot interrupts" cannot be disabled. 717 718 Some chipsets generate a legacy INTx "boot IRQ" when the IRQ 719 entry in the chipset's IO-APIC is masked (as, e.g. the RT 720 kernel does during interrupt handling). On chipsets where this --- 5 unchanged lines hidden (view full) --- 726 the spurious second interrupt may cause the kernel to bring 727 down (vital) interrupt lines. 728 729 Only affects "broken" chipsets. Interrupt sharing may be 730 increased on these systems. 731 732config X86_MCE 733 bool "Machine Check Exception" | 699 This option enables a workaround that fixes a source of 700 spurious interrupts. This is recommended when threaded 701 interrupt handling is used on systems where the generation of 702 superfluous "boot interrupts" cannot be disabled. 703 704 Some chipsets generate a legacy INTx "boot IRQ" when the IRQ 705 entry in the chipset's IO-APIC is masked (as, e.g. the RT 706 kernel does during interrupt handling). On chipsets where this --- 5 unchanged lines hidden (view full) --- 712 the spurious second interrupt may cause the kernel to bring 713 down (vital) interrupt lines. 714 715 Only affects "broken" chipsets. Interrupt sharing may be 716 increased on these systems. 717 718config X86_MCE 719 bool "Machine Check Exception" |
734 depends on !X86_VOYAGER | |
735 ---help--- 736 Machine Check Exception support allows the processor to notify the 737 kernel if it detects a problem (e.g. overheating, component failure). 738 The action the kernel takes depends on the severity of the problem, 739 ranging from a warning message on the console, to halting the machine. 740 Your processor must be a Pentium or newer to support this - check the 741 flags in /proc/cpuinfo for mce. Note that some older Pentium systems 742 have a design flaw which leads to false MCE events - hence MCE is 743 disabled on all P5 processors, unless explicitly enabled with "mce" 744 as a boot argument. Similarly, if MCE is built in and creates a 745 problem on some new non-standard machine, you can boot with "nomce" 746 to disable it. MCE support simply ignores non-MCE processors like 747 the 386 and 486, so nearly everyone can say Y here. 748 749config X86_MCE_INTEL 750 def_bool y 751 prompt "Intel MCE features" 752 depends on X86_64 && X86_MCE && X86_LOCAL_APIC | 720 ---help--- 721 Machine Check Exception support allows the processor to notify the 722 kernel if it detects a problem (e.g. overheating, component failure). 723 The action the kernel takes depends on the severity of the problem, 724 ranging from a warning message on the console, to halting the machine. 725 Your processor must be a Pentium or newer to support this - check the 726 flags in /proc/cpuinfo for mce. Note that some older Pentium systems 727 have a design flaw which leads to false MCE events - hence MCE is 728 disabled on all P5 processors, unless explicitly enabled with "mce" 729 as a boot argument. Similarly, if MCE is built in and creates a 730 problem on some new non-standard machine, you can boot with "nomce" 731 to disable it. MCE support simply ignores non-MCE processors like 732 the 386 and 486, so nearly everyone can say Y here. 733 734config X86_MCE_INTEL 735 def_bool y 736 prompt "Intel MCE features" 737 depends on X86_64 && X86_MCE && X86_LOCAL_APIC |
753 help | 738 ---help--- |
754 Additional support for intel specific MCE features such as 755 the thermal monitor. 756 757config X86_MCE_AMD 758 def_bool y 759 prompt "AMD MCE features" 760 depends on X86_64 && X86_MCE && X86_LOCAL_APIC | 739 Additional support for intel specific MCE features such as 740 the thermal monitor. 741 742config X86_MCE_AMD 743 def_bool y 744 prompt "AMD MCE features" 745 depends on X86_64 && X86_MCE && X86_LOCAL_APIC |
761 help | 746 ---help--- |
762 Additional support for AMD specific MCE features such as 763 the DRAM Error Threshold. 764 765config X86_MCE_NONFATAL 766 tristate "Check for non-fatal errors on AMD Athlon/Duron / Intel Pentium 4" 767 depends on X86_32 && X86_MCE | 747 Additional support for AMD specific MCE features such as 748 the DRAM Error Threshold. 749 750config X86_MCE_NONFATAL 751 tristate "Check for non-fatal errors on AMD Athlon/Duron / Intel Pentium 4" 752 depends on X86_32 && X86_MCE |
768 help | 753 ---help--- |
769 Enabling this feature starts a timer that triggers every 5 seconds which 770 will look at the machine check registers to see if anything happened. 771 Non-fatal problems automatically get corrected (but still logged). 772 Disable this if you don't want to see these messages. 773 Seeing the messages this option prints out may be indicative of dying 774 or out-of-spec (ie, overclocked) hardware. 775 This option only does something on certain CPUs. 776 (AMD Athlon/Duron and Intel Pentium 4) 777 778config X86_MCE_P4THERMAL 779 bool "check for P4 thermal throttling interrupt." 780 depends on X86_32 && X86_MCE && (X86_UP_APIC || SMP) | 754 Enabling this feature starts a timer that triggers every 5 seconds which 755 will look at the machine check registers to see if anything happened. 756 Non-fatal problems automatically get corrected (but still logged). 757 Disable this if you don't want to see these messages. 758 Seeing the messages this option prints out may be indicative of dying 759 or out-of-spec (ie, overclocked) hardware. 760 This option only does something on certain CPUs. 761 (AMD Athlon/Duron and Intel Pentium 4) 762 763config X86_MCE_P4THERMAL 764 bool "check for P4 thermal throttling interrupt." 765 depends on X86_32 && X86_MCE && (X86_UP_APIC || SMP) |
781 help | 766 ---help--- |
782 Enabling this feature will cause a message to be printed when the P4 783 enters thermal throttling. 784 785config VM86 786 bool "Enable VM86 support" if EMBEDDED 787 default y 788 depends on X86_32 | 767 Enabling this feature will cause a message to be printed when the P4 768 enters thermal throttling. 769 770config VM86 771 bool "Enable VM86 support" if EMBEDDED 772 default y 773 depends on X86_32 |
789 help 790 This option is required by programs like DOSEMU to run 16-bit legacy | 774 ---help--- 775 This option is required by programs like DOSEMU to run 16-bit legacy |
791 code on X86 processors. It also may be needed by software like | 776 code on X86 processors. It also may be needed by software like |
792 XFree86 to initialize some video cards via BIOS. Disabling this 793 option saves about 6k. | 777 XFree86 to initialize some video cards via BIOS. Disabling this 778 option saves about 6k. |
794 795config TOSHIBA 796 tristate "Toshiba Laptop support" 797 depends on X86_32 798 ---help--- 799 This adds a driver to safely access the System Management Mode of 800 the CPU on Toshiba portables with a genuine Toshiba BIOS. It does 801 not work on models with a Phoenix BIOS. The System Management Mode --- 57 unchanged lines hidden (view full) --- 859 860 This option selects the general module only, you need to select 861 at least one vendor specific module as well. 862 863 To compile this driver as a module, choose M here: the 864 module will be called microcode. 865 866config MICROCODE_INTEL | 779 780config TOSHIBA 781 tristate "Toshiba Laptop support" 782 depends on X86_32 783 ---help--- 784 This adds a driver to safely access the System Management Mode of 785 the CPU on Toshiba portables with a genuine Toshiba BIOS. It does 786 not work on models with a Phoenix BIOS. The System Management Mode --- 57 unchanged lines hidden (view full) --- 844 845 This option selects the general module only, you need to select 846 at least one vendor specific module as well. 847 848 To compile this driver as a module, choose M here: the 849 module will be called microcode. 850 851config MICROCODE_INTEL |
867 bool "Intel microcode patch loading support" 868 depends on MICROCODE 869 default MICROCODE 870 select FW_LOADER 871 --help--- 872 This options enables microcode patch loading support for Intel 873 processors. | 852 bool "Intel microcode patch loading support" 853 depends on MICROCODE 854 default MICROCODE 855 select FW_LOADER 856 ---help--- 857 This options enables microcode patch loading support for Intel 858 processors. |
874 | 859 |
875 For latest news and information on obtaining all the required 876 Intel ingredients for this driver, check: 877 <http://www.urbanmyth.org/microcode/>. | 860 For latest news and information on obtaining all the required 861 Intel ingredients for this driver, check: 862 <http://www.urbanmyth.org/microcode/>. |
878 879config MICROCODE_AMD | 863 864config MICROCODE_AMD |
880 bool "AMD microcode patch loading support" 881 depends on MICROCODE 882 select FW_LOADER 883 --help--- 884 If you select this option, microcode patch loading support for AMD 885 processors will be enabled. | 865 bool "AMD microcode patch loading support" 866 depends on MICROCODE 867 select FW_LOADER 868 ---help--- 869 If you select this option, microcode patch loading support for AMD 870 processors will be enabled. |
886 | 871 |
887 config MICROCODE_OLD_INTERFACE | 872config MICROCODE_OLD_INTERFACE |
888 def_bool y 889 depends on MICROCODE 890 891config X86_MSR 892 tristate "/dev/cpu/*/msr - Model-specific register support" | 873 def_bool y 874 depends on MICROCODE 875 876config X86_MSR 877 tristate "/dev/cpu/*/msr - Model-specific register support" |
893 help | 878 ---help--- |
894 This device gives privileged processes access to the x86 895 Model-Specific Registers (MSRs). It is a character device with 896 major 202 and minors 0 to 31 for /dev/cpu/0/msr to /dev/cpu/31/msr. 897 MSR accesses are directed to a specific CPU on multi-processor 898 systems. 899 900config X86_CPUID 901 tristate "/dev/cpu/*/cpuid - CPU information support" | 879 This device gives privileged processes access to the x86 880 Model-Specific Registers (MSRs). It is a character device with 881 major 202 and minors 0 to 31 for /dev/cpu/0/msr to /dev/cpu/31/msr. 882 MSR accesses are directed to a specific CPU on multi-processor 883 systems. 884 885config X86_CPUID 886 tristate "/dev/cpu/*/cpuid - CPU information support" |
902 help | 887 ---help--- |
903 This device gives processes access to the x86 CPUID instruction to 904 be executed on a specific processor. It is a character device 905 with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to 906 /dev/cpu/31/cpuid. 907 908choice 909 prompt "High Memory Support" 910 default HIGHMEM4G if !X86_NUMAQ --- 35 unchanged lines hidden (view full) --- 946 your boot loader (lilo or loadlin) about how to pass options to the 947 kernel at boot time.) 948 949 If unsure, say "off". 950 951config HIGHMEM4G 952 bool "4GB" 953 depends on !X86_NUMAQ | 888 This device gives processes access to the x86 CPUID instruction to 889 be executed on a specific processor. It is a character device 890 with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to 891 /dev/cpu/31/cpuid. 892 893choice 894 prompt "High Memory Support" 895 default HIGHMEM4G if !X86_NUMAQ --- 35 unchanged lines hidden (view full) --- 931 your boot loader (lilo or loadlin) about how to pass options to the 932 kernel at boot time.) 933 934 If unsure, say "off". 935 936config HIGHMEM4G 937 bool "4GB" 938 depends on !X86_NUMAQ |
954 help | 939 ---help--- |
955 Select this if you have a 32-bit processor and between 1 and 4 956 gigabytes of physical RAM. 957 958config HIGHMEM64G 959 bool "64GB" 960 depends on !M386 && !M486 961 select X86_PAE | 940 Select this if you have a 32-bit processor and between 1 and 4 941 gigabytes of physical RAM. 942 943config HIGHMEM64G 944 bool "64GB" 945 depends on !M386 && !M486 946 select X86_PAE |
962 help | 947 ---help--- |
963 Select this if you have a 32-bit processor and more than 4 964 gigabytes of physical RAM. 965 966endchoice 967 968choice 969 depends on EXPERIMENTAL 970 prompt "Memory split" if EMBEDDED 971 default VMSPLIT_3G 972 depends on X86_32 | 948 Select this if you have a 32-bit processor and more than 4 949 gigabytes of physical RAM. 950 951endchoice 952 953choice 954 depends on EXPERIMENTAL 955 prompt "Memory split" if EMBEDDED 956 default VMSPLIT_3G 957 depends on X86_32 |
973 help | 958 ---help--- |
974 Select the desired split between kernel and user memory. 975 976 If the address range available to the kernel is less than the 977 physical memory installed, the remaining memory will be available 978 as "high memory". Accessing high memory is a little more costly 979 than low memory, as it needs to be mapped into the kernel first. 980 Note that increasing the kernel address space limits the range 981 available to user programs, making the address space there --- 29 unchanged lines hidden (view full) --- 1011 1012config HIGHMEM 1013 def_bool y 1014 depends on X86_32 && (HIGHMEM64G || HIGHMEM4G) 1015 1016config X86_PAE 1017 bool "PAE (Physical Address Extension) Support" 1018 depends on X86_32 && !HIGHMEM4G | 959 Select the desired split between kernel and user memory. 960 961 If the address range available to the kernel is less than the 962 physical memory installed, the remaining memory will be available 963 as "high memory". Accessing high memory is a little more costly 964 than low memory, as it needs to be mapped into the kernel first. 965 Note that increasing the kernel address space limits the range 966 available to user programs, making the address space there --- 29 unchanged lines hidden (view full) --- 996 997config HIGHMEM 998 def_bool y 999 depends on X86_32 && (HIGHMEM64G || HIGHMEM4G) 1000 1001config X86_PAE 1002 bool "PAE (Physical Address Extension) Support" 1003 depends on X86_32 && !HIGHMEM4G |
1019 help | 1004 ---help--- |
1020 PAE is required for NX support, and furthermore enables 1021 larger swapspace support for non-overcommit purposes. It 1022 has the cost of more pagetable lookup overhead, and also 1023 consumes more pagetable space per process. 1024 1025config ARCH_PHYS_ADDR_T_64BIT | 1005 PAE is required for NX support, and furthermore enables 1006 larger swapspace support for non-overcommit purposes. It 1007 has the cost of more pagetable lookup overhead, and also 1008 consumes more pagetable space per process. 1009 1010config ARCH_PHYS_ADDR_T_64BIT |
1026 def_bool X86_64 || X86_PAE | 1011 def_bool X86_64 || X86_PAE |
1027 1028config DIRECT_GBPAGES 1029 bool "Enable 1GB pages for kernel pagetables" if EMBEDDED 1030 default y 1031 depends on X86_64 | 1012 1013config DIRECT_GBPAGES 1014 bool "Enable 1GB pages for kernel pagetables" if EMBEDDED 1015 default y 1016 depends on X86_64 |
1032 help | 1017 ---help--- |
1033 Allow the kernel linear mapping to use 1GB pages on CPUs that 1034 support it. This can improve the kernel's performance a tiny bit by 1035 reducing TLB pressure. If in doubt, say "Y". 1036 1037# Common NUMA Features 1038config NUMA 1039 bool "Numa Memory Allocation and Scheduler Support" 1040 depends on SMP 1041 depends on X86_64 || (X86_32 && HIGHMEM64G && (X86_NUMAQ || X86_BIGSMP || X86_SUMMIT && ACPI) && EXPERIMENTAL) | 1018 Allow the kernel linear mapping to use 1GB pages on CPUs that 1019 support it. This can improve the kernel's performance a tiny bit by 1020 reducing TLB pressure. If in doubt, say "Y". 1021 1022# Common NUMA Features 1023config NUMA 1024 bool "Numa Memory Allocation and Scheduler Support" 1025 depends on SMP 1026 depends on X86_64 || (X86_32 && HIGHMEM64G && (X86_NUMAQ || X86_BIGSMP || X86_SUMMIT && ACPI) && EXPERIMENTAL) |
1042 default n if X86_PC | |
1043 default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP) | 1027 default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP) |
1044 help | 1028 ---help--- |
1045 Enable NUMA (Non Uniform Memory Access) support. 1046 1047 The kernel will try to allocate memory used by a CPU on the 1048 local memory controller of the CPU and add some more 1049 NUMA awareness to the kernel. 1050 1051 For 64-bit this is recommended if the system is Intel Core i7 1052 (or later), AMD Opteron, or EM64T NUMA. --- 6 unchanged lines hidden (view full) --- 1059 1060comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI" 1061 depends on X86_32 && X86_SUMMIT && (!HIGHMEM64G || !ACPI) 1062 1063config K8_NUMA 1064 def_bool y 1065 prompt "Old style AMD Opteron NUMA detection" 1066 depends on X86_64 && NUMA && PCI | 1029 Enable NUMA (Non Uniform Memory Access) support. 1030 1031 The kernel will try to allocate memory used by a CPU on the 1032 local memory controller of the CPU and add some more 1033 NUMA awareness to the kernel. 1034 1035 For 64-bit this is recommended if the system is Intel Core i7 1036 (or later), AMD Opteron, or EM64T NUMA. --- 6 unchanged lines hidden (view full) --- 1043 1044comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI" 1045 depends on X86_32 && X86_SUMMIT && (!HIGHMEM64G || !ACPI) 1046 1047config K8_NUMA 1048 def_bool y 1049 prompt "Old style AMD Opteron NUMA detection" 1050 depends on X86_64 && NUMA && PCI |
1067 help 1068 Enable K8 NUMA node topology detection. You should say Y here if 1069 you have a multi processor AMD K8 system. This uses an old 1070 method to read the NUMA configuration directly from the builtin 1071 Northbridge of Opteron. It is recommended to use X86_64_ACPI_NUMA 1072 instead, which also takes priority if both are compiled in. | 1051 ---help--- 1052 Enable K8 NUMA node topology detection. You should say Y here if 1053 you have a multi processor AMD K8 system. This uses an old 1054 method to read the NUMA configuration directly from the builtin 1055 Northbridge of Opteron. It is recommended to use X86_64_ACPI_NUMA 1056 instead, which also takes priority if both are compiled in. |
1073 1074config X86_64_ACPI_NUMA 1075 def_bool y 1076 prompt "ACPI NUMA detection" 1077 depends on X86_64 && NUMA && ACPI && PCI 1078 select ACPI_NUMA | 1057 1058config X86_64_ACPI_NUMA 1059 def_bool y 1060 prompt "ACPI NUMA detection" 1061 depends on X86_64 && NUMA && ACPI && PCI 1062 select ACPI_NUMA |
1079 help | 1063 ---help--- |
1080 Enable ACPI SRAT based node topology detection. 1081 1082# Some NUMA nodes have memory ranges that span 1083# other nodes. Even though a pfn is valid and 1084# between a node's start and end pfns, it may not 1085# reside on that node. See memmap_init_zone() 1086# for details. 1087config NODES_SPAN_OTHER_NODES 1088 def_bool y 1089 depends on X86_64_ACPI_NUMA 1090 1091config NUMA_EMU 1092 bool "NUMA emulation" 1093 depends on X86_64 && NUMA | 1064 Enable ACPI SRAT based node topology detection. 1065 1066# Some NUMA nodes have memory ranges that span 1067# other nodes. Even though a pfn is valid and 1068# between a node's start and end pfns, it may not 1069# reside on that node. See memmap_init_zone() 1070# for details. 1071config NODES_SPAN_OTHER_NODES 1072 def_bool y 1073 depends on X86_64_ACPI_NUMA 1074 1075config NUMA_EMU 1076 bool "NUMA emulation" 1077 depends on X86_64 && NUMA |
1094 help | 1078 ---help--- |
1095 Enable NUMA emulation. A flat machine will be split 1096 into virtual nodes when booted with "numa=fake=N", where N is the 1097 number of nodes. This is only useful for debugging. 1098 1099config NODES_SHIFT 1100 int "Maximum NUMA Nodes (as a power of 2)" if !MAXSMP 1101 range 1 9 if X86_64 1102 default "9" if MAXSMP 1103 default "6" if X86_64 1104 default "4" if X86_NUMAQ 1105 default "3" 1106 depends on NEED_MULTIPLE_NODES | 1079 Enable NUMA emulation. A flat machine will be split 1080 into virtual nodes when booted with "numa=fake=N", where N is the 1081 number of nodes. This is only useful for debugging. 1082 1083config NODES_SHIFT 1084 int "Maximum NUMA Nodes (as a power of 2)" if !MAXSMP 1085 range 1 9 if X86_64 1086 default "9" if MAXSMP 1087 default "6" if X86_64 1088 default "4" if X86_NUMAQ 1089 default "3" 1090 depends on NEED_MULTIPLE_NODES |
1107 help | 1091 ---help--- |
1108 Specify the maximum number of NUMA Nodes available on the target 1109 system. Increases memory reserved to accomodate various tables. 1110 1111config HAVE_ARCH_BOOTMEM_NODE 1112 def_bool y 1113 depends on X86_32 && NUMA 1114 1115config ARCH_HAVE_MEMORY_PRESENT --- 21 unchanged lines hidden (view full) --- 1137 depends on NUMA && X86_32 1138 1139config ARCH_SPARSEMEM_DEFAULT 1140 def_bool y 1141 depends on X86_64 1142 1143config ARCH_SPARSEMEM_ENABLE 1144 def_bool y | 1092 Specify the maximum number of NUMA Nodes available on the target 1093 system. Increases memory reserved to accomodate various tables. 1094 1095config HAVE_ARCH_BOOTMEM_NODE 1096 def_bool y 1097 depends on X86_32 && NUMA 1098 1099config ARCH_HAVE_MEMORY_PRESENT --- 21 unchanged lines hidden (view full) --- 1121 depends on NUMA && X86_32 1122 1123config ARCH_SPARSEMEM_DEFAULT 1124 def_bool y 1125 depends on X86_64 1126 1127config ARCH_SPARSEMEM_ENABLE 1128 def_bool y |
1145 depends on X86_64 || NUMA || (EXPERIMENTAL && X86_PC) || X86_GENERICARCH | 1129 depends on X86_64 || NUMA || (EXPERIMENTAL && X86_32) || X86_32_NON_STANDARD |
1146 select SPARSEMEM_STATIC if X86_32 1147 select SPARSEMEM_VMEMMAP_ENABLE if X86_64 1148 1149config ARCH_SELECT_MEMORY_MODEL 1150 def_bool y 1151 depends on ARCH_SPARSEMEM_ENABLE 1152 1153config ARCH_MEMORY_PROBE 1154 def_bool X86_64 1155 depends on MEMORY_HOTPLUG 1156 1157source "mm/Kconfig" 1158 1159config HIGHPTE 1160 bool "Allocate 3rd-level pagetables from highmem" 1161 depends on X86_32 && (HIGHMEM4G || HIGHMEM64G) | 1130 select SPARSEMEM_STATIC if X86_32 1131 select SPARSEMEM_VMEMMAP_ENABLE if X86_64 1132 1133config ARCH_SELECT_MEMORY_MODEL 1134 def_bool y 1135 depends on ARCH_SPARSEMEM_ENABLE 1136 1137config ARCH_MEMORY_PROBE 1138 def_bool X86_64 1139 depends on MEMORY_HOTPLUG 1140 1141source "mm/Kconfig" 1142 1143config HIGHPTE 1144 bool "Allocate 3rd-level pagetables from highmem" 1145 depends on X86_32 && (HIGHMEM4G || HIGHMEM64G) |
1162 help | 1146 ---help--- |
1163 The VM uses one page table entry for each page of physical memory. 1164 For systems with a lot of RAM, this can be wasteful of precious 1165 low memory. Setting this option will put user-space page table 1166 entries in high memory. 1167 1168config X86_CHECK_BIOS_CORRUPTION | 1147 The VM uses one page table entry for each page of physical memory. 1148 For systems with a lot of RAM, this can be wasteful of precious 1149 low memory. Setting this option will put user-space page table 1150 entries in high memory. 1151 1152config X86_CHECK_BIOS_CORRUPTION |
1169 bool "Check for low memory corruption" 1170 help 1171 Periodically check for memory corruption in low memory, which 1172 is suspected to be caused by BIOS. Even when enabled in the 1173 configuration, it is disabled at runtime. Enable it by 1174 setting "memory_corruption_check=1" on the kernel command 1175 line. By default it scans the low 64k of memory every 60 1176 seconds; see the memory_corruption_check_size and 1177 memory_corruption_check_period parameters in 1178 Documentation/kernel-parameters.txt to adjust this. | 1153 bool "Check for low memory corruption" 1154 ---help--- 1155 Periodically check for memory corruption in low memory, which 1156 is suspected to be caused by BIOS. Even when enabled in the 1157 configuration, it is disabled at runtime. Enable it by 1158 setting "memory_corruption_check=1" on the kernel command 1159 line. By default it scans the low 64k of memory every 60 1160 seconds; see the memory_corruption_check_size and 1161 memory_corruption_check_period parameters in 1162 Documentation/kernel-parameters.txt to adjust this. |
1179 | 1163 |
1180 When enabled with the default parameters, this option has 1181 almost no overhead, as it reserves a relatively small amount 1182 of memory and scans it infrequently. It both detects corruption 1183 and prevents it from affecting the running system. | 1164 When enabled with the default parameters, this option has 1165 almost no overhead, as it reserves a relatively small amount 1166 of memory and scans it infrequently. It both detects corruption 1167 and prevents it from affecting the running system. |
1184 | 1168 |
1185 It is, however, intended as a diagnostic tool; if repeatable 1186 BIOS-originated corruption always affects the same memory, 1187 you can use memmap= to prevent the kernel from using that 1188 memory. | 1169 It is, however, intended as a diagnostic tool; if repeatable 1170 BIOS-originated corruption always affects the same memory, 1171 you can use memmap= to prevent the kernel from using that 1172 memory. |
1189 1190config X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK | 1173 1174config X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK |
1191 bool "Set the default setting of memory_corruption_check" | 1175 bool "Set the default setting of memory_corruption_check" |
1192 depends on X86_CHECK_BIOS_CORRUPTION 1193 default y | 1176 depends on X86_CHECK_BIOS_CORRUPTION 1177 default y |
1194 help 1195 Set whether the default state of memory_corruption_check is 1196 on or off. | 1178 ---help--- 1179 Set whether the default state of memory_corruption_check is 1180 on or off. |
1197 1198config X86_RESERVE_LOW_64K | 1181 1182config X86_RESERVE_LOW_64K |
1199 bool "Reserve low 64K of RAM on AMI/Phoenix BIOSen" | 1183 bool "Reserve low 64K of RAM on AMI/Phoenix BIOSen" |
1200 default y | 1184 default y |
1201 help 1202 Reserve the first 64K of physical RAM on BIOSes that are known 1203 to potentially corrupt that memory range. A numbers of BIOSes are 1204 known to utilize this area during suspend/resume, so it must not 1205 be used by the kernel. | 1185 ---help--- 1186 Reserve the first 64K of physical RAM on BIOSes that are known 1187 to potentially corrupt that memory range. A numbers of BIOSes are 1188 known to utilize this area during suspend/resume, so it must not 1189 be used by the kernel. |
1206 | 1190 |
1207 Set this to N if you are absolutely sure that you trust the BIOS 1208 to get all its memory reservations and usages right. | 1191 Set this to N if you are absolutely sure that you trust the BIOS 1192 to get all its memory reservations and usages right. |
1209 | 1193 |
1210 If you have doubts about the BIOS (e.g. suspend/resume does not 1211 work or there's kernel crashes after certain hardware hotplug 1212 events) and it's not AMI or Phoenix, then you might want to enable 1213 X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check typical 1214 corruption patterns. | 1194 If you have doubts about the BIOS (e.g. suspend/resume does not 1195 work or there's kernel crashes after certain hardware hotplug 1196 events) and it's not AMI or Phoenix, then you might want to enable 1197 X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check typical 1198 corruption patterns. |
1215 | 1199 |
1216 Say Y if unsure. | 1200 Say Y if unsure. |
1217 1218config MATH_EMULATION 1219 bool 1220 prompt "Math emulation" if X86_32 1221 ---help--- 1222 Linux can emulate a math coprocessor (used for floating point 1223 operations) if you don't have one. 486DX and Pentium processors have 1224 a math coprocessor built in, 486SX and 386 do not, unless you added --- 49 unchanged lines hidden (view full) --- 1274 just add about 9 KB to your kernel. 1275 1276 See <file:Documentation/x86/mtrr.txt> for more information. 1277 1278config MTRR_SANITIZER 1279 def_bool y 1280 prompt "MTRR cleanup support" 1281 depends on MTRR | 1201 1202config MATH_EMULATION 1203 bool 1204 prompt "Math emulation" if X86_32 1205 ---help--- 1206 Linux can emulate a math coprocessor (used for floating point 1207 operations) if you don't have one. 486DX and Pentium processors have 1208 a math coprocessor built in, 486SX and 386 do not, unless you added --- 49 unchanged lines hidden (view full) --- 1258 just add about 9 KB to your kernel. 1259 1260 See <file:Documentation/x86/mtrr.txt> for more information. 1261 1262config MTRR_SANITIZER 1263 def_bool y 1264 prompt "MTRR cleanup support" 1265 depends on MTRR |
1282 help | 1266 ---help--- |
1283 Convert MTRR layout from continuous to discrete, so X drivers can 1284 add writeback entries. 1285 1286 Can be disabled with disable_mtrr_cleanup on the kernel command line. 1287 The largest mtrr entry size for a continous block can be set with 1288 mtrr_chunk_size. 1289 1290 If unsure, say Y. 1291 1292config MTRR_SANITIZER_ENABLE_DEFAULT 1293 int "MTRR cleanup enable value (0-1)" 1294 range 0 1 1295 default "0" 1296 depends on MTRR_SANITIZER | 1267 Convert MTRR layout from continuous to discrete, so X drivers can 1268 add writeback entries. 1269 1270 Can be disabled with disable_mtrr_cleanup on the kernel command line. 1271 The largest mtrr entry size for a continous block can be set with 1272 mtrr_chunk_size. 1273 1274 If unsure, say Y. 1275 1276config MTRR_SANITIZER_ENABLE_DEFAULT 1277 int "MTRR cleanup enable value (0-1)" 1278 range 0 1 1279 default "0" 1280 depends on MTRR_SANITIZER |
1297 help | 1281 ---help--- |
1298 Enable mtrr cleanup default value 1299 1300config MTRR_SANITIZER_SPARE_REG_NR_DEFAULT 1301 int "MTRR cleanup spare reg num (0-7)" 1302 range 0 7 1303 default "1" 1304 depends on MTRR_SANITIZER | 1282 Enable mtrr cleanup default value 1283 1284config MTRR_SANITIZER_SPARE_REG_NR_DEFAULT 1285 int "MTRR cleanup spare reg num (0-7)" 1286 range 0 7 1287 default "1" 1288 depends on MTRR_SANITIZER |
1305 help | 1289 ---help--- |
1306 mtrr cleanup spare entries default, it can be changed via 1307 mtrr_spare_reg_nr=N on the kernel command line. 1308 1309config X86_PAT 1310 bool 1311 prompt "x86 PAT support" 1312 depends on MTRR | 1290 mtrr cleanup spare entries default, it can be changed via 1291 mtrr_spare_reg_nr=N on the kernel command line. 1292 1293config X86_PAT 1294 bool 1295 prompt "x86 PAT support" 1296 depends on MTRR |
1313 help | 1297 ---help--- |
1314 Use PAT attributes to setup page level cache control. 1315 1316 PATs are the modern equivalents of MTRRs and are much more 1317 flexible than MTRRs. 1318 1319 Say N here if you see bootup problems (boot crash, boot hang, 1320 spontaneous reboots) or a non-working video driver. 1321 1322 If unsure, say Y. 1323 1324config EFI 1325 bool "EFI runtime service support" 1326 depends on ACPI 1327 ---help--- | 1298 Use PAT attributes to setup page level cache control. 1299 1300 PATs are the modern equivalents of MTRRs and are much more 1301 flexible than MTRRs. 1302 1303 Say N here if you see bootup problems (boot crash, boot hang, 1304 spontaneous reboots) or a non-working video driver. 1305 1306 If unsure, say Y. 1307 1308config EFI 1309 bool "EFI runtime service support" 1310 depends on ACPI 1311 ---help--- |
1328 This enables the kernel to use EFI runtime services that are 1329 available (such as the EFI variable services). | 1312 This enables the kernel to use EFI runtime services that are 1313 available (such as the EFI variable services). |
1330 | 1314 |
1331 This option is only useful on systems that have EFI firmware. 1332 In addition, you should use the latest ELILO loader available 1333 at <http://elilo.sourceforge.net> in order to take advantage 1334 of EFI runtime services. However, even with this option, the 1335 resultant kernel should continue to boot on existing non-EFI 1336 platforms. | 1315 This option is only useful on systems that have EFI firmware. 1316 In addition, you should use the latest ELILO loader available 1317 at <http://elilo.sourceforge.net> in order to take advantage 1318 of EFI runtime services. However, even with this option, the 1319 resultant kernel should continue to boot on existing non-EFI 1320 platforms. |
1337 1338config SECCOMP 1339 def_bool y 1340 prompt "Enable seccomp to safely compute untrusted bytecode" | 1321 1322config SECCOMP 1323 def_bool y 1324 prompt "Enable seccomp to safely compute untrusted bytecode" |
1341 help | 1325 ---help--- |
1342 This kernel feature is useful for number crunching applications 1343 that may need to compute untrusted bytecode during their 1344 execution. By using pipes or other transports made available to 1345 the process as file descriptors supporting the read/write 1346 syscalls, it's possible to isolate those applications in 1347 their own address space using seccomp. Once seccomp is 1348 enabled via prctl(PR_SET_SECCOMP), it cannot be disabled 1349 and the task is only allowed to execute a few safe syscalls 1350 defined by each seccomp mode. 1351 1352 If unsure, say Y. Only embedded should say N here. 1353 1354config CC_STACKPROTECTOR_ALL 1355 bool 1356 1357config CC_STACKPROTECTOR 1358 bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)" | 1326 This kernel feature is useful for number crunching applications 1327 that may need to compute untrusted bytecode during their 1328 execution. By using pipes or other transports made available to 1329 the process as file descriptors supporting the read/write 1330 syscalls, it's possible to isolate those applications in 1331 their own address space using seccomp. Once seccomp is 1332 enabled via prctl(PR_SET_SECCOMP), it cannot be disabled 1333 and the task is only allowed to execute a few safe syscalls 1334 defined by each seccomp mode. 1335 1336 If unsure, say Y. Only embedded should say N here. 1337 1338config CC_STACKPROTECTOR_ALL 1339 bool 1340 1341config CC_STACKPROTECTOR 1342 bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)" |
1343 depends on X86_64 |
|
1359 select CC_STACKPROTECTOR_ALL | 1344 select CC_STACKPROTECTOR_ALL |
1360 help 1361 This option turns on the -fstack-protector GCC feature. This | 1345 ---help--- 1346 This option turns on the -fstack-protector GCC feature. This |
1362 feature puts, at the beginning of functions, a canary value on 1363 the stack just before the return address, and validates 1364 the value just before actually returning. Stack based buffer 1365 overflows (that need to overwrite this return address) now also 1366 overwrite the canary, which gets detected and the attack is then 1367 neutralized via a kernel panic. 1368 1369 This feature requires gcc version 4.2 or above, or a distribution 1370 gcc with the feature backported. Older versions are automatically 1371 detected and for those versions, this configuration option is 1372 ignored. (and a warning is printed during bootup) 1373 1374source kernel/Kconfig.hz 1375 1376config KEXEC 1377 bool "kexec system call" | 1347 feature puts, at the beginning of functions, a canary value on 1348 the stack just before the return address, and validates 1349 the value just before actually returning. Stack based buffer 1350 overflows (that need to overwrite this return address) now also 1351 overwrite the canary, which gets detected and the attack is then 1352 neutralized via a kernel panic. 1353 1354 This feature requires gcc version 4.2 or above, or a distribution 1355 gcc with the feature backported. Older versions are automatically 1356 detected and for those versions, this configuration option is 1357 ignored. (and a warning is printed during bootup) 1358 1359source kernel/Kconfig.hz 1360 1361config KEXEC 1362 bool "kexec system call" |
1378 depends on X86_BIOS_REBOOT 1379 help | 1363 ---help--- |
1380 kexec is a system call that implements the ability to shutdown your 1381 current kernel, and to start another kernel. It is like a reboot 1382 but it is independent of the system firmware. And like a reboot 1383 you can start any kernel with it, not just Linux. 1384 1385 The name comes from the similarity to the exec system call. 1386 1387 It is an ongoing process to be certain the hardware in a machine 1388 is properly shutdown, so do not be surprised if this code does not 1389 initially work for you. It may help to enable device hotplugging 1390 support. As of this writing the exact hardware interface is 1391 strongly in flux, so no good recommendation can be made. 1392 1393config CRASH_DUMP 1394 bool "kernel crash dumps" 1395 depends on X86_64 || (X86_32 && HIGHMEM) | 1364 kexec is a system call that implements the ability to shutdown your 1365 current kernel, and to start another kernel. It is like a reboot 1366 but it is independent of the system firmware. And like a reboot 1367 you can start any kernel with it, not just Linux. 1368 1369 The name comes from the similarity to the exec system call. 1370 1371 It is an ongoing process to be certain the hardware in a machine 1372 is properly shutdown, so do not be surprised if this code does not 1373 initially work for you. It may help to enable device hotplugging 1374 support. As of this writing the exact hardware interface is 1375 strongly in flux, so no good recommendation can be made. 1376 1377config CRASH_DUMP 1378 bool "kernel crash dumps" 1379 depends on X86_64 || (X86_32 && HIGHMEM) |
1396 help | 1380 ---help--- |
1397 Generate crash dump after being started by kexec. 1398 This should be normally only set in special crash dump kernels 1399 which are loaded in the main kernel with kexec-tools into 1400 a specially reserved region and then later executed after 1401 a crash by kdump/kexec. The crash dump kernel must be compiled 1402 to a memory address not used by the main kernel or BIOS using 1403 PHYSICAL_START, or it must be built as a relocatable image 1404 (CONFIG_RELOCATABLE=y). 1405 For more details see Documentation/kdump/kdump.txt 1406 1407config KEXEC_JUMP 1408 bool "kexec jump (EXPERIMENTAL)" 1409 depends on EXPERIMENTAL 1410 depends on KEXEC && HIBERNATION && X86_32 | 1381 Generate crash dump after being started by kexec. 1382 This should be normally only set in special crash dump kernels 1383 which are loaded in the main kernel with kexec-tools into 1384 a specially reserved region and then later executed after 1385 a crash by kdump/kexec. The crash dump kernel must be compiled 1386 to a memory address not used by the main kernel or BIOS using 1387 PHYSICAL_START, or it must be built as a relocatable image 1388 (CONFIG_RELOCATABLE=y). 1389 For more details see Documentation/kdump/kdump.txt 1390 1391config KEXEC_JUMP 1392 bool "kexec jump (EXPERIMENTAL)" 1393 depends on EXPERIMENTAL 1394 depends on KEXEC && HIBERNATION && X86_32 |
1411 help | 1395 ---help--- |
1412 Jump between original kernel and kexeced kernel and invoke 1413 code in physical address mode via KEXEC 1414 1415config PHYSICAL_START 1416 hex "Physical address where the kernel is loaded" if (EMBEDDED || CRASH_DUMP) 1417 default "0x1000000" if X86_NUMAQ 1418 default "0x200000" if X86_64 1419 default "0x100000" | 1396 Jump between original kernel and kexeced kernel and invoke 1397 code in physical address mode via KEXEC 1398 1399config PHYSICAL_START 1400 hex "Physical address where the kernel is loaded" if (EMBEDDED || CRASH_DUMP) 1401 default "0x1000000" if X86_NUMAQ 1402 default "0x200000" if X86_64 1403 default "0x100000" |
1420 help | 1404 ---help--- |
1421 This gives the physical address where the kernel is loaded. 1422 1423 If kernel is a not relocatable (CONFIG_RELOCATABLE=n) then 1424 bzImage will decompress itself to above physical address and 1425 run from there. Otherwise, bzImage will run from the address where 1426 it has been loaded by the boot loader and will ignore above physical 1427 address. 1428 --- 24 unchanged lines hidden (view full) --- 1453 vmlinux for dump capture. This option should go away down the 1454 line. 1455 1456 Don't change this unless you know what you are doing. 1457 1458config RELOCATABLE 1459 bool "Build a relocatable kernel (EXPERIMENTAL)" 1460 depends on EXPERIMENTAL | 1405 This gives the physical address where the kernel is loaded. 1406 1407 If kernel is a not relocatable (CONFIG_RELOCATABLE=n) then 1408 bzImage will decompress itself to above physical address and 1409 run from there. Otherwise, bzImage will run from the address where 1410 it has been loaded by the boot loader and will ignore above physical 1411 address. 1412 --- 24 unchanged lines hidden (view full) --- 1437 vmlinux for dump capture. This option should go away down the 1438 line. 1439 1440 Don't change this unless you know what you are doing. 1441 1442config RELOCATABLE 1443 bool "Build a relocatable kernel (EXPERIMENTAL)" 1444 depends on EXPERIMENTAL |
1461 help | 1445 ---help--- |
1462 This builds a kernel image that retains relocation information 1463 so it can be loaded someplace besides the default 1MB. 1464 The relocations tend to make the kernel binary about 10% larger, 1465 but are discarded at runtime. 1466 1467 One use is for the kexec on panic case where the recovery kernel 1468 must live at a different physical address than the primary 1469 kernel. 1470 1471 Note: If CONFIG_RELOCATABLE=y, then the kernel runs from the address 1472 it has been loaded at and the compile time physical address 1473 (CONFIG_PHYSICAL_START) is ignored. 1474 1475config PHYSICAL_ALIGN 1476 hex 1477 prompt "Alignment value to which kernel should be aligned" if X86_32 1478 default "0x100000" if X86_32 1479 default "0x200000" if X86_64 1480 range 0x2000 0x400000 | 1446 This builds a kernel image that retains relocation information 1447 so it can be loaded someplace besides the default 1MB. 1448 The relocations tend to make the kernel binary about 10% larger, 1449 but are discarded at runtime. 1450 1451 One use is for the kexec on panic case where the recovery kernel 1452 must live at a different physical address than the primary 1453 kernel. 1454 1455 Note: If CONFIG_RELOCATABLE=y, then the kernel runs from the address 1456 it has been loaded at and the compile time physical address 1457 (CONFIG_PHYSICAL_START) is ignored. 1458 1459config PHYSICAL_ALIGN 1460 hex 1461 prompt "Alignment value to which kernel should be aligned" if X86_32 1462 default "0x100000" if X86_32 1463 default "0x200000" if X86_64 1464 range 0x2000 0x400000 |
1481 help | 1465 ---help--- |
1482 This value puts the alignment restrictions on physical address 1483 where kernel is loaded and run from. Kernel is compiled for an 1484 address which meets above alignment restriction. 1485 1486 If bootloader loads the kernel at a non-aligned address and 1487 CONFIG_RELOCATABLE is set, kernel will move itself to nearest 1488 address aligned to above value and run from there. 1489 --- 4 unchanged lines hidden (view full) --- 1494 compiled already meets above alignment restrictions. Hence the 1495 end result is that kernel runs from a physical address meeting 1496 above alignment restrictions. 1497 1498 Don't change this unless you know what you are doing. 1499 1500config HOTPLUG_CPU 1501 bool "Support for hot-pluggable CPUs" | 1466 This value puts the alignment restrictions on physical address 1467 where kernel is loaded and run from. Kernel is compiled for an 1468 address which meets above alignment restriction. 1469 1470 If bootloader loads the kernel at a non-aligned address and 1471 CONFIG_RELOCATABLE is set, kernel will move itself to nearest 1472 address aligned to above value and run from there. 1473 --- 4 unchanged lines hidden (view full) --- 1478 compiled already meets above alignment restrictions. Hence the 1479 end result is that kernel runs from a physical address meeting 1480 above alignment restrictions. 1481 1482 Don't change this unless you know what you are doing. 1483 1484config HOTPLUG_CPU 1485 bool "Support for hot-pluggable CPUs" |
1502 depends on SMP && HOTPLUG && !X86_VOYAGER | 1486 depends on SMP && HOTPLUG |
1503 ---help--- 1504 Say Y here to allow turning CPUs off and on. CPUs can be 1505 controlled through /sys/devices/system/cpu. 1506 ( Note: power management support will enable this option 1507 automatically on SMP systems. ) 1508 Say N if you want to disable CPU hotplug. 1509 1510config COMPAT_VDSO 1511 def_bool y 1512 prompt "Compat VDSO support" 1513 depends on X86_32 || IA32_EMULATION | 1487 ---help--- 1488 Say Y here to allow turning CPUs off and on. CPUs can be 1489 controlled through /sys/devices/system/cpu. 1490 ( Note: power management support will enable this option 1491 automatically on SMP systems. ) 1492 Say N if you want to disable CPU hotplug. 1493 1494config COMPAT_VDSO 1495 def_bool y 1496 prompt "Compat VDSO support" 1497 depends on X86_32 || IA32_EMULATION |
1514 help | 1498 ---help--- |
1515 Map the 32-bit VDSO to the predictable old-style address too. 1516 ---help--- 1517 Say N here if you are running a sufficiently recent glibc 1518 version (2.3.3 or later), to remove the high-mapped 1519 VDSO mapping and to exclusively use the randomized VDSO. 1520 1521 If unsure, say Y. 1522 1523config CMDLINE_BOOL 1524 bool "Built-in kernel command line" 1525 default n | 1499 Map the 32-bit VDSO to the predictable old-style address too. 1500 ---help--- 1501 Say N here if you are running a sufficiently recent glibc 1502 version (2.3.3 or later), to remove the high-mapped 1503 VDSO mapping and to exclusively use the randomized VDSO. 1504 1505 If unsure, say Y. 1506 1507config CMDLINE_BOOL 1508 bool "Built-in kernel command line" 1509 default n |
1526 help | 1510 ---help--- |
1527 Allow for specifying boot arguments to the kernel at 1528 build time. On some systems (e.g. embedded ones), it is 1529 necessary or convenient to provide some or all of the 1530 kernel boot arguments with the kernel itself (that is, 1531 to not rely on the boot loader to provide them.) 1532 1533 To compile command line arguments into the kernel, 1534 set this option to 'Y', then fill in the 1535 the boot arguments in CONFIG_CMDLINE. 1536 1537 Systems with fully functional boot loaders (i.e. non-embedded) 1538 should leave this option set to 'N'. 1539 1540config CMDLINE 1541 string "Built-in kernel command string" 1542 depends on CMDLINE_BOOL 1543 default "" | 1511 Allow for specifying boot arguments to the kernel at 1512 build time. On some systems (e.g. embedded ones), it is 1513 necessary or convenient to provide some or all of the 1514 kernel boot arguments with the kernel itself (that is, 1515 to not rely on the boot loader to provide them.) 1516 1517 To compile command line arguments into the kernel, 1518 set this option to 'Y', then fill in the 1519 the boot arguments in CONFIG_CMDLINE. 1520 1521 Systems with fully functional boot loaders (i.e. non-embedded) 1522 should leave this option set to 'N'. 1523 1524config CMDLINE 1525 string "Built-in kernel command string" 1526 depends on CMDLINE_BOOL 1527 default "" |
1544 help | 1528 ---help--- |
1545 Enter arguments here that should be compiled into the kernel 1546 image and used at boot time. If the boot loader provides a 1547 command line at boot time, it is appended to this string to 1548 form the full kernel command line, when the system boots. 1549 1550 However, you can use the CONFIG_CMDLINE_OVERRIDE option to 1551 change this behavior. 1552 1553 In most cases, the command line (whether built-in or provided 1554 by the boot loader) should specify the device for the root 1555 file system. 1556 1557config CMDLINE_OVERRIDE 1558 bool "Built-in command line overrides boot loader arguments" 1559 default n 1560 depends on CMDLINE_BOOL | 1529 Enter arguments here that should be compiled into the kernel 1530 image and used at boot time. If the boot loader provides a 1531 command line at boot time, it is appended to this string to 1532 form the full kernel command line, when the system boots. 1533 1534 However, you can use the CONFIG_CMDLINE_OVERRIDE option to 1535 change this behavior. 1536 1537 In most cases, the command line (whether built-in or provided 1538 by the boot loader) should specify the device for the root 1539 file system. 1540 1541config CMDLINE_OVERRIDE 1542 bool "Built-in command line overrides boot loader arguments" 1543 default n 1544 depends on CMDLINE_BOOL |
1561 help | 1545 ---help--- |
1562 Set this option to 'Y' to have the kernel ignore the boot loader 1563 command line, and use ONLY the built-in command line. 1564 1565 This is used to work around broken boot loaders. This should 1566 be set to 'N' under normal conditions. 1567 1568endmenu 1569 --- 5 unchanged lines hidden (view full) --- 1575 def_bool y 1576 depends on MEMORY_HOTPLUG 1577 1578config HAVE_ARCH_EARLY_PFN_TO_NID 1579 def_bool X86_64 1580 depends on NUMA 1581 1582menu "Power management and ACPI options" | 1546 Set this option to 'Y' to have the kernel ignore the boot loader 1547 command line, and use ONLY the built-in command line. 1548 1549 This is used to work around broken boot loaders. This should 1550 be set to 'N' under normal conditions. 1551 1552endmenu 1553 --- 5 unchanged lines hidden (view full) --- 1559 def_bool y 1560 depends on MEMORY_HOTPLUG 1561 1562config HAVE_ARCH_EARLY_PFN_TO_NID 1563 def_bool X86_64 1564 depends on NUMA 1565 1566menu "Power management and ACPI options" |
1583 depends on !X86_VOYAGER | |
1584 1585config ARCH_HIBERNATION_HEADER 1586 def_bool y 1587 depends on X86_64 && HIBERNATION 1588 1589source "kernel/power/Kconfig" 1590 1591source "drivers/acpi/Kconfig" --- 61 unchanged lines hidden (view full) --- 1653 1654 To compile this driver as a module, choose M here: the 1655 module will be called apm. 1656 1657if APM 1658 1659config APM_IGNORE_USER_SUSPEND 1660 bool "Ignore USER SUSPEND" | 1567 1568config ARCH_HIBERNATION_HEADER 1569 def_bool y 1570 depends on X86_64 && HIBERNATION 1571 1572source "kernel/power/Kconfig" 1573 1574source "drivers/acpi/Kconfig" --- 61 unchanged lines hidden (view full) --- 1636 1637 To compile this driver as a module, choose M here: the 1638 module will be called apm. 1639 1640if APM 1641 1642config APM_IGNORE_USER_SUSPEND 1643 bool "Ignore USER SUSPEND" |
1661 help | 1644 ---help--- |
1662 This option will ignore USER SUSPEND requests. On machines with a 1663 compliant APM BIOS, you want to say N. However, on the NEC Versa M 1664 series notebooks, it is necessary to say Y because of a BIOS bug. 1665 1666config APM_DO_ENABLE 1667 bool "Enable PM at boot time" 1668 ---help--- 1669 Enable APM features at boot time. From page 36 of the APM BIOS --- 7 unchanged lines hidden (view full) --- 1677 this option off if your computer hangs at boot time when using APM 1678 support, or if it beeps continuously instead of suspending. Turn 1679 this off if you have a NEC UltraLite Versa 33/C or a Toshiba 1680 T400CDT. This is off by default since most machines do fine without 1681 this feature. 1682 1683config APM_CPU_IDLE 1684 bool "Make CPU Idle calls when idle" | 1645 This option will ignore USER SUSPEND requests. On machines with a 1646 compliant APM BIOS, you want to say N. However, on the NEC Versa M 1647 series notebooks, it is necessary to say Y because of a BIOS bug. 1648 1649config APM_DO_ENABLE 1650 bool "Enable PM at boot time" 1651 ---help--- 1652 Enable APM features at boot time. From page 36 of the APM BIOS --- 7 unchanged lines hidden (view full) --- 1660 this option off if your computer hangs at boot time when using APM 1661 support, or if it beeps continuously instead of suspending. Turn 1662 this off if you have a NEC UltraLite Versa 33/C or a Toshiba 1663 T400CDT. This is off by default since most machines do fine without 1664 this feature. 1665 1666config APM_CPU_IDLE 1667 bool "Make CPU Idle calls when idle" |
1685 help | 1668 ---help--- |
1686 Enable calls to APM CPU Idle/CPU Busy inside the kernel's idle loop. 1687 On some machines, this can activate improved power savings, such as 1688 a slowed CPU clock rate, when the machine is idle. These idle calls 1689 are made after the idle loop has run for some length of time (e.g., 1690 333 mS). On some machines, this will cause a hang at boot time or 1691 whenever the CPU becomes idle. (On machines with more than one CPU, 1692 this option does nothing.) 1693 1694config APM_DISPLAY_BLANK 1695 bool "Enable console blanking using APM" | 1669 Enable calls to APM CPU Idle/CPU Busy inside the kernel's idle loop. 1670 On some machines, this can activate improved power savings, such as 1671 a slowed CPU clock rate, when the machine is idle. These idle calls 1672 are made after the idle loop has run for some length of time (e.g., 1673 333 mS). On some machines, this will cause a hang at boot time or 1674 whenever the CPU becomes idle. (On machines with more than one CPU, 1675 this option does nothing.) 1676 1677config APM_DISPLAY_BLANK 1678 bool "Enable console blanking using APM" |
1696 help | 1679 ---help--- |
1697 Enable console blanking using the APM. Some laptops can use this to 1698 turn off the LCD backlight when the screen blanker of the Linux 1699 virtual console blanks the screen. Note that this is only used by 1700 the virtual console screen blanker, and won't turn off the backlight 1701 when using the X Window system. This also doesn't have anything to 1702 do with your VESA-compliant power-saving monitor. Further, this 1703 option doesn't work for all laptops -- it might not turn off your 1704 backlight at all, or it might print a lot of errors to the console, 1705 especially if you are using gpm. 1706 1707config APM_ALLOW_INTS 1708 bool "Allow interrupts during APM BIOS calls" | 1680 Enable console blanking using the APM. Some laptops can use this to 1681 turn off the LCD backlight when the screen blanker of the Linux 1682 virtual console blanks the screen. Note that this is only used by 1683 the virtual console screen blanker, and won't turn off the backlight 1684 when using the X Window system. This also doesn't have anything to 1685 do with your VESA-compliant power-saving monitor. Further, this 1686 option doesn't work for all laptops -- it might not turn off your 1687 backlight at all, or it might print a lot of errors to the console, 1688 especially if you are using gpm. 1689 1690config APM_ALLOW_INTS 1691 bool "Allow interrupts during APM BIOS calls" |
1709 help | 1692 ---help--- |
1710 Normally we disable external interrupts while we are making calls to 1711 the APM BIOS as a measure to lessen the effects of a badly behaving 1712 BIOS implementation. The BIOS should reenable interrupts if it 1713 needs to. Unfortunately, some BIOSes do not -- especially those in 1714 many of the newer IBM Thinkpads. If you experience hangs when you 1715 suspend, try setting this to Y. Otherwise, say N. 1716 1717endif # APM --- 8 unchanged lines hidden (view full) --- 1726 1727 1728menu "Bus options (PCI etc.)" 1729 1730config PCI 1731 bool "PCI support" 1732 default y 1733 select ARCH_SUPPORTS_MSI if (X86_LOCAL_APIC && X86_IO_APIC) | 1693 Normally we disable external interrupts while we are making calls to 1694 the APM BIOS as a measure to lessen the effects of a badly behaving 1695 BIOS implementation. The BIOS should reenable interrupts if it 1696 needs to. Unfortunately, some BIOSes do not -- especially those in 1697 many of the newer IBM Thinkpads. If you experience hangs when you 1698 suspend, try setting this to Y. Otherwise, say N. 1699 1700endif # APM --- 8 unchanged lines hidden (view full) --- 1709 1710 1711menu "Bus options (PCI etc.)" 1712 1713config PCI 1714 bool "PCI support" 1715 default y 1716 select ARCH_SUPPORTS_MSI if (X86_LOCAL_APIC && X86_IO_APIC) |
1734 help | 1717 ---help--- |
1735 Find out whether you have a PCI motherboard. PCI is the name of a 1736 bus system, i.e. the way the CPU talks to the other stuff inside 1737 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or 1738 VESA. If you have PCI, say Y, otherwise N. 1739 1740choice 1741 prompt "PCI access mode" 1742 depends on X86_32 && PCI --- 54 unchanged lines hidden (view full) --- 1797 1798config PCI_MMCONFIG 1799 bool "Support mmconfig PCI config space access" 1800 depends on X86_64 && PCI && ACPI 1801 1802config DMAR 1803 bool "Support for DMA Remapping Devices (EXPERIMENTAL)" 1804 depends on X86_64 && PCI_MSI && ACPI && EXPERIMENTAL | 1718 Find out whether you have a PCI motherboard. PCI is the name of a 1719 bus system, i.e. the way the CPU talks to the other stuff inside 1720 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or 1721 VESA. If you have PCI, say Y, otherwise N. 1722 1723choice 1724 prompt "PCI access mode" 1725 depends on X86_32 && PCI --- 54 unchanged lines hidden (view full) --- 1780 1781config PCI_MMCONFIG 1782 bool "Support mmconfig PCI config space access" 1783 depends on X86_64 && PCI && ACPI 1784 1785config DMAR 1786 bool "Support for DMA Remapping Devices (EXPERIMENTAL)" 1787 depends on X86_64 && PCI_MSI && ACPI && EXPERIMENTAL |
1805 help | 1788 ---help--- |
1806 DMA remapping (DMAR) devices support enables independent address 1807 translations for Direct Memory Access (DMA) from devices. 1808 These DMA remapping devices are reported via ACPI tables 1809 and include PCI device scope covered by these DMA 1810 remapping devices. 1811 1812config DMAR_DEFAULT_ON 1813 def_bool n --- 5 unchanged lines hidden (view full) --- 1819 be enabled by passing intel_iommu=on to the kernel. It is 1820 recommended you say N here while the DMAR code remains 1821 experimental. 1822 1823config DMAR_GFX_WA 1824 def_bool y 1825 prompt "Support for Graphics workaround" 1826 depends on DMAR | 1789 DMA remapping (DMAR) devices support enables independent address 1790 translations for Direct Memory Access (DMA) from devices. 1791 These DMA remapping devices are reported via ACPI tables 1792 and include PCI device scope covered by these DMA 1793 remapping devices. 1794 1795config DMAR_DEFAULT_ON 1796 def_bool n --- 5 unchanged lines hidden (view full) --- 1802 be enabled by passing intel_iommu=on to the kernel. It is 1803 recommended you say N here while the DMAR code remains 1804 experimental. 1805 1806config DMAR_GFX_WA 1807 def_bool y 1808 prompt "Support for Graphics workaround" 1809 depends on DMAR |
1827 help 1828 Current Graphics drivers tend to use physical address 1829 for DMA and avoid using DMA APIs. Setting this config 1830 option permits the IOMMU driver to set a unity map for 1831 all the OS-visible memory. Hence the driver can continue 1832 to use physical addresses for DMA. | 1810 ---help--- 1811 Current Graphics drivers tend to use physical address 1812 for DMA and avoid using DMA APIs. Setting this config 1813 option permits the IOMMU driver to set a unity map for 1814 all the OS-visible memory. Hence the driver can continue 1815 to use physical addresses for DMA. |
1833 1834config DMAR_FLOPPY_WA 1835 def_bool y 1836 depends on DMAR | 1816 1817config DMAR_FLOPPY_WA 1818 def_bool y 1819 depends on DMAR |
1837 help 1838 Floppy disk drivers are know to bypass DMA API calls 1839 thereby failing to work when IOMMU is enabled. This 1840 workaround will setup a 1:1 mapping for the first 1841 16M to make floppy (an ISA device) work. | 1820 ---help--- 1821 Floppy disk drivers are know to bypass DMA API calls 1822 thereby failing to work when IOMMU is enabled. This 1823 workaround will setup a 1:1 mapping for the first 1824 16M to make floppy (an ISA device) work. |
1842 1843config INTR_REMAP 1844 bool "Support for Interrupt Remapping (EXPERIMENTAL)" 1845 depends on X86_64 && X86_IO_APIC && PCI_MSI && ACPI && EXPERIMENTAL | 1825 1826config INTR_REMAP 1827 bool "Support for Interrupt Remapping (EXPERIMENTAL)" 1828 depends on X86_64 && X86_IO_APIC && PCI_MSI && ACPI && EXPERIMENTAL |
1846 help 1847 Supports Interrupt remapping for IO-APIC and MSI devices. 1848 To use x2apic mode in the CPU's which support x2APIC enhancements or 1849 to support platforms with CPU's having > 8 bit APIC ID, say Y. | 1829 ---help--- 1830 Supports Interrupt remapping for IO-APIC and MSI devices. 1831 To use x2apic mode in the CPU's which support x2APIC enhancements or 1832 to support platforms with CPU's having > 8 bit APIC ID, say Y. |
1850 1851source "drivers/pci/pcie/Kconfig" 1852 1853source "drivers/pci/Kconfig" 1854 1855# x86_64 have no ISA slots, but do have ISA-style DMA. 1856config ISA_DMA_API 1857 def_bool y 1858 1859if X86_32 1860 1861config ISA 1862 bool "ISA support" | 1833 1834source "drivers/pci/pcie/Kconfig" 1835 1836source "drivers/pci/Kconfig" 1837 1838# x86_64 have no ISA slots, but do have ISA-style DMA. 1839config ISA_DMA_API 1840 def_bool y 1841 1842if X86_32 1843 1844config ISA 1845 bool "ISA support" |
1863 depends on !X86_VOYAGER 1864 help | 1846 ---help--- |
1865 Find out whether you have ISA slots on your motherboard. ISA is the 1866 name of a bus system, i.e. the way the CPU talks to the other stuff 1867 inside your box. Other bus systems are PCI, EISA, MicroChannel 1868 (MCA) or VESA. ISA is an older system, now being displaced by PCI; 1869 newer boards don't support it. If you have ISA, say Y, otherwise N. 1870 1871config EISA 1872 bool "EISA support" --- 9 unchanged lines hidden (view full) --- 1882 1883 Say Y here if you are building a kernel for an EISA-based machine. 1884 1885 Otherwise, say N. 1886 1887source "drivers/eisa/Kconfig" 1888 1889config MCA | 1847 Find out whether you have ISA slots on your motherboard. ISA is the 1848 name of a bus system, i.e. the way the CPU talks to the other stuff 1849 inside your box. Other bus systems are PCI, EISA, MicroChannel 1850 (MCA) or VESA. ISA is an older system, now being displaced by PCI; 1851 newer boards don't support it. If you have ISA, say Y, otherwise N. 1852 1853config EISA 1854 bool "EISA support" --- 9 unchanged lines hidden (view full) --- 1864 1865 Say Y here if you are building a kernel for an EISA-based machine. 1866 1867 Otherwise, say N. 1868 1869source "drivers/eisa/Kconfig" 1870 1871config MCA |
1890 bool "MCA support" if !X86_VOYAGER 1891 default y if X86_VOYAGER 1892 help | 1872 bool "MCA support" 1873 ---help--- |
1893 MicroChannel Architecture is found in some IBM PS/2 machines and 1894 laptops. It is a bus system similar to PCI or ISA. See 1895 <file:Documentation/mca.txt> (and especially the web page given 1896 there) before attempting to build an MCA bus kernel. 1897 1898source "drivers/mca/Kconfig" 1899 1900config SCx200 1901 tristate "NatSemi SCx200 support" | 1874 MicroChannel Architecture is found in some IBM PS/2 machines and 1875 laptops. It is a bus system similar to PCI or ISA. See 1876 <file:Documentation/mca.txt> (and especially the web page given 1877 there) before attempting to build an MCA bus kernel. 1878 1879source "drivers/mca/Kconfig" 1880 1881config SCx200 1882 tristate "NatSemi SCx200 support" |
1902 depends on !X86_VOYAGER 1903 help | 1883 ---help--- |
1904 This provides basic support for National Semiconductor's 1905 (now AMD's) Geode processors. The driver probes for the 1906 PCI-IDs of several on-chip devices, so its a good dependency 1907 for other scx200_* drivers. 1908 1909 If compiled as a module, the driver is named scx200. 1910 1911config SCx200HR_TIMER 1912 tristate "NatSemi SCx200 27MHz High-Resolution Timer Support" 1913 depends on SCx200 && GENERIC_TIME 1914 default y | 1884 This provides basic support for National Semiconductor's 1885 (now AMD's) Geode processors. The driver probes for the 1886 PCI-IDs of several on-chip devices, so its a good dependency 1887 for other scx200_* drivers. 1888 1889 If compiled as a module, the driver is named scx200. 1890 1891config SCx200HR_TIMER 1892 tristate "NatSemi SCx200 27MHz High-Resolution Timer Support" 1893 depends on SCx200 && GENERIC_TIME 1894 default y |
1915 help | 1895 ---help--- |
1916 This driver provides a clocksource built upon the on-chip 1917 27MHz high-resolution timer. Its also a workaround for 1918 NSC Geode SC-1100's buggy TSC, which loses time when the 1919 processor goes idle (as is done by the scheduler). The 1920 other workaround is idle=poll boot option. 1921 1922config GEODE_MFGPT_TIMER 1923 def_bool y 1924 prompt "Geode Multi-Function General Purpose Timer (MFGPT) events" 1925 depends on MGEODE_LX && GENERIC_TIME && GENERIC_CLOCKEVENTS | 1896 This driver provides a clocksource built upon the on-chip 1897 27MHz high-resolution timer. Its also a workaround for 1898 NSC Geode SC-1100's buggy TSC, which loses time when the 1899 processor goes idle (as is done by the scheduler). The 1900 other workaround is idle=poll boot option. 1901 1902config GEODE_MFGPT_TIMER 1903 def_bool y 1904 prompt "Geode Multi-Function General Purpose Timer (MFGPT) events" 1905 depends on MGEODE_LX && GENERIC_TIME && GENERIC_CLOCKEVENTS |
1926 help | 1906 ---help--- |
1927 This driver provides a clock event source based on the MFGPT 1928 timer(s) in the CS5535 and CS5536 companion chip for the geode. 1929 MFGPTs have a better resolution and max interval than the 1930 generic PIT, and are suitable for use as high-res timers. 1931 1932config OLPC 1933 bool "One Laptop Per Child support" 1934 default n | 1907 This driver provides a clock event source based on the MFGPT 1908 timer(s) in the CS5535 and CS5536 companion chip for the geode. 1909 MFGPTs have a better resolution and max interval than the 1910 generic PIT, and are suitable for use as high-res timers. 1911 1912config OLPC 1913 bool "One Laptop Per Child support" 1914 default n |
1935 help | 1915 ---help--- |
1936 Add support for detecting the unique features of the OLPC 1937 XO hardware. 1938 1939endif # X86_32 1940 1941config K8_NB 1942 def_bool y 1943 depends on AGP_AMD64 || (X86_64 && (GART_IOMMU || (PCI && NUMA))) --- 8 unchanged lines hidden (view full) --- 1952menu "Executable file formats / Emulations" 1953 1954source "fs/Kconfig.binfmt" 1955 1956config IA32_EMULATION 1957 bool "IA32 Emulation" 1958 depends on X86_64 1959 select COMPAT_BINFMT_ELF | 1916 Add support for detecting the unique features of the OLPC 1917 XO hardware. 1918 1919endif # X86_32 1920 1921config K8_NB 1922 def_bool y 1923 depends on AGP_AMD64 || (X86_64 && (GART_IOMMU || (PCI && NUMA))) --- 8 unchanged lines hidden (view full) --- 1932menu "Executable file formats / Emulations" 1933 1934source "fs/Kconfig.binfmt" 1935 1936config IA32_EMULATION 1937 bool "IA32 Emulation" 1938 depends on X86_64 1939 select COMPAT_BINFMT_ELF |
1960 help | 1940 ---help--- |
1961 Include code to run 32-bit programs under a 64-bit kernel. You should 1962 likely turn this on, unless you're 100% sure that you don't have any 1963 32-bit programs left. 1964 1965config IA32_AOUT | 1941 Include code to run 32-bit programs under a 64-bit kernel. You should 1942 likely turn this on, unless you're 100% sure that you don't have any 1943 32-bit programs left. 1944 1945config IA32_AOUT |
1966 tristate "IA32 a.out support" 1967 depends on IA32_EMULATION 1968 help 1969 Support old a.out binaries in the 32bit emulation. | 1946 tristate "IA32 a.out support" 1947 depends on IA32_EMULATION 1948 ---help--- 1949 Support old a.out binaries in the 32bit emulation. |
1970 1971config COMPAT 1972 def_bool y 1973 depends on IA32_EMULATION 1974 1975config COMPAT_FOR_U64_ALIGNMENT 1976 def_bool COMPAT 1977 depends on X86_64 --- 29 unchanged lines hidden --- | 1950 1951config COMPAT 1952 def_bool y 1953 depends on IA32_EMULATION 1954 1955config COMPAT_FOR_U64_ALIGNMENT 1956 def_bool COMPAT 1957 depends on X86_64 --- 29 unchanged lines hidden --- |