aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86
diff options
context:
space:
mode:
authorSam Ravnborg <sam@ravnborg.org>2007-11-06 14:41:05 -0500
committerSam Ravnborg <sam@ravnborg.org>2007-11-12 15:02:18 -0500
commite279b6c1d329e50b766bce96aacc197eae8a053b (patch)
tree76bee122c61be1e2897969ed207c09136248c255 /arch/x86
parente8ef95227a66284e070d255f902e2e4139fd141a (diff)
x86: start unification of arch/x86/Kconfig.*
This step introduces the file arch/x86/Kconfig which contains all the menu's from "Power Management" and below. The main part of the new Kconfig file is shared and the remaining i386/x86_64 specific symbols are covered by dependencies. A x86_64 allmodconfig build did not show any differences. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@redhat.com> Cc: "H. Peter Anvin" <hpa@zytor.com>
Diffstat (limited to 'arch/x86')
-rw-r--r--arch/x86/Kconfig401
-rw-r--r--arch/x86/Kconfig.i386326
-rw-r--r--arch/x86/Kconfig.x86_64135
3 files changed, 404 insertions, 458 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
new file mode 100644
index 000000000000..d1382c512953
--- /dev/null
+++ b/arch/x86/Kconfig
@@ -0,0 +1,401 @@
1menu "Power management options"
2 depends on !X86_VOYAGER
3
4config ARCH_HIBERNATION_HEADER
5 bool
6 depends on X86_64 && HIBERNATION
7 default y
8
9source "kernel/power/Kconfig"
10
11source "drivers/acpi/Kconfig"
12
13menuconfig APM
14 tristate "APM (Advanced Power Management) BIOS support"
15 depends on X86_32 && PM_SLEEP && !X86_VISWS
16 ---help---
17 APM is a BIOS specification for saving power using several different
18 techniques. This is mostly useful for battery powered laptops with
19 APM compliant BIOSes. If you say Y here, the system time will be
20 reset after a RESUME operation, the /proc/apm device will provide
21 battery status information, and user-space programs will receive
22 notification of APM "events" (e.g. battery status change).
23
24 If you select "Y" here, you can disable actual use of the APM
25 BIOS by passing the "apm=off" option to the kernel at boot time.
26
27 Note that the APM support is almost completely disabled for
28 machines with more than one CPU.
29
30 In order to use APM, you will need supporting software. For location
31 and more information, read <file:Documentation/pm.txt> and the
32 Battery Powered Linux mini-HOWTO, available from
33 <http://www.tldp.org/docs.html#howto>.
34
35 This driver does not spin down disk drives (see the hdparm(8)
36 manpage ("man 8 hdparm") for that), and it doesn't turn off
37 VESA-compliant "green" monitors.
38
39 This driver does not support the TI 4000M TravelMate and the ACER
40 486/DX4/75 because they don't have compliant BIOSes. Many "green"
41 desktop machines also don't have compliant BIOSes, and this driver
42 may cause those machines to panic during the boot phase.
43
44 Generally, if you don't have a battery in your machine, there isn't
45 much point in using this driver and you should say N. If you get
46 random kernel OOPSes or reboots that don't seem to be related to
47 anything, try disabling/enabling this option (or disabling/enabling
48 APM in your BIOS).
49
50 Some other things you should try when experiencing seemingly random,
51 "weird" problems:
52
53 1) make sure that you have enough swap space and that it is
54 enabled.
55 2) pass the "no-hlt" option to the kernel
56 3) switch on floating point emulation in the kernel and pass
57 the "no387" option to the kernel
58 4) pass the "floppy=nodma" option to the kernel
59 5) pass the "mem=4M" option to the kernel (thereby disabling
60 all but the first 4 MB of RAM)
61 6) make sure that the CPU is not over clocked.
62 7) read the sig11 FAQ at <http://www.bitwizard.nl/sig11/>
63 8) disable the cache from your BIOS settings
64 9) install a fan for the video card or exchange video RAM
65 10) install a better fan for the CPU
66 11) exchange RAM chips
67 12) exchange the motherboard.
68
69 To compile this driver as a module, choose M here: the
70 module will be called apm.
71
72if APM
73
74config APM_IGNORE_USER_SUSPEND
75 bool "Ignore USER SUSPEND"
76 help
77 This option will ignore USER SUSPEND requests. On machines with a
78 compliant APM BIOS, you want to say N. However, on the NEC Versa M
79 series notebooks, it is necessary to say Y because of a BIOS bug.
80
81config APM_DO_ENABLE
82 bool "Enable PM at boot time"
83 ---help---
84 Enable APM features at boot time. From page 36 of the APM BIOS
85 specification: "When disabled, the APM BIOS does not automatically
86 power manage devices, enter the Standby State, enter the Suspend
87 State, or take power saving steps in response to CPU Idle calls."
88 This driver will make CPU Idle calls when Linux is idle (unless this
89 feature is turned off -- see "Do CPU IDLE calls", below). This
90 should always save battery power, but more complicated APM features
91 will be dependent on your BIOS implementation. You may need to turn
92 this option off if your computer hangs at boot time when using APM
93 support, or if it beeps continuously instead of suspending. Turn
94 this off if you have a NEC UltraLite Versa 33/C or a Toshiba
95 T400CDT. This is off by default since most machines do fine without
96 this feature.
97
98config APM_CPU_IDLE
99 bool "Make CPU Idle calls when idle"
100 help
101 Enable calls to APM CPU Idle/CPU Busy inside the kernel's idle loop.
102 On some machines, this can activate improved power savings, such as
103 a slowed CPU clock rate, when the machine is idle. These idle calls
104 are made after the idle loop has run for some length of time (e.g.,
105 333 mS). On some machines, this will cause a hang at boot time or
106 whenever the CPU becomes idle. (On machines with more than one CPU,
107 this option does nothing.)
108
109config APM_DISPLAY_BLANK
110 bool "Enable console blanking using APM"
111 help
112 Enable console blanking using the APM. Some laptops can use this to
113 turn off the LCD backlight when the screen blanker of the Linux
114 virtual console blanks the screen. Note that this is only used by
115 the virtual console screen blanker, and won't turn off the backlight
116 when using the X Window system. This also doesn't have anything to
117 do with your VESA-compliant power-saving monitor. Further, this
118 option doesn't work for all laptops -- it might not turn off your
119 backlight at all, or it might print a lot of errors to the console,
120 especially if you are using gpm.
121
122config APM_ALLOW_INTS
123 bool "Allow interrupts during APM BIOS calls"
124 help
125 Normally we disable external interrupts while we are making calls to
126 the APM BIOS as a measure to lessen the effects of a badly behaving
127 BIOS implementation. The BIOS should reenable interrupts if it
128 needs to. Unfortunately, some BIOSes do not -- especially those in
129 many of the newer IBM Thinkpads. If you experience hangs when you
130 suspend, try setting this to Y. Otherwise, say N.
131
132config APM_REAL_MODE_POWER_OFF
133 bool "Use real mode APM BIOS call to power off"
134 help
135 Use real mode APM BIOS calls to switch off the computer. This is
136 a work-around for a number of buggy BIOSes. Switch this option on if
137 your computer crashes instead of powering off properly.
138
139endif # APM
140
141source "arch/x86/kernel/cpu/cpufreq/Kconfig"
142
143source "drivers/cpuidle/Kconfig"
144
145endmenu
146
147
148menu "Bus options (PCI etc.)"
149
150config PCI
151 bool "PCI support" if !X86_VISWS
152 depends on !X86_VOYAGER
153 default y if X86_VISWS
154 select ARCH_SUPPORTS_MSI if (X86_LOCAL_APIC && X86_IO_APIC)
155 help
156 Find out whether you have a PCI motherboard. PCI is the name of a
157 bus system, i.e. the way the CPU talks to the other stuff inside
158 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
159 VESA. If you have PCI, say Y, otherwise N.
160
161 The PCI-HOWTO, available from
162 <http://www.tldp.org/docs.html#howto>, contains valuable
163 information about which PCI hardware does work under Linux and which
164 doesn't.
165
166choice
167 prompt "PCI access mode"
168 depends on X86_32 && PCI && !X86_VISWS
169 default PCI_GOANY
170 ---help---
171 On PCI systems, the BIOS can be used to detect the PCI devices and
172 determine their configuration. However, some old PCI motherboards
173 have BIOS bugs and may crash if this is done. Also, some embedded
174 PCI-based systems don't have any BIOS at all. Linux can also try to
175 detect the PCI hardware directly without using the BIOS.
176
177 With this option, you can specify how Linux should detect the
178 PCI devices. If you choose "BIOS", the BIOS will be used,
179 if you choose "Direct", the BIOS won't be used, and if you
180 choose "MMConfig", then PCI Express MMCONFIG will be used.
181 If you choose "Any", the kernel will try MMCONFIG, then the
182 direct access method and falls back to the BIOS if that doesn't
183 work. If unsure, go with the default, which is "Any".
184
185config PCI_GOBIOS
186 bool "BIOS"
187
188config PCI_GOMMCONFIG
189 bool "MMConfig"
190
191config PCI_GODIRECT
192 bool "Direct"
193
194config PCI_GOANY
195 bool "Any"
196
197endchoice
198
199config PCI_BIOS
200 bool
201 depends on X86_32 && !X86_VISWS && PCI && (PCI_GOBIOS || PCI_GOANY)
202 default y
203
204# x86-64 doesn't support PCI BIOS access from long mode so always go direct.
205config PCI_DIRECT
206 bool
207 depends on PCI && (X86_64 || (PCI_GODIRECT || PCI_GOANY) || X86_VISWS)
208 default y
209
210config PCI_MMCONFIG
211 bool
212 depends on X86_32 && PCI && ACPI && (PCI_GOMMCONFIG || PCI_GOANY)
213 default y
214
215config PCI_DOMAINS
216 bool
217 depends on PCI
218 default y
219
220config PCI_MMCONFIG
221 bool "Support mmconfig PCI config space access"
222 depends on X86_64 && PCI && ACPI
223
224config DMAR
225 bool "Support for DMA Remapping Devices (EXPERIMENTAL)"
226 depends on X86_64 && PCI_MSI && ACPI && EXPERIMENTAL
227 help
228 DMA remapping (DMAR) devices support enables independent address
229 translations for Direct Memory Access (DMA) from devices.
230 These DMA remapping devices are reported via ACPI tables
231 and include PCI device scope covered by these DMA
232 remapping devices.
233
234config DMAR_GFX_WA
235 bool "Support for Graphics workaround"
236 depends on DMAR
237 default y
238 help
239 Current Graphics drivers tend to use physical address
240 for DMA and avoid using DMA APIs. Setting this config
241 option permits the IOMMU driver to set a unity map for
242 all the OS-visible memory. Hence the driver can continue
243 to use physical addresses for DMA.
244
245config DMAR_FLOPPY_WA
246 bool
247 depends on DMAR
248 default y
249 help
250 Floppy disk drivers are know to bypass DMA API calls
251 thereby failing to work when IOMMU is enabled. This
252 workaround will setup a 1:1 mapping for the first
253 16M to make floppy (an ISA device) work.
254
255source "drivers/pci/pcie/Kconfig"
256
257source "drivers/pci/Kconfig"
258
259# x86_64 have no ISA slots, but do have ISA-style DMA.
260config ISA_DMA_API
261 bool
262 default y
263
264if X86_32
265
266config ISA
267 bool "ISA support"
268 depends on !(X86_VOYAGER || X86_VISWS)
269 help
270 Find out whether you have ISA slots on your motherboard. ISA is the
271 name of a bus system, i.e. the way the CPU talks to the other stuff
272 inside your box. Other bus systems are PCI, EISA, MicroChannel
273 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
274 newer boards don't support it. If you have ISA, say Y, otherwise N.
275
276config EISA
277 bool "EISA support"
278 depends on ISA
279 ---help---
280 The Extended Industry Standard Architecture (EISA) bus was
281 developed as an open alternative to the IBM MicroChannel bus.
282
283 The EISA bus provided some of the features of the IBM MicroChannel
284 bus while maintaining backward compatibility with cards made for
285 the older ISA bus. The EISA bus saw limited use between 1988 and
286 1995 when it was made obsolete by the PCI bus.
287
288 Say Y here if you are building a kernel for an EISA-based machine.
289
290 Otherwise, say N.
291
292source "drivers/eisa/Kconfig"
293
294config MCA
295 bool "MCA support" if !(X86_VISWS || X86_VOYAGER)
296 default y if X86_VOYAGER
297 help
298 MicroChannel Architecture is found in some IBM PS/2 machines and
299 laptops. It is a bus system similar to PCI or ISA. See
300 <file:Documentation/mca.txt> (and especially the web page given
301 there) before attempting to build an MCA bus kernel.
302
303source "drivers/mca/Kconfig"
304
305config SCx200
306 tristate "NatSemi SCx200 support"
307 depends on !X86_VOYAGER
308 help
309 This provides basic support for National Semiconductor's
310 (now AMD's) Geode processors. The driver probes for the
311 PCI-IDs of several on-chip devices, so its a good dependency
312 for other scx200_* drivers.
313
314 If compiled as a module, the driver is named scx200.
315
316config SCx200HR_TIMER
317 tristate "NatSemi SCx200 27MHz High-Resolution Timer Support"
318 depends on SCx200 && GENERIC_TIME
319 default y
320 help
321 This driver provides a clocksource built upon the on-chip
322 27MHz high-resolution timer. Its also a workaround for
323 NSC Geode SC-1100's buggy TSC, which loses time when the
324 processor goes idle (as is done by the scheduler). The
325 other workaround is idle=poll boot option.
326
327config GEODE_MFGPT_TIMER
328 bool "Geode Multi-Function General Purpose Timer (MFGPT) events"
329 depends on MGEODE_LX && GENERIC_TIME && GENERIC_CLOCKEVENTS
330 default y
331 help
332 This driver provides a clock event source based on the MFGPT
333 timer(s) in the CS5535 and CS5536 companion chip for the geode.
334 MFGPTs have a better resolution and max interval than the
335 generic PIT, and are suitable for use as high-res timers.
336
337config K8_NB
338 def_bool y
339 depends on AGP_AMD64
340
341endif # X86_32
342
343source "drivers/pcmcia/Kconfig"
344
345source "drivers/pci/hotplug/Kconfig"
346
347endmenu
348
349
350menu "Executable file formats / Emulations"
351
352source "fs/Kconfig.binfmt"
353
354config IA32_EMULATION
355 bool "IA32 Emulation"
356 depends on X86_64
357 help
358 Include code to run 32-bit programs under a 64-bit kernel. You should
359 likely turn this on, unless you're 100% sure that you don't have any
360 32-bit programs left.
361
362config IA32_AOUT
363 tristate "IA32 a.out support"
364 depends on IA32_EMULATION
365 help
366 Support old a.out binaries in the 32bit emulation.
367
368config COMPAT
369 bool
370 depends on IA32_EMULATION
371 default y
372
373config COMPAT_FOR_U64_ALIGNMENT
374 def_bool COMPAT
375 depends on X86_64
376
377config SYSVIPC_COMPAT
378 bool
379 depends on X86_64 && COMPAT && SYSVIPC
380 default y
381
382endmenu
383
384
385source "net/Kconfig"
386
387source "drivers/Kconfig"
388
389source "drivers/firmware/Kconfig"
390
391source "fs/Kconfig"
392
393source "kernel/Kconfig.instrumentation"
394
395source "arch/x86/Kconfig.debug"
396
397source "security/Kconfig"
398
399source "crypto/Kconfig"
400
401source "lib/Kconfig"
diff --git a/arch/x86/Kconfig.i386 b/arch/x86/Kconfig.i386
index b6f2fd0e443b..9fe63f10e57f 100644
--- a/arch/x86/Kconfig.i386
+++ b/arch/x86/Kconfig.i386
@@ -517,8 +517,6 @@ config X86_CPUID
517 with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to 517 with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to
518 /dev/cpu/31/cpuid. 518 /dev/cpu/31/cpuid.
519 519
520source "drivers/firmware/Kconfig"
521
522choice 520choice
523 prompt "High Memory Support" 521 prompt "High Memory Support"
524 default HIGHMEM4G if !X86_NUMAQ 522 default HIGHMEM4G if !X86_NUMAQ
@@ -957,328 +955,6 @@ config ARCH_ENABLE_MEMORY_HOTPLUG
957 def_bool y 955 def_bool y
958 depends on HIGHMEM 956 depends on HIGHMEM
959 957
960menu "Power management options (ACPI, APM)"
961 depends on !X86_VOYAGER
962
963source kernel/power/Kconfig
964
965source "drivers/acpi/Kconfig"
966
967menuconfig APM
968 tristate "APM (Advanced Power Management) BIOS support"
969 depends on PM_SLEEP && !X86_VISWS
970 ---help---
971 APM is a BIOS specification for saving power using several different
972 techniques. This is mostly useful for battery powered laptops with
973 APM compliant BIOSes. If you say Y here, the system time will be
974 reset after a RESUME operation, the /proc/apm device will provide
975 battery status information, and user-space programs will receive
976 notification of APM "events" (e.g. battery status change).
977
978 If you select "Y" here, you can disable actual use of the APM
979 BIOS by passing the "apm=off" option to the kernel at boot time.
980
981 Note that the APM support is almost completely disabled for
982 machines with more than one CPU.
983
984 In order to use APM, you will need supporting software. For location
985 and more information, read <file:Documentation/pm.txt> and the
986 Battery Powered Linux mini-HOWTO, available from
987 <http://www.tldp.org/docs.html#howto>.
988
989 This driver does not spin down disk drives (see the hdparm(8)
990 manpage ("man 8 hdparm") for that), and it doesn't turn off
991 VESA-compliant "green" monitors.
992
993 This driver does not support the TI 4000M TravelMate and the ACER
994 486/DX4/75 because they don't have compliant BIOSes. Many "green"
995 desktop machines also don't have compliant BIOSes, and this driver
996 may cause those machines to panic during the boot phase.
997
998 Generally, if you don't have a battery in your machine, there isn't
999 much point in using this driver and you should say N. If you get
1000 random kernel OOPSes or reboots that don't seem to be related to
1001 anything, try disabling/enabling this option (or disabling/enabling
1002 APM in your BIOS).
1003
1004 Some other things you should try when experiencing seemingly random,
1005 "weird" problems:
1006
1007 1) make sure that you have enough swap space and that it is
1008 enabled.
1009 2) pass the "no-hlt" option to the kernel
1010 3) switch on floating point emulation in the kernel and pass
1011 the "no387" option to the kernel
1012 4) pass the "floppy=nodma" option to the kernel
1013 5) pass the "mem=4M" option to the kernel (thereby disabling
1014 all but the first 4 MB of RAM)
1015 6) make sure that the CPU is not over clocked.
1016 7) read the sig11 FAQ at <http://www.bitwizard.nl/sig11/>
1017 8) disable the cache from your BIOS settings
1018 9) install a fan for the video card or exchange video RAM
1019 10) install a better fan for the CPU
1020 11) exchange RAM chips
1021 12) exchange the motherboard.
1022
1023 To compile this driver as a module, choose M here: the
1024 module will be called apm.
1025
1026if APM
1027
1028config APM_IGNORE_USER_SUSPEND
1029 bool "Ignore USER SUSPEND"
1030 help
1031 This option will ignore USER SUSPEND requests. On machines with a
1032 compliant APM BIOS, you want to say N. However, on the NEC Versa M
1033 series notebooks, it is necessary to say Y because of a BIOS bug.
1034
1035config APM_DO_ENABLE
1036 bool "Enable PM at boot time"
1037 ---help---
1038 Enable APM features at boot time. From page 36 of the APM BIOS
1039 specification: "When disabled, the APM BIOS does not automatically
1040 power manage devices, enter the Standby State, enter the Suspend
1041 State, or take power saving steps in response to CPU Idle calls."
1042 This driver will make CPU Idle calls when Linux is idle (unless this
1043 feature is turned off -- see "Do CPU IDLE calls", below). This
1044 should always save battery power, but more complicated APM features
1045 will be dependent on your BIOS implementation. You may need to turn
1046 this option off if your computer hangs at boot time when using APM
1047 support, or if it beeps continuously instead of suspending. Turn
1048 this off if you have a NEC UltraLite Versa 33/C or a Toshiba
1049 T400CDT. This is off by default since most machines do fine without
1050 this feature.
1051
1052config APM_CPU_IDLE
1053 bool "Make CPU Idle calls when idle"
1054 help
1055 Enable calls to APM CPU Idle/CPU Busy inside the kernel's idle loop.
1056 On some machines, this can activate improved power savings, such as
1057 a slowed CPU clock rate, when the machine is idle. These idle calls
1058 are made after the idle loop has run for some length of time (e.g.,
1059 333 mS). On some machines, this will cause a hang at boot time or
1060 whenever the CPU becomes idle. (On machines with more than one CPU,
1061 this option does nothing.)
1062
1063config APM_DISPLAY_BLANK
1064 bool "Enable console blanking using APM"
1065 help
1066 Enable console blanking using the APM. Some laptops can use this to
1067 turn off the LCD backlight when the screen blanker of the Linux
1068 virtual console blanks the screen. Note that this is only used by
1069 the virtual console screen blanker, and won't turn off the backlight
1070 when using the X Window system. This also doesn't have anything to
1071 do with your VESA-compliant power-saving monitor. Further, this
1072 option doesn't work for all laptops -- it might not turn off your
1073 backlight at all, or it might print a lot of errors to the console,
1074 especially if you are using gpm.
1075
1076config APM_ALLOW_INTS
1077 bool "Allow interrupts during APM BIOS calls"
1078 help
1079 Normally we disable external interrupts while we are making calls to
1080 the APM BIOS as a measure to lessen the effects of a badly behaving
1081 BIOS implementation. The BIOS should reenable interrupts if it
1082 needs to. Unfortunately, some BIOSes do not -- especially those in
1083 many of the newer IBM Thinkpads. If you experience hangs when you
1084 suspend, try setting this to Y. Otherwise, say N.
1085
1086config APM_REAL_MODE_POWER_OFF
1087 bool "Use real mode APM BIOS call to power off"
1088 help
1089 Use real mode APM BIOS calls to switch off the computer. This is
1090 a work-around for a number of buggy BIOSes. Switch this option on if
1091 your computer crashes instead of powering off properly.
1092
1093endif # APM
1094
1095source "arch/x86/kernel/cpu/cpufreq/Kconfig"
1096
1097source "drivers/cpuidle/Kconfig"
1098
1099endmenu
1100
1101menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
1102
1103config PCI
1104 bool "PCI support" if !X86_VISWS
1105 depends on !X86_VOYAGER
1106 default y if X86_VISWS
1107 select ARCH_SUPPORTS_MSI if (X86_LOCAL_APIC && X86_IO_APIC)
1108 help
1109 Find out whether you have a PCI motherboard. PCI is the name of a
1110 bus system, i.e. the way the CPU talks to the other stuff inside
1111 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
1112 VESA. If you have PCI, say Y, otherwise N.
1113
1114 The PCI-HOWTO, available from
1115 <http://www.tldp.org/docs.html#howto>, contains valuable
1116 information about which PCI hardware does work under Linux and which
1117 doesn't.
1118
1119choice
1120 prompt "PCI access mode"
1121 depends on PCI && !X86_VISWS
1122 default PCI_GOANY
1123 ---help---
1124 On PCI systems, the BIOS can be used to detect the PCI devices and
1125 determine their configuration. However, some old PCI motherboards
1126 have BIOS bugs and may crash if this is done. Also, some embedded
1127 PCI-based systems don't have any BIOS at all. Linux can also try to
1128 detect the PCI hardware directly without using the BIOS.
1129
1130 With this option, you can specify how Linux should detect the
1131 PCI devices. If you choose "BIOS", the BIOS will be used,
1132 if you choose "Direct", the BIOS won't be used, and if you
1133 choose "MMConfig", then PCI Express MMCONFIG will be used.
1134 If you choose "Any", the kernel will try MMCONFIG, then the
1135 direct access method and falls back to the BIOS if that doesn't
1136 work. If unsure, go with the default, which is "Any".
1137
1138config PCI_GOBIOS
1139 bool "BIOS"
1140
1141config PCI_GOMMCONFIG
1142 bool "MMConfig"
1143
1144config PCI_GODIRECT
1145 bool "Direct"
1146
1147config PCI_GOANY
1148 bool "Any"
1149
1150endchoice
1151
1152config PCI_BIOS
1153 bool
1154 depends on !X86_VISWS && PCI && (PCI_GOBIOS || PCI_GOANY)
1155 default y
1156
1157config PCI_DIRECT
1158 bool
1159 depends on PCI && ((PCI_GODIRECT || PCI_GOANY) || X86_VISWS)
1160 default y
1161
1162config PCI_MMCONFIG
1163 bool
1164 depends on PCI && ACPI && (PCI_GOMMCONFIG || PCI_GOANY)
1165 default y
1166
1167config PCI_DOMAINS
1168 bool
1169 depends on PCI
1170 default y
1171
1172source "drivers/pci/pcie/Kconfig"
1173
1174source "drivers/pci/Kconfig"
1175
1176config ISA_DMA_API
1177 bool
1178 default y
1179
1180config ISA
1181 bool "ISA support"
1182 depends on !(X86_VOYAGER || X86_VISWS)
1183 help
1184 Find out whether you have ISA slots on your motherboard. ISA is the
1185 name of a bus system, i.e. the way the CPU talks to the other stuff
1186 inside your box. Other bus systems are PCI, EISA, MicroChannel
1187 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
1188 newer boards don't support it. If you have ISA, say Y, otherwise N.
1189
1190config EISA
1191 bool "EISA support"
1192 depends on ISA
1193 ---help---
1194 The Extended Industry Standard Architecture (EISA) bus was
1195 developed as an open alternative to the IBM MicroChannel bus.
1196
1197 The EISA bus provided some of the features of the IBM MicroChannel
1198 bus while maintaining backward compatibility with cards made for
1199 the older ISA bus. The EISA bus saw limited use between 1988 and
1200 1995 when it was made obsolete by the PCI bus.
1201
1202 Say Y here if you are building a kernel for an EISA-based machine.
1203
1204 Otherwise, say N.
1205
1206source "drivers/eisa/Kconfig"
1207
1208config MCA
1209 bool "MCA support" if !(X86_VISWS || X86_VOYAGER)
1210 default y if X86_VOYAGER
1211 help
1212 MicroChannel Architecture is found in some IBM PS/2 machines and
1213 laptops. It is a bus system similar to PCI or ISA. See
1214 <file:Documentation/mca.txt> (and especially the web page given
1215 there) before attempting to build an MCA bus kernel.
1216
1217source "drivers/mca/Kconfig"
1218
1219config SCx200
1220 tristate "NatSemi SCx200 support"
1221 depends on !X86_VOYAGER
1222 help
1223 This provides basic support for National Semiconductor's
1224 (now AMD's) Geode processors. The driver probes for the
1225 PCI-IDs of several on-chip devices, so its a good dependency
1226 for other scx200_* drivers.
1227
1228 If compiled as a module, the driver is named scx200.
1229
1230config SCx200HR_TIMER
1231 tristate "NatSemi SCx200 27MHz High-Resolution Timer Support"
1232 depends on SCx200 && GENERIC_TIME
1233 default y
1234 help
1235 This driver provides a clocksource built upon the on-chip
1236 27MHz high-resolution timer. Its also a workaround for
1237 NSC Geode SC-1100's buggy TSC, which loses time when the
1238 processor goes idle (as is done by the scheduler). The
1239 other workaround is idle=poll boot option.
1240
1241config GEODE_MFGPT_TIMER
1242 bool "Geode Multi-Function General Purpose Timer (MFGPT) events"
1243 depends on MGEODE_LX && GENERIC_TIME && GENERIC_CLOCKEVENTS
1244 default y
1245 help
1246 This driver provides a clock event source based on the MFGPT
1247 timer(s) in the CS5535 and CS5536 companion chip for the geode.
1248 MFGPTs have a better resolution and max interval than the
1249 generic PIT, and are suitable for use as high-res timers.
1250
1251config K8_NB
1252 def_bool y
1253 depends on AGP_AMD64
1254
1255source "drivers/pcmcia/Kconfig"
1256
1257source "drivers/pci/hotplug/Kconfig"
1258
1259endmenu
1260
1261menu "Executable file formats"
1262
1263source "fs/Kconfig.binfmt"
1264
1265endmenu
1266
1267source "net/Kconfig"
1268
1269source "drivers/Kconfig"
1270
1271source "fs/Kconfig"
1272
1273source "kernel/Kconfig.instrumentation"
1274
1275source "arch/x86/Kconfig.debug"
1276
1277source "security/Kconfig"
1278
1279source "crypto/Kconfig"
1280
1281source "lib/Kconfig"
1282 958
1283# 959#
1284# Use the generic interrupt handling code in kernel/irq/: 960# Use the generic interrupt handling code in kernel/irq/:
@@ -1319,3 +995,5 @@ config X86_TRAMPOLINE
1319config KTIME_SCALAR 995config KTIME_SCALAR
1320 bool 996 bool
1321 default y 997 default y
998
999source "arch/x86/Kconfig"
diff --git a/arch/x86/Kconfig.x86_64 b/arch/x86/Kconfig.x86_64
index 8d6b53425449..264623c30d55 100644
--- a/arch/x86/Kconfig.x86_64
+++ b/arch/x86/Kconfig.x86_64
@@ -698,142 +698,9 @@ config GENERIC_IRQ_PROBE
698 bool 698 bool
699 default y 699 default y
700 700
701# we have no ISA slots, but we do have ISA-style DMA.
702config ISA_DMA_API
703 bool
704 default y
705
706config GENERIC_PENDING_IRQ 701config GENERIC_PENDING_IRQ
707 bool 702 bool
708 depends on GENERIC_HARDIRQS && SMP 703 depends on GENERIC_HARDIRQS && SMP
709 default y 704 default y
710 705
711menu "Power management options" 706source "arch/x86/Kconfig"
712
713source kernel/power/Kconfig
714
715config ARCH_HIBERNATION_HEADER
716 bool
717 depends on HIBERNATION
718 default y
719
720source "drivers/acpi/Kconfig"
721
722source "arch/x86/kernel/cpu/cpufreq/Kconfig"
723
724source "drivers/cpuidle/Kconfig"
725
726endmenu
727
728menu "Bus options (PCI etc.)"
729
730config 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.
735config PCI_DIRECT
736 bool
737 depends on PCI
738 default y
739
740config PCI_MMCONFIG
741 bool "Support mmconfig PCI config space access"
742 depends on PCI && ACPI
743
744config PCI_DOMAINS
745 bool
746 depends on PCI
747 default y
748
749config 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
759config 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
770config 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
780source "drivers/pci/pcie/Kconfig"
781
782source "drivers/pci/Kconfig"
783
784source "drivers/pcmcia/Kconfig"
785
786source "drivers/pci/hotplug/Kconfig"
787
788endmenu
789
790
791menu "Executable file formats / Emulations"
792
793source "fs/Kconfig.binfmt"
794
795config 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
802config 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
808config COMPAT
809 bool
810 depends on IA32_EMULATION
811 default y
812
813config COMPAT_FOR_U64_ALIGNMENT
814 def_bool COMPAT
815
816config SYSVIPC_COMPAT
817 bool
818 depends on COMPAT && SYSVIPC
819 default y
820
821endmenu
822
823source "net/Kconfig"
824
825source drivers/Kconfig
826
827source "drivers/firmware/Kconfig"
828
829source fs/Kconfig
830
831source "kernel/Kconfig.instrumentation"
832
833source "arch/x86/Kconfig.debug"
834
835source "security/Kconfig"
836
837source "crypto/Kconfig"
838
839source "lib/Kconfig"