VServer 1.9.2 (patch-2.6.8.1-vs1.9.2.diff)
[linux-2.6.git] / arch / i386 / Kconfig
1 #
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
4 #
5
6 mainmenu "Linux Kernel Configuration"
7
8 config X86
9         bool
10         default y
11         help
12           This is Linux's home port.  Linux was originally native to the Intel
13           386, and runs on all the later x86 processors including the Intel
14           486, 586, Pentiums, and various instruction-set-compatible chips by
15           AMD, Cyrix, and others.
16
17 config MMU
18         bool
19         default y
20
21 config SBUS
22         bool
23
24 config UID16
25         bool
26         default y
27
28 config GENERIC_ISA_DMA
29         bool
30         default y
31
32 source "init/Kconfig"
33
34
35 menu "Processor type and features"
36
37 choice
38         prompt "Subarchitecture Type"
39         default X86_PC
40
41 config X86_PC
42         bool "PC-compatible"
43         help
44           Choose this option if your computer is a standard PC or compatible.
45
46 config X86_ELAN
47         bool "AMD Elan"
48         help
49           Select this for an AMD Elan processor.
50
51           Do not use this option for K6/Athlon/Opteron processors!
52
53           If unsure, choose "PC-compatible" instead.
54
55 config X86_VOYAGER
56         bool "Voyager (NCR)"
57         help
58           Voyager is a MCA based 32 way capable SMP architecture proprietary
59           to NCR Corp.  Machine classes 345x/35xx/4100/51xx are voyager based.
60           
61           *** WARNING ***
62         
63           If you do not specifically know you have a Voyager based machine,
64           say N here otherwise the kernel you build will not be bootable.
65
66 config X86_NUMAQ
67         bool "NUMAQ (IBM/Sequent)"
68         select DISCONTIGMEM
69         select NUMA
70         help
71           This option is used for getting Linux to run on a (IBM/Sequent) NUMA 
72           multiquad box. This changes the way that processors are bootstrapped,
73           and uses Clustered Logical APIC addressing mode instead of Flat Logical.
74           You will need a new lynxer.elf file to flash your firmware with - send
75           email to <Martin.Bligh@us.ibm.com>.
76
77 config X86_SUMMIT
78         bool "Summit/EXA (IBM x440)"
79         depends on SMP
80         help
81           This option is needed for IBM systems that use the Summit/EXA chipset.
82           In particular, it is needed for the x440.
83
84           If you don't have one of these computers, you should say N here.
85
86 config X86_BIGSMP
87         bool "Support for other sub-arch SMP systems with more than 8 CPUs"
88         depends on SMP
89         help
90           This option is needed for the systems that have more than 8 CPUs
91           and if the system is not of any sub-arch type above.
92
93           If you don't have such a system, you should say N here.
94
95 config X86_VISWS
96         bool "SGI 320/540 (Visual Workstation)"
97         help
98           The SGI Visual Workstation series is an IA32-based workstation
99           based on SGI systems chips with some legacy PC hardware attached.
100
101           Say Y here to create a kernel to run on the SGI 320 or 540.
102
103           A kernel compiled for the Visual Workstation will not run on PCs
104           and vice versa. See <file:Documentation/sgi-visws.txt> for details.
105
106 config X86_GENERICARCH
107        bool "Generic architecture (Summit, bigsmp, ES7000, default)"
108        depends on SMP
109        help
110           This option compiles in the Summit, bigsmp, ES7000, default subarchitectures.
111           It is intended for a generic binary kernel.
112
113 config X86_ES7000
114         bool "Support for Unisys ES7000 IA32 series"
115         depends on SMP
116         help
117           Support for Unisys ES7000 systems.  Say 'Y' here if this kernel is
118           supposed to run on an IA32-based Unisys ES7000 system. 
119           Only choose this option if you have such a system, otherwise you 
120           should say N here.
121
122 endchoice
123
124 config ACPI_SRAT
125         bool
126         default y
127         depends on NUMA && (X86_SUMMIT || X86_GENERICARCH)
128
129 config X86_SUMMIT_NUMA
130         bool
131         default y
132         depends on NUMA && (X86_SUMMIT || X86_GENERICARCH)
133
134 config X86_CYCLONE_TIMER
135         bool
136         default y
137         depends on X86_SUMMIT || X86_GENERICARCH
138
139 config ES7000_CLUSTERED_APIC
140         bool
141         default y
142         depends on SMP && X86_ES7000 && MPENTIUMIII
143
144 if !X86_ELAN
145
146 choice
147         prompt "Processor family"
148         default M686
149
150 config M386
151         bool "386"
152         ---help---
153           This is the processor type of your CPU. This information is used for
154           optimizing purposes. In order to compile a kernel that can run on
155           all x86 CPU types (albeit not optimally fast), you can specify
156           "386" here.
157
158           The kernel will not necessarily run on earlier architectures than
159           the one you have chosen, e.g. a Pentium optimized kernel will run on
160           a PPro, but not necessarily on a i486.
161
162           Here are the settings recommended for greatest speed:
163           - "386" for the AMD/Cyrix/Intel 386DX/DXL/SL/SLC/SX, Cyrix/TI
164           486DLC/DLC2, UMC 486SX-S and NexGen Nx586.  Only "386" kernels
165           will run on a 386 class machine.
166           - "486" for the AMD/Cyrix/IBM/Intel 486DX/DX2/DX4 or
167           SL/SLC/SLC2/SLC3/SX/SX2 and UMC U5D or U5S.
168           - "586" for generic Pentium CPUs lacking the TSC
169           (time stamp counter) register.
170           - "Pentium-Classic" for the Intel Pentium.
171           - "Pentium-MMX" for the Intel Pentium MMX.
172           - "Pentium-Pro" for the Intel Pentium Pro.
173           - "Pentium-II" for the Intel Pentium II or pre-Coppermine Celeron.
174           - "Pentium-III" for the Intel Pentium III or Coppermine Celeron.
175           - "Pentium-4" for the Intel Pentium 4 or P4-based Celeron.
176           - "K6" for the AMD K6, K6-II and K6-III (aka K6-3D).
177           - "Athlon" for the AMD K7 family (Athlon/Duron/Thunderbird).
178           - "Crusoe" for the Transmeta Crusoe series.
179           - "Winchip-C6" for original IDT Winchip.
180           - "Winchip-2" for IDT Winchip 2.
181           - "Winchip-2A" for IDT Winchips with 3dNow! capabilities.
182           - "CyrixIII/VIA C3" for VIA Cyrix III or VIA C3.
183           - "VIA C3-2 for VIA C3-2 "Nehemiah" (model 9 and above).
184
185           If you don't know what to do, choose "386".
186
187 config M486
188         bool "486"
189         help
190           Select this for a 486 series processor, either Intel or one of the
191           compatible processors from AMD, Cyrix, IBM, or Intel.  Includes DX,
192           DX2, and DX4 variants; also SL/SLC/SLC2/SLC3/SX/SX2 and UMC U5D or
193           U5S.
194
195 config M586
196         bool "586/K5/5x86/6x86/6x86MX"
197         help
198           Select this for an 586 or 686 series processor such as the AMD K5,
199           the Intel 5x86 or 6x86, or the Intel 6x86MX.  This choice does not
200           assume the RDTSC (Read Time Stamp Counter) instruction.
201
202 config M586TSC
203         bool "Pentium-Classic"
204         help
205           Select this for a Pentium Classic processor with the RDTSC (Read
206           Time Stamp Counter) instruction for benchmarking.
207
208 config M586MMX
209         bool "Pentium-MMX"
210         help
211           Select this for a Pentium with the MMX graphics/multimedia
212           extended instructions.
213
214 config M686
215         bool "Pentium-Pro"
216         help
217           Select this for Intel Pentium Pro chips.  This enables the use of
218           Pentium Pro extended instructions, and disables the init-time guard
219           against the f00f bug found in earlier Pentiums.
220
221 config MPENTIUMII
222         bool "Pentium-II/Celeron(pre-Coppermine)"
223         help
224           Select this for Intel chips based on the Pentium-II and
225           pre-Coppermine Celeron core.  This option enables an unaligned
226           copy optimization, compiles the kernel with optimization flags
227           tailored for the chip, and applies any applicable Pentium Pro
228           optimizations.
229
230 config MPENTIUMIII
231         bool "Pentium-III/Celeron(Coppermine)/Pentium-III Xeon"
232         help
233           Select this for Intel chips based on the Pentium-III and
234           Celeron-Coppermine core.  This option enables use of some
235           extended prefetch instructions in addition to the Pentium II
236           extensions.
237
238 config MPENTIUMM
239         bool "Pentium M"
240         help
241           Select this for Intel Pentium M (not Pentium-4 M)
242           notebook chips.
243
244 config MPENTIUM4
245         bool "Pentium-4/Celeron(P4-based)/Pentium-4 M/Xeon"
246         help
247           Select this for Intel Pentium 4 chips.  This includes the
248           Pentium 4, P4-based Celeron and Xeon, and Pentium-4 M
249           (not Pentium M) chips.  This option enables compile flags
250           optimized for the chip, uses the correct cache shift, and
251           applies any applicable Pentium III optimizations.
252
253 config MK6
254         bool "K6/K6-II/K6-III"
255         help
256           Select this for an AMD K6-family processor.  Enables use of
257           some extended instructions, and passes appropriate optimization
258           flags to GCC.
259
260 config MK7
261         bool "Athlon/Duron/K7"
262         help
263           Select this for an AMD Athlon K7-family processor.  Enables use of
264           some extended instructions, and passes appropriate optimization
265           flags to GCC.
266
267 config MK8
268         bool "Opteron/Athlon64/Hammer/K8"
269         help
270           Select this for an AMD Opteron or Athlon64 Hammer-family processor.  Enables
271           use of some extended instructions, and passes appropriate optimization
272           flags to GCC.
273
274 config MCRUSOE
275         bool "Crusoe"
276         help
277           Select this for a Transmeta Crusoe processor.  Treats the processor
278           like a 586 with TSC, and sets some GCC optimization flags (like a
279           Pentium Pro with no alignment requirements).
280
281 config MWINCHIPC6
282         bool "Winchip-C6"
283         help
284           Select this for an IDT Winchip C6 chip.  Linux and GCC
285           treat this chip as a 586TSC with some extended instructions
286           and alignment requirements.
287
288 config MWINCHIP2
289         bool "Winchip-2"
290         help
291           Select this for an IDT Winchip-2.  Linux and GCC
292           treat this chip as a 586TSC with some extended instructions
293           and alignment requirements.
294
295 config MWINCHIP3D
296         bool "Winchip-2A/Winchip-3"
297         help
298           Select this for an IDT Winchip-2A or 3.  Linux and GCC
299           treat this chip as a 586TSC with some extended instructions
300           and alignment reqirements.  Also enable out of order memory
301           stores for this CPU, which can increase performance of some
302           operations.
303
304 config MCYRIXIII
305         bool "CyrixIII/VIA-C3"
306         help
307           Select this for a Cyrix III or C3 chip.  Presently Linux and GCC
308           treat this chip as a generic 586. Whilst the CPU is 686 class,
309           it lacks the cmov extension which gcc assumes is present when
310           generating 686 code.
311           Note that Nehemiah (Model 9) and above will not boot with this
312           kernel due to them lacking the 3DNow! instructions used in earlier
313           incarnations of the CPU.
314
315 config MVIAC3_2
316         bool "VIA C3-2 (Nehemiah)"
317         help
318           Select this for a VIA C3 "Nehemiah". Selecting this enables usage
319           of SSE and tells gcc to treat the CPU as a 686.
320           Note, this kernel will not boot on older (pre model 9) C3s.
321
322 endchoice
323
324 config X86_GENERIC
325        bool "Generic x86 support" 
326        help
327           Instead of just including optimizations for the selected
328           x86 variant (e.g. PII, Crusoe or Athlon), include some more
329           generic optimizations as well. This will make the kernel
330           perform better on x86 CPUs other than that selected.
331
332           This is really intended for distributors who need more
333           generic optimizations.
334
335 endif
336
337 #
338 # Define implied options from the CPU selection here
339 #
340 config X86_CMPXCHG
341         bool
342         depends on !M386
343         default y
344
345 config X86_XADD
346         bool
347         depends on !M386
348         default y
349
350 config X86_L1_CACHE_SHIFT
351         int
352         default "7" if MPENTIUM4 || X86_GENERIC
353         default "4" if X86_ELAN || M486 || M386
354         default "5" if MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCRUSOE || MCYRIXIII || MK6 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || M586 || MVIAC3_2
355         default "6" if MK7 || MK8 || MPENTIUMM
356
357 config RWSEM_GENERIC_SPINLOCK
358         bool
359         depends on M386
360         default y
361
362 config RWSEM_XCHGADD_ALGORITHM
363         bool
364         depends on !M386
365         default y
366
367 config X86_PPRO_FENCE
368         bool
369         depends on M686 || M586MMX || M586TSC || M586 || M486 || M386
370         default y
371
372 config X86_F00F_BUG
373         bool
374         depends on M586MMX || M586TSC || M586 || M486 || M386
375         default y
376
377 config X86_WP_WORKS_OK
378         bool
379         depends on !M386
380         default y
381
382 config X86_INVLPG
383         bool
384         depends on !M386
385         default y
386
387 config X86_BSWAP
388         bool
389         depends on !M386
390         default y
391
392 config X86_POPAD_OK
393         bool
394         depends on !M386
395         default y
396
397 config X86_ALIGNMENT_16
398         bool
399         depends on MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCYRIXIII || X86_ELAN || MK6 || M586MMX || M586TSC || M586 || M486 || MVIAC3_2
400         default y
401
402 config X86_GOOD_APIC
403         bool
404         depends on MK7 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || MK8
405         default y
406
407 config X86_INTEL_USERCOPY
408         bool
409         depends on MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M586MMX || X86_GENERIC || MK8 || MK7
410         default y
411
412 config X86_USE_PPRO_CHECKSUM
413         bool
414         depends on MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || MK8 || MVIAC3_2
415         default y
416
417 config X86_USE_3DNOW
418         bool
419         depends on MCYRIXIII || MK7
420         default y
421
422 config X86_OOSTORE
423         bool
424         depends on (MWINCHIP3D || MWINCHIP2 || MWINCHIPC6) && MTRR
425         default y
426
427 config HPET_TIMER
428         bool "HPET Timer Support"
429         help
430           This enables the use of the HPET for the kernel's internal timer.
431           HPET is the next generation timer replacing legacy 8254s.
432           You can safely choose Y here.  However, HPET will only be
433           activated if the platform and the BIOS support this feature.
434           Otherwise the 8254 will be used for timing services.
435
436           Choose N to continue using the legacy 8254 timer.
437
438 config HPET_EMULATE_RTC
439         bool "Provide RTC interrupt"
440         depends on HPET_TIMER && RTC=y
441
442 config SMP
443         bool "Symmetric multi-processing support"
444         ---help---
445           This enables support for systems with more than one CPU. If you have
446           a system with only one CPU, like most personal computers, say N. If
447           you have a system with more than one CPU, say Y.
448
449           If you say N here, the kernel will run on single and multiprocessor
450           machines, but will use only one CPU of a multiprocessor machine. If
451           you say Y here, the kernel will run on many, but not all,
452           singleprocessor machines. On a singleprocessor machine, the kernel
453           will run faster if you say N here.
454
455           Note that if you say Y here and choose architecture "586" or
456           "Pentium" under "Processor family", the kernel will not work on 486
457           architectures. Similarly, multiprocessor kernels for the "PPro"
458           architecture may not work on all Pentium based boards.
459
460           People using multiprocessor machines who say Y here should also say
461           Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
462           Management" code will be disabled if you say Y here.
463
464           See also the <file:Documentation/smp.txt>,
465           <file:Documentation/i386/IO-APIC.txt>,
466           <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
467           <http://www.tldp.org/docs.html#howto>.
468
469           If you don't know what to do here, say N.
470
471 config NR_CPUS
472         int "Maximum number of CPUs (2-255)"
473         range 2 255
474         depends on SMP
475         default "32" if X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000
476         default "8"
477         help
478           This allows you to specify the maximum number of CPUs which this
479           kernel will support.  The maximum supported value is 255 and the
480           minimum value which makes sense is 2.
481
482           This is purely to save memory - each supported CPU adds
483           approximately eight kilobytes to the kernel image.
484
485 config SCHED_SMT
486         bool "SMT (Hyperthreading) scheduler support"
487         depends on SMP
488         default off
489         help
490           SMT scheduler support improves the CPU scheduler's decision making
491           when dealing with Intel Pentium 4 chips with HyperThreading at a
492           cost of slightly increased overhead in some places. If unsure say
493           N here.
494
495 config PREEMPT
496         bool "Preemptible Kernel"
497         help
498           This option reduces the latency of the kernel when reacting to
499           real-time or interactive events by allowing a low priority process to
500           be preempted even if it is in kernel mode executing a system call.
501           This allows applications to run more reliably even when the system is
502           under load.
503
504           Say Y here if you are building a kernel for a desktop, embedded
505           or real-time system.  Say N if you are unsure.
506
507 config X86_UP_APIC
508         bool "Local APIC support on uniprocessors" if !SMP
509         depends on !(X86_VISWS || X86_VOYAGER)
510         ---help---
511           A local APIC (Advanced Programmable Interrupt Controller) is an
512           integrated interrupt controller in the CPU. If you have a single-CPU
513           system which has a processor with a local APIC, you can say Y here to
514           enable and use it. If you say Y here even though your machine doesn't
515           have a local APIC, then the kernel will still run with no slowdown at
516           all. The local APIC supports CPU-generated self-interrupts (timer,
517           performance counters), and the NMI watchdog which detects hard
518           lockups.
519
520           If you have a system with several CPUs, you do not need to say Y
521           here: the local APIC will be used automatically.
522
523 config X86_UP_IOAPIC
524         bool "IO-APIC support on uniprocessors"
525         depends on !SMP && X86_UP_APIC
526         help
527           An IO-APIC (I/O Advanced Programmable Interrupt Controller) is an
528           SMP-capable replacement for PC-style interrupt controllers. Most
529           SMP systems and a small number of uniprocessor systems have one.
530           If you have a single-CPU system with an IO-APIC, you can say Y here
531           to use it. If you say Y here even though your machine doesn't have
532           an IO-APIC, then the kernel will still run with no slowdown at all.
533
534           If you have a system with several CPUs, you do not need to say Y
535           here: the IO-APIC will be used automatically.
536
537 config X86_LOCAL_APIC
538         bool
539         depends on !SMP && X86_UP_APIC
540         default y
541
542 config X86_IO_APIC
543         bool
544         depends on !SMP && X86_UP_IOAPIC
545         default y
546
547 config X86_TSC
548         bool
549         depends on (MWINCHIP3D || MWINCHIP2 || MCRUSOE || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || MK8 || MVIAC3_2) && !X86_NUMAQ
550         default y
551
552 config X86_MCE
553         bool "Machine Check Exception"
554         depends on !X86_VOYAGER
555         ---help---
556           Machine Check Exception support allows the processor to notify the
557           kernel if it detects a problem (e.g. overheating, component failure).
558           The action the kernel takes depends on the severity of the problem,
559           ranging from a warning message on the console, to halting the machine.
560           Your processor must be a Pentium or newer to support this - check the
561           flags in /proc/cpuinfo for mce.  Note that some older Pentium systems
562           have a design flaw which leads to false MCE events - hence MCE is
563           disabled on all P5 processors, unless explicitly enabled with "mce"
564           as a boot argument.  Similarly, if MCE is built in and creates a
565           problem on some new non-standard machine, you can boot with "nomce"
566           to disable it.  MCE support simply ignores non-MCE processors like
567           the 386 and 486, so nearly everyone can say Y here.
568
569 config X86_MCE_NONFATAL
570         tristate "Check for non-fatal errors on AMD Athlon/Duron / Intel Pentium 4"
571         depends on X86_MCE
572         help
573           Enabling this feature starts a timer that triggers every 5 seconds which
574           will look at the machine check registers to see if anything happened.
575           Non-fatal problems automatically get corrected (but still logged).
576           Disable this if you don't want to see these messages.
577           Seeing the messages this option prints out may be indicative of dying hardware,
578           or out-of-spec (ie, overclocked) hardware.
579           This option only does something on certain CPUs.
580           (AMD Athlon/Duron and Intel Pentium 4)
581
582 config X86_MCE_P4THERMAL
583         bool "check for P4 thermal throttling interrupt."
584         depends on X86_MCE && (X86_UP_APIC || SMP)
585         help
586           Enabling this feature will cause a message to be printed when the P4
587           enters thermal throttling.
588
589 config TOSHIBA
590         tristate "Toshiba Laptop support"
591         ---help---
592           This adds a driver to safely access the System Management Mode of
593           the CPU on Toshiba portables with a genuine Toshiba BIOS. It does
594           not work on models with a Phoenix BIOS. The System Management Mode
595           is used to set the BIOS and power saving options on Toshiba portables.
596
597           For information on utilities to make use of this driver see the
598           Toshiba Linux utilities web site at:
599           <http://www.buzzard.org.uk/toshiba/>.
600
601           Say Y if you intend to run this kernel on a Toshiba portable.
602           Say N otherwise.
603
604 config I8K
605         tristate "Dell laptop support"
606         ---help---
607           This adds a driver to safely access the System Management Mode
608           of the CPU on the Dell Inspiron 8000. The System Management Mode
609           is used to read cpu temperature and cooling fan status and to
610           control the fans on the I8K portables.
611
612           This driver has been tested only on the Inspiron 8000 but it may
613           also work with other Dell laptops. You can force loading on other
614           models by passing the parameter `force=1' to the module. Use at
615           your own risk.
616
617           For information on utilities to make use of this driver see the
618           I8K Linux utilities web site at:
619           <http://people.debian.org/~dz/i8k/>
620
621           Say Y if you intend to run this kernel on a Dell Inspiron 8000.
622           Say N otherwise.
623
624 config MICROCODE
625         tristate "/dev/cpu/microcode - Intel IA32 CPU microcode support"
626         ---help---
627           If you say Y here and also to "/dev file system support" in the
628           'File systems' section, you will be able to update the microcode on
629           Intel processors in the IA32 family, e.g. Pentium Pro, Pentium II,
630           Pentium III, Pentium 4, Xeon etc.  You will obviously need the
631           actual microcode binary data itself which is not shipped with the
632           Linux kernel.
633
634           For latest news and information on obtaining all the required
635           ingredients for this driver, check:
636           <http://www.urbanmyth.org/microcode/>.
637
638           To compile this driver as a module, choose M here: the
639           module will be called microcode.
640
641 config X86_MSR
642         tristate "/dev/cpu/*/msr - Model-specific register support"
643         help
644           This device gives privileged processes access to the x86
645           Model-Specific Registers (MSRs).  It is a character device with
646           major 202 and minors 0 to 31 for /dev/cpu/0/msr to /dev/cpu/31/msr.
647           MSR accesses are directed to a specific CPU on multi-processor
648           systems.
649
650 config X86_CPUID
651         tristate "/dev/cpu/*/cpuid - CPU information support"
652         help
653           This device gives processes access to the x86 CPUID instruction to
654           be executed on a specific processor.  It is a character device
655           with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to
656           /dev/cpu/31/cpuid.
657
658 source "drivers/firmware/Kconfig"
659
660 choice
661         prompt "High Memory Support"
662         default NOHIGHMEM
663
664 config NOHIGHMEM
665         bool "off"
666         ---help---
667           Linux can use up to 64 Gigabytes of physical memory on x86 systems.
668           However, the address space of 32-bit x86 processors is only 4
669           Gigabytes large. That means that, if you have a large amount of
670           physical memory, not all of it can be "permanently mapped" by the
671           kernel. The physical memory that's not permanently mapped is called
672           "high memory".
673
674           If you are compiling a kernel which will never run on a machine with
675           more than 1 Gigabyte total physical RAM, answer "off" here (default
676           choice and suitable for most users). This will result in a "3GB/1GB"
677           split: 3GB are mapped so that each process sees a 3GB virtual memory
678           space and the remaining part of the 4GB virtual memory space is used
679           by the kernel to permanently map as much physical memory as
680           possible.
681
682           If the machine has between 1 and 4 Gigabytes physical RAM, then
683           answer "4GB" here.
684
685           If more than 4 Gigabytes is used then answer "64GB" here. This
686           selection turns Intel PAE (Physical Address Extension) mode on.
687           PAE implements 3-level paging on IA32 processors. PAE is fully
688           supported by Linux, PAE mode is implemented on all recent Intel
689           processors (Pentium Pro and better). NOTE: If you say "64GB" here,
690           then the kernel will not boot on CPUs that don't support PAE!
691
692           The actual amount of total physical memory will either be
693           auto detected or can be forced by using a kernel command line option
694           such as "mem=256M". (Try "man bootparam" or see the documentation of
695           your boot loader (lilo or loadlin) about how to pass options to the
696           kernel at boot time.)
697
698           If unsure, say "off".
699
700 config HIGHMEM4G
701         bool "4GB"
702         help
703           Select this if you have a 32-bit processor and between 1 and 4
704           gigabytes of physical RAM.
705
706 config HIGHMEM64G
707         bool "64GB"
708         help
709           Select this if you have a 32-bit processor and more than 4
710           gigabytes of physical RAM.
711
712 endchoice
713
714 config HIGHMEM
715         bool
716         depends on HIGHMEM64G || HIGHMEM4G
717         default y
718
719 config X86_PAE
720         bool
721         depends on HIGHMEM64G
722         default y
723
724 # Common NUMA Features
725 config NUMA
726         bool "Numa Memory Allocation and Scheduler Support"
727         depends on SMP && HIGHMEM64G && (X86_NUMAQ || X86_GENERICARCH || (X86_SUMMIT && ACPI))
728         default n if X86_PC
729         default y if (X86_NUMAQ || X86_SUMMIT)
730
731 # Need comments to help the hapless user trying to turn on NUMA support
732 comment "NUMA (NUMA-Q) requires SMP, 64GB highmem support"
733         depends on X86_NUMAQ && (!HIGHMEM64G || !SMP)
734
735 comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI"
736         depends on X86_SUMMIT && (!HIGHMEM64G || !ACPI)
737
738 config DISCONTIGMEM
739         bool
740         depends on NUMA
741         default y
742
743 config HAVE_ARCH_BOOTMEM_NODE
744         bool
745         depends on NUMA
746         default y
747
748 config HIGHPTE
749         bool "Allocate 3rd-level pagetables from highmem"
750         depends on HIGHMEM4G || HIGHMEM64G
751         help
752           The VM uses one page table entry for each page of physical memory.
753           For systems with a lot of RAM, this can be wasteful of precious
754           low memory.  Setting this option will put user-space page table
755           entries in high memory.
756
757 config MATH_EMULATION
758         bool "Math emulation"
759         ---help---
760           Linux can emulate a math coprocessor (used for floating point
761           operations) if you don't have one. 486DX and Pentium processors have
762           a math coprocessor built in, 486SX and 386 do not, unless you added
763           a 487DX or 387, respectively. (The messages during boot time can
764           give you some hints here ["man dmesg"].) Everyone needs either a
765           coprocessor or this emulation.
766
767           If you don't have a math coprocessor, you need to say Y here; if you
768           say Y here even though you have a coprocessor, the coprocessor will
769           be used nevertheless. (This behavior can be changed with the kernel
770           command line option "no387", which comes handy if your coprocessor
771           is broken. Try "man bootparam" or see the documentation of your boot
772           loader (lilo or loadlin) about how to pass options to the kernel at
773           boot time.) This means that it is a good idea to say Y here if you
774           intend to use this kernel on different machines.
775
776           More information about the internals of the Linux math coprocessor
777           emulation can be found in <file:arch/i386/math-emu/README>.
778
779           If you are not sure, say Y; apart from resulting in a 66 KB bigger
780           kernel, it won't hurt.
781
782 config MTRR
783         bool "MTRR (Memory Type Range Register) support"
784         ---help---
785           On Intel P6 family processors (Pentium Pro, Pentium II and later)
786           the Memory Type Range Registers (MTRRs) may be used to control
787           processor access to memory ranges. This is most useful if you have
788           a video (VGA) card on a PCI or AGP bus. Enabling write-combining
789           allows bus write transfers to be combined into a larger transfer
790           before bursting over the PCI/AGP bus. This can increase performance
791           of image write operations 2.5 times or more. Saying Y here creates a
792           /proc/mtrr file which may be used to manipulate your processor's
793           MTRRs. Typically the X server should use this.
794
795           This code has a reasonably generic interface so that similar
796           control registers on other processors can be easily supported
797           as well:
798
799           The Cyrix 6x86, 6x86MX and M II processors have Address Range
800           Registers (ARRs) which provide a similar functionality to MTRRs. For
801           these, the ARRs are used to emulate the MTRRs.
802           The AMD K6-2 (stepping 8 and above) and K6-3 processors have two
803           MTRRs. The Centaur C6 (WinChip) has 8 MCRs, allowing
804           write-combining. All of these processors are supported by this code
805           and it makes sense to say Y here if you have one of them.
806
807           Saying Y here also fixes a problem with buggy SMP BIOSes which only
808           set the MTRRs for the boot CPU and not for the secondary CPUs. This
809           can lead to all sorts of problems, so it's good to say Y here.
810
811           You can safely say Y even if your machine doesn't have MTRRs, you'll
812           just add about 9 KB to your kernel.
813
814           See <file:Documentation/mtrr.txt> for more information.
815
816 config EFI
817         bool "Boot from EFI support (EXPERIMENTAL)"
818         depends on ACPI
819         default n
820         ---help---
821
822         This enables the the kernel to boot on EFI platforms using
823         system configuration information passed to it from the firmware.
824         This also enables the kernel to use any EFI runtime services that are
825         available (such as the EFI variable services).
826
827         This option is only useful on systems that have EFI firmware
828         and will result in a kernel image that is ~8k larger.  In addition,
829         you must use the latest ELILO loader available at
830         <http://elilo.sourceforge.net> in order to take advantage of
831         kernel initialization using EFI information (neither GRUB nor LILO know
832         anything about EFI).  However, even with this option, the resultant
833         kernel should continue to boot on existing non-EFI platforms.
834
835 config IRQBALANCE
836         bool "Enable kernel irq balancing"
837         depends on SMP && X86_IO_APIC
838         default y
839         help
840           The default yes will allow the kernel to do irq load balancing.
841           Saying no will keep the kernel from doing irq load balancing.
842
843 config HAVE_DEC_LOCK
844         bool
845         depends on (SMP || PREEMPT) && X86_CMPXCHG
846         default y
847
848 # turning this on wastes a bunch of space.
849 # Summit needs it only when NUMA is on
850 config BOOT_IOREMAP
851         bool
852         depends on (((X86_SUMMIT || X86_GENERICARCH) && NUMA) || (X86 && EFI))
853         default y
854
855 config REGPARM
856         bool "Use register arguments (EXPERIMENTAL)"
857         depends on EXPERIMENTAL
858         default n
859         help
860         Compile the kernel with -mregparm=3. This uses an different ABI
861         and passes the first three arguments of a function call in registers.
862         This will probably break binary only modules.
863
864         This feature is only enabled for gcc-3.0 and later - earlier compilers
865         generate incorrect output with certain kernel constructs when
866         -mregparm=3 is used.
867
868 endmenu
869
870
871 menu "Power management options (ACPI, APM)"
872         depends on !X86_VOYAGER
873
874 source kernel/power/Kconfig
875
876 source "drivers/acpi/Kconfig"
877
878 menu "APM (Advanced Power Management) BIOS Support"
879 depends on PM
880
881 config APM
882         tristate "APM (Advanced Power Management) BIOS support"
883         depends on PM
884         ---help---
885           APM is a BIOS specification for saving power using several different
886           techniques. This is mostly useful for battery powered laptops with
887           APM compliant BIOSes. If you say Y here, the system time will be
888           reset after a RESUME operation, the /proc/apm device will provide
889           battery status information, and user-space programs will receive
890           notification of APM "events" (e.g. battery status change).
891
892           If you select "Y" here, you can disable actual use of the APM
893           BIOS by passing the "apm=off" option to the kernel at boot time.
894
895           Note that the APM support is almost completely disabled for
896           machines with more than one CPU.
897
898           In order to use APM, you will need supporting software. For location
899           and more information, read <file:Documentation/pm.txt> and the
900           Battery Powered Linux mini-HOWTO, available from
901           <http://www.tldp.org/docs.html#howto>.
902
903           This driver does not spin down disk drives (see the hdparm(8)
904           manpage ("man 8 hdparm") for that), and it doesn't turn off
905           VESA-compliant "green" monitors.
906
907           This driver does not support the TI 4000M TravelMate and the ACER
908           486/DX4/75 because they don't have compliant BIOSes. Many "green"
909           desktop machines also don't have compliant BIOSes, and this driver
910           may cause those machines to panic during the boot phase.
911
912           Generally, if you don't have a battery in your machine, there isn't
913           much point in using this driver and you should say N. If you get
914           random kernel OOPSes or reboots that don't seem to be related to
915           anything, try disabling/enabling this option (or disabling/enabling
916           APM in your BIOS).
917
918           Some other things you should try when experiencing seemingly random,
919           "weird" problems:
920
921           1) make sure that you have enough swap space and that it is
922           enabled.
923           2) pass the "no-hlt" option to the kernel
924           3) switch on floating point emulation in the kernel and pass
925           the "no387" option to the kernel
926           4) pass the "floppy=nodma" option to the kernel
927           5) pass the "mem=4M" option to the kernel (thereby disabling
928           all but the first 4 MB of RAM)
929           6) make sure that the CPU is not over clocked.
930           7) read the sig11 FAQ at <http://www.bitwizard.nl/sig11/>
931           8) disable the cache from your BIOS settings
932           9) install a fan for the video card or exchange video RAM
933           10) install a better fan for the CPU
934           11) exchange RAM chips
935           12) exchange the motherboard.
936
937           To compile this driver as a module, choose M here: the
938           module will be called apm.
939
940 config APM_IGNORE_USER_SUSPEND
941         bool "Ignore USER SUSPEND"
942         depends on APM
943         help
944           This option will ignore USER SUSPEND requests. On machines with a
945           compliant APM BIOS, you want to say N. However, on the NEC Versa M
946           series notebooks, it is necessary to say Y because of a BIOS bug.
947
948 config APM_DO_ENABLE
949         bool "Enable PM at boot time"
950         depends on APM
951         ---help---
952           Enable APM features at boot time. From page 36 of the APM BIOS
953           specification: "When disabled, the APM BIOS does not automatically
954           power manage devices, enter the Standby State, enter the Suspend
955           State, or take power saving steps in response to CPU Idle calls."
956           This driver will make CPU Idle calls when Linux is idle (unless this
957           feature is turned off -- see "Do CPU IDLE calls", below). This
958           should always save battery power, but more complicated APM features
959           will be dependent on your BIOS implementation. You may need to turn
960           this option off if your computer hangs at boot time when using APM
961           support, or if it beeps continuously instead of suspending. Turn
962           this off if you have a NEC UltraLite Versa 33/C or a Toshiba
963           T400CDT. This is off by default since most machines do fine without
964           this feature.
965
966 config APM_CPU_IDLE
967         bool "Make CPU Idle calls when idle"
968         depends on APM
969         help
970           Enable calls to APM CPU Idle/CPU Busy inside the kernel's idle loop.
971           On some machines, this can activate improved power savings, such as
972           a slowed CPU clock rate, when the machine is idle. These idle calls
973           are made after the idle loop has run for some length of time (e.g.,
974           333 mS). On some machines, this will cause a hang at boot time or
975           whenever the CPU becomes idle. (On machines with more than one CPU,
976           this option does nothing.)
977
978 config APM_DISPLAY_BLANK
979         bool "Enable console blanking using APM"
980         depends on APM
981         help
982           Enable console blanking using the APM. Some laptops can use this to
983           turn off the LCD backlight when the screen blanker of the Linux
984           virtual console blanks the screen. Note that this is only used by
985           the virtual console screen blanker, and won't turn off the backlight
986           when using the X Window system. This also doesn't have anything to
987           do with your VESA-compliant power-saving monitor. Further, this
988           option doesn't work for all laptops -- it might not turn off your
989           backlight at all, or it might print a lot of errors to the console,
990           especially if you are using gpm.
991
992 config APM_RTC_IS_GMT
993         bool "RTC stores time in GMT"
994         depends on APM
995         help
996           Say Y here if your RTC (Real Time Clock a.k.a. hardware clock)
997           stores the time in GMT (Greenwich Mean Time). Say N if your RTC
998           stores localtime.
999
1000           It is in fact recommended to store GMT in your RTC, because then you
1001           don't have to worry about daylight savings time changes. The only
1002           reason not to use GMT in your RTC is if you also run a broken OS
1003           that doesn't understand GMT.
1004
1005 config APM_ALLOW_INTS
1006         bool "Allow interrupts during APM BIOS calls"
1007         depends on APM
1008         help
1009           Normally we disable external interrupts while we are making calls to
1010           the APM BIOS as a measure to lessen the effects of a badly behaving
1011           BIOS implementation.  The BIOS should reenable interrupts if it
1012           needs to.  Unfortunately, some BIOSes do not -- especially those in
1013           many of the newer IBM Thinkpads.  If you experience hangs when you
1014           suspend, try setting this to Y.  Otherwise, say N.
1015
1016 config APM_REAL_MODE_POWER_OFF
1017         bool "Use real mode APM BIOS call to power off"
1018         depends on APM
1019         help
1020           Use real mode APM BIOS calls to switch off the computer. This is
1021           a work-around for a number of buggy BIOSes. Switch this option on if
1022           your computer crashes instead of powering off properly.
1023
1024 endmenu
1025
1026 source "arch/i386/kernel/cpu/cpufreq/Kconfig"
1027
1028 endmenu
1029
1030
1031 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
1032
1033 config X86_VISWS_APIC
1034         bool
1035         depends on X86_VISWS
1036         default y
1037
1038 config X86_LOCAL_APIC
1039         bool
1040         depends on (X86_VISWS || SMP) && !X86_VOYAGER
1041         default y
1042
1043 config X86_IO_APIC
1044         bool
1045         depends on SMP && !(X86_VISWS || X86_VOYAGER)
1046         default y
1047
1048 config PCI
1049         bool "PCI support" if !X86_VISWS
1050         depends on !X86_VOYAGER
1051         default y if X86_VISWS
1052         help
1053           Find out whether you have a PCI motherboard. PCI is the name of a
1054           bus system, i.e. the way the CPU talks to the other stuff inside
1055           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
1056           VESA. If you have PCI, say Y, otherwise N.
1057
1058           The PCI-HOWTO, available from
1059           <http://www.tldp.org/docs.html#howto>, contains valuable
1060           information about which PCI hardware does work under Linux and which
1061           doesn't.
1062
1063 choice
1064         prompt "PCI access mode"
1065         depends on PCI && !X86_VISWS
1066         default PCI_GOANY
1067         ---help---
1068           On PCI systems, the BIOS can be used to detect the PCI devices and
1069           determine their configuration. However, some old PCI motherboards
1070           have BIOS bugs and may crash if this is done. Also, some embedded
1071           PCI-based systems don't have any BIOS at all. Linux can also try to
1072           detect the PCI hardware directly without using the BIOS.
1073
1074           With this option, you can specify how Linux should detect the
1075           PCI devices. If you choose "BIOS", the BIOS will be used,
1076           if you choose "Direct", the BIOS won't be used, and if you
1077           choose "MMConfig", then PCI Express MMCONFIG will be used.
1078           If you choose "Any", the kernel will try MMCONFIG, then the
1079           direct access method and falls back to the BIOS if that doesn't
1080           work. If unsure, go with the default, which is "Any".
1081
1082 config PCI_GOBIOS
1083         bool "BIOS"
1084
1085 config PCI_GOMMCONFIG
1086         bool "MMConfig"
1087
1088 config PCI_GODIRECT
1089         bool "Direct"
1090
1091 config PCI_GOANY
1092         bool "Any"
1093
1094 endchoice
1095
1096 config PCI_BIOS
1097         bool
1098         depends on !X86_VISWS && PCI && (PCI_GOBIOS || PCI_GOANY)
1099         default y
1100
1101 config PCI_DIRECT
1102         bool
1103         depends on PCI && ((PCI_GODIRECT || PCI_GOANY) || X86_VISWS)
1104         default y
1105
1106 config PCI_MMCONFIG
1107         bool
1108         depends on PCI && (PCI_GOMMCONFIG || PCI_GOANY)
1109         select ACPI_BOOT
1110         default y
1111
1112 source "drivers/pci/Kconfig"
1113
1114 config ISA
1115         bool "ISA support"
1116         depends on !(X86_VOYAGER || X86_VISWS)
1117         help
1118           Find out whether you have ISA slots on your motherboard.  ISA is the
1119           name of a bus system, i.e. the way the CPU talks to the other stuff
1120           inside your box.  Other bus systems are PCI, EISA, MicroChannel
1121           (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
1122           newer boards don't support it.  If you have ISA, say Y, otherwise N.
1123
1124 config EISA
1125         bool "EISA support"
1126         depends on ISA
1127         ---help---
1128           The Extended Industry Standard Architecture (EISA) bus was
1129           developed as an open alternative to the IBM MicroChannel bus.
1130
1131           The EISA bus provided some of the features of the IBM MicroChannel
1132           bus while maintaining backward compatibility with cards made for
1133           the older ISA bus.  The EISA bus saw limited use between 1988 and
1134           1995 when it was made obsolete by the PCI bus.
1135
1136           Say Y here if you are building a kernel for an EISA-based machine.
1137
1138           Otherwise, say N.
1139
1140 source "drivers/eisa/Kconfig"
1141
1142 config MCA
1143         bool "MCA support"
1144         depends on !(X86_VISWS || X86_VOYAGER)
1145         help
1146           MicroChannel Architecture is found in some IBM PS/2 machines and
1147           laptops.  It is a bus system similar to PCI or ISA. See
1148           <file:Documentation/mca.txt> (and especially the web page given
1149           there) before attempting to build an MCA bus kernel.
1150
1151 config MCA
1152         depends on X86_VOYAGER
1153         default y if X86_VOYAGER
1154
1155 source "drivers/mca/Kconfig"
1156
1157 config SCx200
1158         tristate "NatSemi SCx200 support"
1159         depends on !X86_VOYAGER
1160         help
1161           This provides basic support for the National Semiconductor SCx200 
1162           processor.  Right now this is just a driver for the GPIO pins.
1163
1164           If you don't know what to do here, say N.
1165
1166           This support is also available as a module.  If compiled as a
1167           module, it will be called scx200.
1168
1169 source "drivers/pcmcia/Kconfig"
1170
1171 source "drivers/pci/hotplug/Kconfig"
1172
1173 endmenu
1174
1175
1176 menu "Executable file formats"
1177
1178 source "fs/Kconfig.binfmt"
1179
1180 endmenu
1181
1182 source "drivers/Kconfig"
1183
1184 source "fs/Kconfig"
1185
1186 source "arch/i386/oprofile/Kconfig"
1187
1188
1189 menu "Kernel hacking"
1190
1191 config DEBUG_KERNEL
1192         bool "Kernel debugging"
1193         help
1194           Say Y here if you are developing drivers or trying to debug and
1195           identify kernel problems.
1196
1197 config EARLY_PRINTK
1198         bool "Early printk" if EMBEDDED
1199         default y
1200         help
1201           Write kernel log output directly into the VGA buffer or to a serial
1202           port.
1203
1204           This is useful for kernel debugging when your machine crashes very
1205           early before the console code is initialized. For normal operation
1206           it is not recommended because it looks ugly and doesn't cooperate
1207           with klogd/syslogd or the X server. You should normally N here,
1208           unless you want to debug such a crash.
1209
1210 config DEBUG_STACKOVERFLOW
1211         bool "Check for stack overflows"
1212         depends on DEBUG_KERNEL
1213
1214 config DEBUG_STACK_USAGE
1215         bool "Stack utilization instrumentation"
1216         depends on DEBUG_KERNEL
1217         help
1218           Enables the display of the minimum amount of free stack which each
1219           task has ever had available in the sysrq-T and sysrq-P debug output.
1220
1221           This option will slow down process creation somewhat.
1222
1223 config DEBUG_SLAB
1224         bool "Debug memory allocations"
1225         depends on DEBUG_KERNEL
1226         help
1227           Say Y here to have the kernel do limited verification on memory
1228           allocation as well as poisoning memory on free to catch use of freed
1229           memory.
1230
1231 config MAGIC_SYSRQ
1232         bool "Magic SysRq key"
1233         depends on DEBUG_KERNEL
1234         help
1235           If you say Y here, you will have some control over the system even
1236           if the system crashes for example during kernel debugging (e.g., you
1237           will be able to flush the buffer cache to disk, reboot the system
1238           immediately or dump some status information). This is accomplished
1239           by pressing various keys while holding SysRq (Alt+PrintScreen). It
1240           also works on a serial console (on PC hardware at least), if you
1241           send a BREAK and then within 5 seconds a command keypress. The
1242           keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
1243           unless you really know what this hack does.
1244
1245 config DEBUG_SPINLOCK
1246         bool "Spinlock debugging"
1247         depends on DEBUG_KERNEL
1248         help
1249           Say Y here and build SMP to catch missing spinlock initialization
1250           and certain other kinds of spinlock errors commonly made.  This is
1251           best used in conjunction with the NMI watchdog so that spinlock
1252           deadlocks are also debuggable.
1253
1254 config DEBUG_PAGEALLOC
1255         bool "Page alloc debugging"
1256         depends on DEBUG_KERNEL
1257         help
1258           Unmap pages from the kernel linear mapping after free_pages().
1259           This results in a large slowdown, but helps to find certain types
1260           of memory corruptions.
1261
1262 config DEBUG_HIGHMEM
1263         bool "Highmem debugging"
1264         depends on DEBUG_KERNEL && HIGHMEM
1265         help
1266           This options enables addition error checking for high memory systems.
1267           Disable for production systems.
1268
1269 config DEBUG_INFO
1270         bool "Compile the kernel with debug info"
1271         depends on DEBUG_KERNEL
1272         help
1273           If you say Y here the resulting kernel image will include
1274           debugging info resulting in a larger kernel image.
1275           Say Y here only if you plan to use gdb to debug the kernel.
1276           If you don't debug the kernel, you can say N.
1277           
1278 config DEBUG_SPINLOCK_SLEEP
1279         bool "Sleep-inside-spinlock checking"
1280         help
1281           If you say Y here, various routines which may sleep will become very
1282           noisy if they are called with a spinlock held.        
1283
1284 config FRAME_POINTER
1285         bool "Compile the kernel with frame pointers"
1286         help
1287           If you say Y here the resulting kernel image will be slightly larger
1288           and slower, but it will give very useful debugging information.
1289           If you don't debug the kernel, you can say N, but we may not be able
1290           to solve problems without frame pointers.
1291
1292 config 4KSTACKS
1293         bool "Use 4Kb for kernel stacks instead of 8Kb"
1294         help
1295           If you say Y here the kernel will use a 4Kb stacksize for the
1296           kernel stack attached to each process/thread. This facilitates
1297           running more threads on a system and also reduces the pressure
1298           on the VM subsystem for higher order allocations. This option
1299           will also use IRQ stacks to compensate for the reduced stackspace.
1300
1301 config X86_FIND_SMP_CONFIG
1302         bool
1303         depends on X86_LOCAL_APIC || X86_VOYAGER
1304         default y
1305
1306 config X86_MPPARSE
1307         bool
1308         depends on X86_LOCAL_APIC && !X86_VISWS
1309         default y
1310
1311 endmenu
1312
1313 source "kernel/vserver/Kconfig"
1314
1315 source "security/Kconfig"
1316
1317 source "crypto/Kconfig"
1318
1319 source "lib/Kconfig"
1320
1321 config X86_SMP
1322         bool
1323         depends on SMP && !X86_VOYAGER
1324         default y
1325
1326 config X86_HT
1327         bool
1328         depends on SMP && !(X86_VISWS || X86_VOYAGER)
1329         default y
1330
1331 config X86_BIOS_REBOOT
1332         bool
1333         depends on !(X86_VISWS || X86_VOYAGER)
1334         default y
1335
1336 config X86_TRAMPOLINE
1337         bool
1338         depends on X86_SMP || (X86_VOYAGER && SMP)
1339         default y
1340
1341 config PC
1342         bool
1343         depends on X86 && !EMBEDDED
1344         default y