Revert "Driver core: remove class_device_*_bin_file"
[powerpc.git] / arch / x86 / Kconfig.x86_64
1 #
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
4 #
5 # Note: ISA is disabled and will hopefully never be enabled.
6 # If you managed to buy an ISA x86-64 box you'll have to fix all the
7 # ISA drivers you need yourself.
8 #
9
10 mainmenu "Linux Kernel Configuration"
11
12 config X86_64
13         bool
14         default y
15         help
16           Port to the x86-64 architecture. x86-64 is a 64-bit extension to the
17           classical 32-bit x86 architecture. For details see
18           <http://www.x86-64.org/>.
19
20 config 64BIT
21         def_bool y
22
23 config X86
24         bool
25         default y
26
27 config GENERIC_TIME
28         bool
29         default y
30
31 config GENERIC_TIME_VSYSCALL
32         bool
33         default y
34
35 config GENERIC_CMOS_UPDATE
36         bool
37         default y
38
39 config CLOCKSOURCE_WATCHDOG
40         bool
41         default y
42
43 config GENERIC_CLOCKEVENTS
44         bool
45         default y
46
47 config GENERIC_CLOCKEVENTS_BROADCAST
48         bool
49         default y
50
51 config ZONE_DMA32
52         bool
53         default y
54
55 config LOCKDEP_SUPPORT
56         bool
57         default y
58
59 config STACKTRACE_SUPPORT
60         bool
61         default y
62
63 config SEMAPHORE_SLEEPERS
64         bool
65         default y
66
67 config MMU
68         bool
69         default y
70
71 config ZONE_DMA
72         bool
73         default y
74
75 config ISA
76         bool
77
78 config SBUS
79         bool
80
81 config RWSEM_GENERIC_SPINLOCK
82         bool
83         default y
84
85 config RWSEM_XCHGADD_ALGORITHM
86         bool
87
88 config GENERIC_HWEIGHT
89         bool
90         default y
91
92 config GENERIC_CALIBRATE_DELAY
93         bool
94         default y
95
96 config X86_CMPXCHG
97         bool
98         default y
99
100 config GENERIC_ISA_DMA
101         bool
102         default y
103
104 config GENERIC_IOMAP
105         bool
106         default y
107
108 config ARCH_MAY_HAVE_PC_FDC
109         bool
110         default y
111
112 config ARCH_POPULATES_NODE_MAP
113         def_bool y
114
115 config DMI
116         bool
117         default y
118
119 config AUDIT_ARCH
120         bool
121         default y
122
123 config GENERIC_BUG
124         bool
125         default y
126         depends on BUG
127
128 config ARCH_HAS_ILOG2_U32
129         bool
130         default n
131
132 config ARCH_HAS_ILOG2_U64
133         bool
134         default n
135
136 source "init/Kconfig"
137
138
139 menu "Processor type and features"
140
141 source "kernel/time/Kconfig"
142
143 choice
144         prompt "Subarchitecture Type"
145         default X86_PC
146
147 config X86_PC
148         bool "PC-compatible"
149         help
150           Choose this option if your computer is a standard PC or compatible.
151
152 config X86_VSMP
153         bool "Support for ScaleMP vSMP"
154         depends on PCI
155          help
156           Support for ScaleMP vSMP systems.  Say 'Y' here if this kernel is
157           supposed to run on these EM64T-based machines.  Only choose this option
158           if you have one of these machines.
159
160 endchoice
161
162 choice
163         prompt "Processor family"
164         default GENERIC_CPU
165
166 config MK8
167         bool "AMD-Opteron/Athlon64"
168         help
169           Optimize for AMD Opteron/Athlon64/Hammer/K8 CPUs.
170
171 config MPSC
172        bool "Intel P4 / older Netburst based Xeon"
173        help
174           Optimize for Intel Pentium 4, Pentium D and older Nocona/Dempsey
175           Xeon CPUs with Intel 64bit which is compatible with x86-64.
176           Note that the latest Xeons (Xeon 51xx and 53xx) are not based on the
177           Netburst core and shouldn't use this option. You can distinguish them
178           using the cpu family field
179           in /proc/cpuinfo. Family 15 is an older Xeon, Family 6 a newer one.
180
181 config MCORE2
182         bool "Intel Core2 / newer Xeon"
183         help
184           Optimize for Intel Core2 and newer Xeons (51xx)
185           You can distinguish the newer Xeons from the older ones using
186           the cpu family field in /proc/cpuinfo. 15 is an older Xeon
187           (use CONFIG_MPSC then), 6 is a newer one.
188
189 config GENERIC_CPU
190         bool "Generic-x86-64"
191         help
192           Generic x86-64 CPU.
193           Run equally well on all x86-64 CPUs.
194
195 endchoice
196
197 #
198 # Define implied options from the CPU selection here
199 #
200 config X86_L1_CACHE_BYTES
201         int
202         default "128" if GENERIC_CPU || MPSC
203         default "64" if MK8 || MCORE2
204
205 config X86_L1_CACHE_SHIFT
206         int
207         default "7" if GENERIC_CPU || MPSC
208         default "6" if MK8 || MCORE2
209
210 config X86_INTERNODE_CACHE_BYTES
211         int
212         default "4096" if X86_VSMP
213         default X86_L1_CACHE_BYTES if !X86_VSMP
214
215 config X86_TSC
216         bool
217         default y
218
219 config X86_GOOD_APIC
220         bool
221         default y
222
223 config MICROCODE
224         tristate "/dev/cpu/microcode - Intel CPU microcode support"
225         select FW_LOADER
226         ---help---
227           If you say Y here the 'File systems' section, you will be
228           able to update the microcode on Intel processors. You will
229           obviously need the actual microcode binary data itself which is
230           not shipped with the Linux kernel.
231
232           For latest news and information on obtaining all the required
233           ingredients for this driver, check:
234           <http://www.urbanmyth.org/microcode/>.
235
236           To compile this driver as a module, choose M here: the
237           module will be called microcode.
238           If you use modprobe or kmod you may also want to add the line
239           'alias char-major-10-184 microcode' to your /etc/modules.conf file.
240
241 config MICROCODE_OLD_INTERFACE
242         bool
243         depends on MICROCODE
244         default y
245
246 config X86_MSR
247         tristate "/dev/cpu/*/msr - Model-specific register support"
248         help
249           This device gives privileged processes access to the x86
250           Model-Specific Registers (MSRs).  It is a character device with
251           major 202 and minors 0 to 31 for /dev/cpu/0/msr to /dev/cpu/31/msr.
252           MSR accesses are directed to a specific CPU on multi-processor
253           systems.
254
255 config X86_CPUID
256         tristate "/dev/cpu/*/cpuid - CPU information support"
257         help
258           This device gives processes access to the x86 CPUID instruction to
259           be executed on a specific processor.  It is a character device
260           with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to
261           /dev/cpu/31/cpuid.
262
263 config X86_HT
264         bool
265         depends on SMP && !MK8
266         default y
267
268 config MATH_EMULATION
269         bool
270
271 config MCA
272         bool
273
274 config EISA
275         bool
276
277 config X86_IO_APIC
278         bool
279         default y
280
281 config X86_LOCAL_APIC
282         bool
283         default y
284
285 config MTRR
286         bool "MTRR (Memory Type Range Register) support"
287         ---help---
288           On Intel P6 family processors (Pentium Pro, Pentium II and later)
289           the Memory Type Range Registers (MTRRs) may be used to control
290           processor access to memory ranges. This is most useful if you have
291           a video (VGA) card on a PCI or AGP bus. Enabling write-combining
292           allows bus write transfers to be combined into a larger transfer
293           before bursting over the PCI/AGP bus. This can increase performance
294           of image write operations 2.5 times or more. Saying Y here creates a
295           /proc/mtrr file which may be used to manipulate your processor's
296           MTRRs. Typically the X server should use this.
297
298           This code has a reasonably generic interface so that similar
299           control registers on other processors can be easily supported
300           as well.
301
302           Saying Y here also fixes a problem with buggy SMP BIOSes which only
303           set the MTRRs for the boot CPU and not for the secondary CPUs. This
304           can lead to all sorts of problems, so it's good to say Y here.
305
306           Just say Y here, all x86-64 machines support MTRRs.
307
308           See <file:Documentation/mtrr.txt> for more information.
309
310 config SMP
311         bool "Symmetric multi-processing support"
312         ---help---
313           This enables support for systems with more than one CPU. If you have
314           a system with only one CPU, like most personal computers, say N. If
315           you have a system with more than one CPU, say Y.
316
317           If you say N here, the kernel will run on single and multiprocessor
318           machines, but will use only one CPU of a multiprocessor machine. If
319           you say Y here, the kernel will run on many, but not all,
320           singleprocessor machines. On a singleprocessor machine, the kernel
321           will run faster if you say N here.
322
323           If you don't know what to do here, say N.
324
325 config SCHED_SMT
326         bool "SMT (Hyperthreading) scheduler support"
327         depends on SMP
328         default n
329         help
330           SMT scheduler support improves the CPU scheduler's decision making
331           when dealing with Intel Pentium 4 chips with HyperThreading at a
332           cost of slightly increased overhead in some places. If unsure say
333           N here.
334
335 config SCHED_MC
336         bool "Multi-core scheduler support"
337         depends on SMP
338         default y
339         help
340           Multi-core scheduler support improves the CPU scheduler's decision
341           making when dealing with multi-core CPU chips at a cost of slightly
342           increased overhead in some places. If unsure say N here.
343
344 source "kernel/Kconfig.preempt"
345
346 config NUMA
347        bool "Non Uniform Memory Access (NUMA) Support"
348        depends on SMP
349        help
350          Enable NUMA (Non Uniform Memory Access) support. The kernel 
351          will try to allocate memory used by a CPU on the local memory 
352          controller of the CPU and add some more NUMA awareness to the kernel.
353          This code is recommended on all multiprocessor Opteron systems.
354          If the system is EM64T, you should say N unless your system is EM64T 
355          NUMA. 
356
357 config K8_NUMA
358        bool "Old style AMD Opteron NUMA detection"
359        depends on NUMA && PCI
360        default y
361        help
362          Enable K8 NUMA node topology detection.  You should say Y here if
363          you have a multi processor AMD K8 system. This uses an old
364          method to read the NUMA configuration directly from the builtin
365          Northbridge of Opteron. It is recommended to use X86_64_ACPI_NUMA
366          instead, which also takes priority if both are compiled in.   
367
368 config NODES_SHIFT
369         int
370         default "6"
371         depends on NEED_MULTIPLE_NODES
372
373 # Dummy CONFIG option to select ACPI_NUMA from drivers/acpi/Kconfig.
374
375 config X86_64_ACPI_NUMA
376        bool "ACPI NUMA detection"
377        depends on NUMA
378        select ACPI 
379         select PCI
380        select ACPI_NUMA
381        default y
382        help
383          Enable ACPI SRAT based node topology detection.
384
385 config NUMA_EMU
386         bool "NUMA emulation"
387         depends on NUMA
388         help
389           Enable NUMA emulation. A flat machine will be split
390           into virtual nodes when booted with "numa=fake=N", where N is the
391           number of nodes. This is only useful for debugging.
392
393 config ARCH_DISCONTIGMEM_ENABLE
394        bool
395        depends on NUMA
396        default y
397
398 config ARCH_DISCONTIGMEM_DEFAULT
399         def_bool y
400         depends on NUMA
401
402 config ARCH_SPARSEMEM_ENABLE
403         def_bool y
404         depends on (NUMA || EXPERIMENTAL)
405         select SPARSEMEM_VMEMMAP_ENABLE
406
407 config ARCH_MEMORY_PROBE
408         def_bool y
409         depends on MEMORY_HOTPLUG
410
411 config ARCH_FLATMEM_ENABLE
412         def_bool y
413         depends on !NUMA
414
415 source "mm/Kconfig"
416
417 config MEMORY_HOTPLUG_RESERVE
418         def_bool y
419         depends on (MEMORY_HOTPLUG && DISCONTIGMEM)
420
421 config HAVE_ARCH_EARLY_PFN_TO_NID
422         def_bool y
423         depends on NUMA
424
425 config OUT_OF_LINE_PFN_TO_PAGE
426         def_bool y
427         depends on DISCONTIGMEM
428
429 config NR_CPUS
430         int "Maximum number of CPUs (2-255)"
431         range 2 255
432         depends on SMP
433         default "8"
434         help
435           This allows you to specify the maximum number of CPUs which this
436           kernel will support. Current maximum is 255 CPUs due to
437           APIC addressing limits. Less depending on the hardware.
438
439           This is purely to save memory - each supported CPU requires
440           memory in the static kernel configuration.
441
442 config PHYSICAL_ALIGN
443         hex
444         default "0x200000"
445
446 config HOTPLUG_CPU
447         bool "Support for suspend on SMP and hot-pluggable CPUs (EXPERIMENTAL)"
448         depends on SMP && HOTPLUG && EXPERIMENTAL
449         help
450                 Say Y here to experiment with turning CPUs off and on.  CPUs
451                 can be controlled through /sys/devices/system/cpu/cpu#.
452                 This is also required for suspend/hibernation on SMP systems.
453
454                 Say N if you want to disable CPU hotplug and don't need to
455                 suspend.
456
457 config ARCH_ENABLE_MEMORY_HOTPLUG
458         def_bool y
459
460 config HPET_TIMER
461         bool
462         default y
463         help
464           Use the IA-PC HPET (High Precision Event Timer) to manage
465           time in preference to the PIT and RTC, if a HPET is
466           present.  The HPET provides a stable time base on SMP
467           systems, unlike the TSC, but it is more expensive to access,
468           as it is off-chip.  You can find the HPET spec at
469           <http://www.intel.com/hardwaredesign/hpetspec.htm>.
470
471 config HPET_EMULATE_RTC
472         bool
473         depends on HPET_TIMER && RTC=y
474         default y
475
476 # Mark as embedded because too many people got it wrong.
477 # The code disables itself when not needed.
478 config GART_IOMMU
479         bool "GART IOMMU support" if EMBEDDED
480         default y
481         select SWIOTLB
482         select AGP
483         depends on PCI
484         help
485           Support for full DMA access of devices with 32bit memory access only
486           on systems with more than 3GB. This is usually needed for USB,
487           sound, many IDE/SATA chipsets and some other devices.
488           Provides a driver for the AMD Athlon64/Opteron/Turion/Sempron GART
489           based hardware IOMMU and a software bounce buffer based IOMMU used
490           on Intel systems and as fallback.
491           The code is only active when needed (enough memory and limited
492           device) unless CONFIG_IOMMU_DEBUG or iommu=force is specified
493           too.
494
495 config CALGARY_IOMMU
496         bool "IBM Calgary IOMMU support"
497         select SWIOTLB
498         depends on PCI && EXPERIMENTAL
499         help
500           Support for hardware IOMMUs in IBM's xSeries x366 and x460
501           systems. Needed to run systems with more than 3GB of memory
502           properly with 32-bit PCI devices that do not support DAC
503           (Double Address Cycle). Calgary also supports bus level
504           isolation, where all DMAs pass through the IOMMU.  This
505           prevents them from going anywhere except their intended
506           destination. This catches hard-to-find kernel bugs and
507           mis-behaving drivers and devices that do not use the DMA-API
508           properly to set up their DMA buffers.  The IOMMU can be
509           turned off at boot time with the iommu=off parameter.
510           Normally the kernel will make the right choice by itself.
511           If unsure, say Y.
512
513 config CALGARY_IOMMU_ENABLED_BY_DEFAULT
514         bool "Should Calgary be enabled by default?"
515         default y
516         depends on CALGARY_IOMMU
517         help
518           Should Calgary be enabled by default? if you choose 'y', Calgary
519           will be used (if it exists). If you choose 'n', Calgary will not be
520           used even if it exists. If you choose 'n' and would like to use
521           Calgary anyway, pass 'iommu=calgary' on the kernel command line.
522           If unsure, say Y.
523
524 # need this always selected by IOMMU for the VIA workaround
525 config SWIOTLB
526         bool
527         help
528           Support for software bounce buffers used on x86-64 systems
529           which don't have a hardware IOMMU (e.g. the current generation
530           of Intel's x86-64 CPUs). Using this PCI devices which can only
531           access 32-bits of memory can be used on systems with more than
532           3 GB of memory. If unsure, say Y.
533
534 config X86_MCE
535         bool "Machine check support" if EMBEDDED
536         default y
537         help
538            Include a machine check error handler to report hardware errors.
539            This version will require the mcelog utility to decode some
540            machine check error logs. See
541            ftp://ftp.x86-64.org/pub/linux/tools/mcelog
542
543 config X86_MCE_INTEL
544         bool "Intel MCE features"
545         depends on X86_MCE && X86_LOCAL_APIC
546         default y
547         help
548            Additional support for intel specific MCE features such as
549            the thermal monitor.
550
551 config X86_MCE_AMD
552         bool "AMD MCE features"
553         depends on X86_MCE && X86_LOCAL_APIC
554         default y
555         help
556            Additional support for AMD specific MCE features such as
557            the DRAM Error Threshold.
558
559 config KEXEC
560         bool "kexec system call"
561         help
562           kexec is a system call that implements the ability to shutdown your
563           current kernel, and to start another kernel.  It is like a reboot
564           but it is independent of the system firmware.   And like a reboot
565           you can start any kernel with it, not just Linux.
566
567           The name comes from the similarity to the exec system call.
568
569           It is an ongoing process to be certain the hardware in a machine
570           is properly shutdown, so do not be surprised if this code does not
571           initially work for you.  It may help to enable device hotplugging
572           support.  As of this writing the exact hardware interface is
573           strongly in flux, so no good recommendation can be made.
574
575 config CRASH_DUMP
576         bool "kernel crash dumps (EXPERIMENTAL)"
577         depends on EXPERIMENTAL
578         help
579           Generate crash dump after being started by kexec.
580           This should be normally only set in special crash dump kernels
581           which are loaded in the main kernel with kexec-tools into
582           a specially reserved region and then later executed after
583           a crash by kdump/kexec. The crash dump kernel must be compiled
584           to a memory address not used by the main kernel or BIOS using
585           PHYSICAL_START, or it must be built as a relocatable image
586           (CONFIG_RELOCATABLE=y).
587           For more details see Documentation/kdump/kdump.txt
588
589 config RELOCATABLE
590         bool "Build a relocatable kernel (EXPERIMENTAL)"
591         depends on EXPERIMENTAL
592         help
593           Builds a relocatable kernel. This enables loading and running
594           a kernel binary from a different physical address than it has
595           been compiled for.
596
597           One use is for the kexec on panic case where the recovery kernel
598           must live at a different physical address than the primary
599           kernel.
600
601           Note: If CONFIG_RELOCATABLE=y, then the kernel runs from the address
602           it has been loaded at and the compile time physical address
603           (CONFIG_PHYSICAL_START) is ignored.
604
605 config PHYSICAL_START
606         hex "Physical address where the kernel is loaded" if (EMBEDDED || CRASH_DUMP)
607         default "0x200000"
608         help
609           This gives the physical address where the kernel is loaded. It
610           should be aligned to 2MB boundary.
611
612           If kernel is a not relocatable (CONFIG_RELOCATABLE=n) then
613           bzImage will decompress itself to above physical address and
614           run from there. Otherwise, bzImage will run from the address where
615           it has been loaded by the boot loader and will ignore above physical
616           address.
617
618           In normal kdump cases one does not have to set/change this option
619           as now bzImage can be compiled as a completely relocatable image
620           (CONFIG_RELOCATABLE=y) and be used to load and run from a different
621           address. This option is mainly useful for the folks who don't want
622           to use a bzImage for capturing the crash dump and want to use a
623           vmlinux instead.
624
625           So if you are using bzImage for capturing the crash dump, leave
626           the value here unchanged to 0x200000 and set CONFIG_RELOCATABLE=y.
627           Otherwise if you plan to use vmlinux for capturing the crash dump
628           change this value to start of the reserved region (Typically 16MB
629           0x1000000). In other words, it can be set based on the "X" value as
630           specified in the "crashkernel=YM@XM" command line boot parameter
631           passed to the panic-ed kernel. Typically this parameter is set as
632           crashkernel=64M@16M. Please take a look at
633           Documentation/kdump/kdump.txt for more details about crash dumps.
634
635           Usage of bzImage for capturing the crash dump is advantageous as
636           one does not have to build two kernels. Same kernel can be used
637           as production kernel and capture kernel.
638
639           Don't change this unless you know what you are doing.
640
641 config SECCOMP
642         bool "Enable seccomp to safely compute untrusted bytecode"
643         depends on PROC_FS
644         default y
645         help
646           This kernel feature is useful for number crunching applications
647           that may need to compute untrusted bytecode during their
648           execution. By using pipes or other transports made available to
649           the process as file descriptors supporting the read/write
650           syscalls, it's possible to isolate those applications in
651           their own address space using seccomp. Once seccomp is
652           enabled via /proc/<pid>/seccomp, it cannot be disabled
653           and the task is only allowed to execute a few safe syscalls
654           defined by each seccomp mode.
655
656           If unsure, say Y. Only embedded should say N here.
657
658 config CC_STACKPROTECTOR
659         bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)"
660         depends on EXPERIMENTAL
661         help
662          This option turns on the -fstack-protector GCC feature. This
663           feature puts, at the beginning of critical functions, a canary
664           value on the stack just before the return address, and validates
665           the value just before actually returning.  Stack based buffer
666           overflows (that need to overwrite this return address) now also
667           overwrite the canary, which gets detected and the attack is then
668           neutralized via a kernel panic.
669
670           This feature requires gcc version 4.2 or above, or a distribution
671           gcc with the feature backported. Older versions are automatically
672           detected and for those versions, this configuration option is ignored.
673
674 config CC_STACKPROTECTOR_ALL
675         bool "Use stack-protector for all functions"
676         depends on CC_STACKPROTECTOR
677         help
678           Normally, GCC only inserts the canary value protection for
679           functions that use large-ish on-stack buffers. By enabling
680           this option, GCC will be asked to do this for ALL functions.
681
682 source kernel/Kconfig.hz
683
684 config K8_NB
685         def_bool y
686         depends on AGP_AMD64 || GART_IOMMU || (PCI && NUMA)
687
688 endmenu
689
690 #
691 # Use the generic interrupt handling code in kernel/irq/:
692 #
693 config GENERIC_HARDIRQS
694         bool
695         default y
696
697 config GENERIC_IRQ_PROBE
698         bool
699         default y
700
701 # we have no ISA slots, but we do have ISA-style DMA.
702 config ISA_DMA_API
703         bool
704         default y
705
706 config GENERIC_PENDING_IRQ
707         bool
708         depends on GENERIC_HARDIRQS && SMP
709         default y
710
711 menu "Power management options"
712
713 source kernel/power/Kconfig
714
715 config ARCH_HIBERNATION_HEADER
716         bool
717         depends on HIBERNATION
718         default y
719
720 source "drivers/acpi/Kconfig"
721
722 source "arch/x86/kernel/cpu/cpufreq/Kconfig_64"
723
724 source "drivers/cpuidle/Kconfig"
725
726 endmenu
727
728 menu "Bus options (PCI etc.)"
729
730 config PCI
731         bool "PCI support"
732         select ARCH_SUPPORTS_MSI if (X86_LOCAL_APIC && X86_IO_APIC)
733
734 # x86-64 doesn't support PCI BIOS access from long mode so always go direct.
735 config PCI_DIRECT
736         bool
737         depends on PCI
738         default y
739
740 config PCI_MMCONFIG
741         bool "Support mmconfig PCI config space access"
742         depends on PCI && ACPI
743
744 config PCI_DOMAINS
745         bool
746         depends on PCI
747         default y
748
749 config DMAR
750         bool "Support for DMA Remapping Devices (EXPERIMENTAL)"
751         depends on PCI_MSI && ACPI && EXPERIMENTAL
752         help
753           DMA remapping (DMAR) devices support enables independent address
754           translations for Direct Memory Access (DMA) from devices.
755           These DMA remapping devices are reported via ACPI tables
756           and include PCI device scope covered by these DMA
757           remapping devices.
758
759 config DMAR_GFX_WA
760         bool "Support for Graphics workaround"
761         depends on DMAR
762         default y
763         help
764          Current Graphics drivers tend to use physical address
765          for DMA and avoid using DMA APIs. Setting this config
766          option permits the IOMMU driver to set a unity map for
767          all the OS-visible memory. Hence the driver can continue
768          to use physical addresses for DMA.
769
770 config DMAR_FLOPPY_WA
771         bool
772         depends on DMAR
773         default y
774         help
775          Floppy disk drivers are know to bypass DMA API calls
776          thereby failing to work when IOMMU is enabled. This
777          workaround will setup a 1:1 mapping for the first
778          16M to make floppy (an ISA device) work.
779
780 source "drivers/pci/pcie/Kconfig"
781
782 source "drivers/pci/Kconfig"
783
784 source "drivers/pcmcia/Kconfig"
785
786 source "drivers/pci/hotplug/Kconfig"
787
788 endmenu
789
790
791 menu "Executable file formats / Emulations"
792
793 source "fs/Kconfig.binfmt"
794
795 config IA32_EMULATION
796         bool "IA32 Emulation"
797         help
798           Include code to run 32-bit programs under a 64-bit kernel. You should
799           likely turn this on, unless you're 100% sure that you don't have any
800           32-bit programs left.
801
802 config IA32_AOUT
803        tristate "IA32 a.out support"
804        depends on IA32_EMULATION
805        help
806          Support old a.out binaries in the 32bit emulation.
807
808 config COMPAT
809         bool
810         depends on IA32_EMULATION
811         default y
812
813 config COMPAT_FOR_U64_ALIGNMENT
814         def_bool COMPAT
815
816 config SYSVIPC_COMPAT
817         bool
818         depends on COMPAT && SYSVIPC
819         default y
820
821 endmenu
822
823 source "net/Kconfig"
824
825 source drivers/Kconfig
826
827 source "drivers/firmware/Kconfig"
828
829 source fs/Kconfig
830
831 source "kernel/Kconfig.instrumentation"
832
833 source "arch/x86/Kconfig.debug"
834
835 source "security/Kconfig"
836
837 source "crypto/Kconfig"
838
839 source "lib/Kconfig"