blob: ef179033a7c2149f3dffe8c4aeeb536058454471 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001# SPDX-License-Identifier: GPL-2.0
Linus Torvalds1da177e2005-04-16 15:20:36 -07002config ALPHA
3 bool
4 default y
Mark Salter1571ed02013-10-07 19:51:52 -04005 select ARCH_MIGHT_HAVE_PC_PARPORT
Mark Salter77b2d072014-01-01 11:27:31 -08006 select ARCH_MIGHT_HAVE_PC_SERIO
Christoph Hellwig87a4c372018-07-31 13:39:32 +02007 select ARCH_NO_PREEMPT
Christoph Hellwig7c703e52018-11-09 09:51:00 +01008 select ARCH_NO_SG_CHAIN
Matt Turner8f8dcb32015-08-04 14:35:05 -07009 select ARCH_USE_CMPXCHG_LOCKREF
Christoph Hellwigeb01d422018-11-15 20:05:32 +010010 select FORCE_PCI if !ALPHA_JENSEN
Christoph Hellwig2eac9c22018-11-15 20:05:33 +010011 select PCI_DOMAINS if PCI
Christoph Hellwig20f1b792018-11-15 20:05:34 +010012 select PCI_SYSCALL if PCI
David Woodhousee17c6d52008-06-17 12:19:34 +010013 select HAVE_AOUT
Masahiro Yamada2ff2b7e2019-08-19 14:54:20 +090014 select HAVE_ASM_MODVERSIONS
Sam Ravnborgec7748b2008-02-09 10:46:40 +010015 select HAVE_IDE
Mathieu Desnoyers42d4b832008-02-02 15:10:34 -050016 select HAVE_OPROFILE
Ralf Baechle8761f1a2011-06-01 19:05:09 +010017 select HAVE_PCSPKR_PLATFORM
Michael Creea582e6f2009-12-08 14:27:01 -050018 select HAVE_PERF_EVENTS
Christoph Hellwigf616ab52018-05-09 06:53:49 +020019 select NEED_DMA_MAP_STATE
Christoph Hellwig86596f02018-04-05 09:44:52 +020020 select NEED_SG_DMA_LENGTH
Stephen Rothwell4febd952013-03-07 15:48:16 +110021 select VIRT_TO_BUS
Thomas Gleixnere27ec642011-01-19 20:27:11 +010022 select GENERIC_IRQ_PROBE
Christoph Hellwigeb01d422018-11-15 20:05:32 +010023 select GENERIC_PCI_IOMAP if PCI
Thomas Gleixnere27ec642011-01-19 20:27:11 +010024 select AUTO_IRQ_AFFINITY if SMP
Thomas Gleixnera6e120e2011-03-25 22:20:51 +010025 select GENERIC_IRQ_SHOW
Will Deaconc1d7e012012-07-30 14:42:46 -070026 select ARCH_WANT_IPC_PARSE_VERSION
Huang Yingdf013ff2011-07-13 13:14:22 +080027 select ARCH_HAVE_NMI_SAFE_CMPXCHG
蔡正龙a9302e82013-12-20 10:04:10 +080028 select AUDIT_ARCH
Richard Hendersona1659d62013-07-14 10:57:34 -070029 select GENERIC_CLOCKEVENTS
Michael Cree6fd16ce2018-02-26 22:02:12 +130030 select GENERIC_CPU_VULNERABILITIES
Thomas Gleixner2ec94152012-04-20 13:05:55 +000031 select GENERIC_SMP_IDLE_THREAD
Michael Creef2db6332012-08-19 14:40:58 +120032 select GENERIC_STRNCPY_FROM_USER
33 select GENERIC_STRNLEN_USER
AKASHI Takahiro7a017722014-02-25 18:16:24 +090034 select HAVE_ARCH_AUDITSYSCALL
David Howells786d35d2012-09-28 14:31:03 +093035 select HAVE_MOD_ARCH_SPECIFIC
36 select MODULES_USE_ELF_RELA
Al Viroeaca6ea2012-11-25 23:12:10 -050037 select ODD_RT_SIGACTION
Al Viro302627e2012-12-25 16:30:23 -050038 select OLD_SIGSUSPEND
Zhaoxiu Zengfff7fb02016-05-20 17:03:57 -070039 select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
Peter Zijlstra6137fed2018-09-04 17:04:07 +020040 select MMU_GATHER_NO_RANGE
Linus Torvalds1da177e2005-04-16 15:20:36 -070041 help
42 The Alpha is a 64-bit general-purpose processor designed and
43 marketed by the Digital Equipment Corporation of blessed memory,
44 now Hewlett-Packard. The Alpha Linux project has a home page at
45 <http://www.alphalinux.org/>.
46
47config 64BIT
48 def_bool y
49
50config MMU
51 bool
52 default y
53
David Howellsf0d1b0b2006-12-08 02:37:49 -080054config ARCH_HAS_ILOG2_U32
55 bool
56 default n
57
58config ARCH_HAS_ILOG2_U64
59 bool
60 default n
61
Linus Torvalds1da177e2005-04-16 15:20:36 -070062config GENERIC_CALIBRATE_DELAY
63 bool
64 default y
65
Christoph Lameter5ac6da62007-02-10 01:43:14 -080066config ZONE_DMA
67 bool
68 default y
69
Linus Torvalds1da177e2005-04-16 15:20:36 -070070config GENERIC_ISA_DMA
71 bool
72 default y
73
Kirill A. Shutemovf5d45472015-04-14 15:45:36 -070074config PGTABLE_LEVELS
75 int
76 default 3
77
蔡正龙a9302e82013-12-20 10:04:10 +080078config AUDIT_ARCH
79 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -070080
81menu "System setup"
82
83choice
84 prompt "Alpha system type"
85 default ALPHA_GENERIC
86 ---help---
87 This is the system type of your hardware. A "generic" kernel will
88 run on any supported Alpha system. However, if you configure a
89 kernel for your specific system, it will be faster and smaller.
90
91 To find out what type of Alpha system you have, you may want to
92 check out the Linux/Alpha FAQ, accessible on the WWW from
93 <http://www.alphalinux.org/>. In summary:
94
Jay Estabrookd7083172007-06-01 00:47:05 -070095 Alcor/Alpha-XLT AS 600, AS 500, XL-300, XL-366
Linus Torvalds1da177e2005-04-16 15:20:36 -070096 Alpha-XL XL-233, XL-266
97 AlphaBook1 Alpha laptop
98 Avanti AS 200, AS 205, AS 250, AS 255, AS 300, AS 400
99 Cabriolet AlphaPC64, AlphaPCI64
Jay Estabrookd7083172007-06-01 00:47:05 -0700100 DP264 DP264 / DS20 / ES40 / DS10 / DS10L
Linus Torvalds1da177e2005-04-16 15:20:36 -0700101 EB164 EB164 21164 evaluation board
102 EB64+ EB64+ 21064 evaluation board
103 EB66 EB66 21066 evaluation board
104 EB66+ EB66+ 21066 evaluation board
Jay Estabrookd7083172007-06-01 00:47:05 -0700105 Jensen DECpc 150, DEC 2000 models 300, 500
Linus Torvalds1da177e2005-04-16 15:20:36 -0700106 LX164 AlphaPC164-LX
107 Lynx AS 2100A
Jay Estabrookd7083172007-06-01 00:47:05 -0700108 Miata Personal Workstation 433/500/600 a/au
Linus Torvalds1da177e2005-04-16 15:20:36 -0700109 Marvel AlphaServer ES47 / ES80 / GS1280
110 Mikasa AS 1000
111 Noname AXPpci33, UDB (Multia)
112 Noritake AS 1000A, AS 600A, AS 800
113 PC164 AlphaPC164
114 Rawhide AS 1200, AS 4000, AS 4100
115 Ruffian RPX164-2, AlphaPC164-UX, AlphaPC164-BX
116 SX164 AlphaPC164-SX
117 Sable AS 2000, AS 2100
Jay Estabrookd7083172007-06-01 00:47:05 -0700118 Shark DS 20L
119 Takara Takara (OEM)
120 Titan AlphaServer ES45 / DS25 / DS15
Linus Torvalds1da177e2005-04-16 15:20:36 -0700121 Wildfire AlphaServer GS 40/80/160/320
122
123 If you don't know what to do, choose "generic".
124
125config ALPHA_GENERIC
126 bool "Generic"
Joe Millenbach4f73bc42013-01-17 22:44:22 -0800127 depends on TTY
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100128 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700129 help
130 A generic kernel will run on all supported Alpha hardware.
131
132config ALPHA_ALCOR
133 bool "Alcor/Alpha-XLT"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100134 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700135 help
136 For systems using the Digital ALCOR chipset: 5 chips (4, 64-bit data
137 slices (Data Switch, DSW) - 208-pin PQFP and 1 control (Control, I/O
138 Address, CIA) - a 383 pin plastic PGA). It provides a DRAM
139 controller (256-bit memory bus) and a PCI interface. It also does
140 all the work required to support an external Bcache and to maintain
141 memory coherence when a PCI device DMAs into (or out of) memory.
142
143config ALPHA_XL
144 bool "Alpha-XL"
145 help
146 XL-233 and XL-266-based Alpha systems.
147
148config ALPHA_BOOK1
149 bool "AlphaBook1"
150 help
151 Dec AlphaBook1/Burns Alpha-based laptops.
152
153config ALPHA_AVANTI_CH
154 bool "Avanti"
155
156config ALPHA_CABRIOLET
157 bool "Cabriolet"
158 help
159 Cabriolet AlphaPC64, AlphaPCI64 systems. Derived from EB64+ but now
160 baby-AT with Flash boot ROM, no on-board SCSI or Ethernet. 3 ISA
161 slots, 4 PCI slots (one pair are on a shared slot), uses plug-in
162 Bcache SIMMs. Requires power supply with 3.3V output.
163
164config ALPHA_DP264
165 bool "DP264"
166 help
167 Various 21264 systems with the tsunami core logic chipset.
168 API Networks: 264DP, UP2000(+), CS20;
169 Compaq: DS10(E,L), XP900, XP1000, DS20(E), ES40.
170
171config ALPHA_EB164
172 bool "EB164"
173 help
174 EB164 21164 evaluation board from DEC. Uses 21164 and ALCOR. Has
175 ISA and PCI expansion (3 ISA slots, 2 64-bit PCI slots (one is
176 shared with an ISA slot) and 2 32-bit PCI slots. Uses plus-in
177 Bcache SIMMs. I/O sub-system provides SuperI/O (2S, 1P, FD), KBD,
178 MOUSE (PS2 style), RTC/NVRAM. Boot ROM is Flash. PC-AT-sized
179 motherboard. Requires power supply with 3.3V output.
180
181config ALPHA_EB64P_CH
182 bool "EB64+"
183
184config ALPHA_EB66
185 bool "EB66"
186 help
187 A Digital DS group board. Uses 21066 or 21066A. I/O sub-system is
188 identical to EB64+. Baby PC-AT size. Runs from standard PC power
189 supply. The EB66 schematic was published as a marketing poster
190 advertising the 21066 as "the first microprocessor in the world with
191 embedded PCI".
192
193config ALPHA_EB66P
194 bool "EB66+"
195 help
196 Later variant of the EB66 board.
197
198config ALPHA_EIGER
199 bool "Eiger"
200 help
201 Apparently an obscure OEM single-board computer based on the
202 Typhoon/Tsunami chipset family. Information on it is scanty.
203
204config ALPHA_JENSEN
205 bool "Jensen"
Christoph Hellwig1883c9f2017-12-22 10:42:06 +0100206 depends on BROKEN
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100207 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700208 help
209 DEC PC 150 AXP (aka Jensen): This is a very old Digital system - one
210 of the first-generation Alpha systems. A number of these systems
211 seem to be available on the second- hand market. The Jensen is a
212 floor-standing tower system which originally used a 150MHz 21064 It
213 used programmable logic to interface a 486 EISA I/O bridge to the
214 CPU.
215
216config ALPHA_LX164
217 bool "LX164"
218 help
219 A technical overview of this board is available at
220 <http://www.unix-ag.org/Linux-Alpha/Architectures/LX164.html>.
221
222config ALPHA_LYNX
223 bool "Lynx"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100224 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700225 help
226 AlphaServer 2100A-based systems.
227
228config ALPHA_MARVEL
229 bool "Marvel"
230 help
231 AlphaServer ES47 / ES80 / GS1280 based on EV7.
232
233config ALPHA_MIATA
234 bool "Miata"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100235 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700236 help
237 The Digital PersonalWorkStation (PWS 433a, 433au, 500a, 500au, 600a,
Adrian Bunkffc32d62008-10-15 22:01:19 -0700238 or 600au).
Linus Torvalds1da177e2005-04-16 15:20:36 -0700239
240config ALPHA_MIKASA
241 bool "Mikasa"
242 help
243 AlphaServer 1000-based Alpha systems.
244
245config ALPHA_NAUTILUS
246 bool "Nautilus"
247 help
248 Alpha systems based on the AMD 751 & ALI 1543C chipsets.
249
250config ALPHA_NONAME_CH
251 bool "Noname"
252
253config ALPHA_NORITAKE
254 bool "Noritake"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100255 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700256 help
257 AlphaServer 1000A, AlphaServer 600A, and AlphaServer 800-based
258 systems.
259
260config ALPHA_PC164
261 bool "PC164"
262
263config ALPHA_P2K
264 bool "Platform2000"
265
266config ALPHA_RAWHIDE
267 bool "Rawhide"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100268 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700269 help
270 AlphaServer 1200, AlphaServer 4000 and AlphaServer 4100 machines.
271 See HOWTO at
272 <http://www.alphalinux.org/docs/rawhide/4100_install.shtml>.
273
274config ALPHA_RUFFIAN
275 bool "Ruffian"
276 help
277 Samsung APC164UX. There is a page on known problems and workarounds
278 at <http://www.alphalinux.org/faq/FAQ-11.html>.
279
280config ALPHA_RX164
281 bool "RX164"
282
283config ALPHA_SX164
284 bool "SX164"
285
286config ALPHA_SABLE
287 bool "Sable"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100288 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700289 help
290 Digital AlphaServer 2000 and 2100-based systems.
291
292config ALPHA_SHARK
293 bool "Shark"
294
295config ALPHA_TAKARA
296 bool "Takara"
297 help
298 Alpha 11164-based OEM single-board computer.
299
300config ALPHA_TITAN
301 bool "Titan"
302 help
303 AlphaServer ES45/DS25 SMP based on EV68 and Titan chipset.
304
305config ALPHA_WILDFIRE
306 bool "Wildfire"
307 help
308 AlphaServer GS 40/80/160/320 SMP based on the EV67 core.
309
310endchoice
311
312# clear all implied options (don't want default values for those):
313# Most of these machines have ISA slots; not exactly sure which don't,
314# and this doesn't activate hordes of code, so do it always.
315config ISA
316 bool
317 default y
318 help
319 Find out whether you have ISA slots on your motherboard. ISA is the
320 name of a bus system, i.e. the way the CPU talks to the other stuff
321 inside your box. Other bus systems are PCI, EISA, MicroChannel
322 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
323 newer boards don't support it. If you have ISA, say Y, otherwise N.
324
Al Viro5cae8412005-05-04 05:39:22 +0100325config ISA_DMA_API
326 bool
327 default y
328
Linus Torvalds1da177e2005-04-16 15:20:36 -0700329config ALPHA_NONAME
330 bool
331 depends on ALPHA_BOOK1 || ALPHA_NONAME_CH
332 default y
333 help
334 The AXPpci33 (aka NoName), is based on the EB66 (includes the Multia
335 UDB). This design was produced by Digital's Technical OEM (TOEM)
336 group. It uses the 21066 processor running at 166MHz or 233MHz. It
337 is a baby-AT size, and runs from a standard PC power supply. It has
338 5 ISA slots and 3 PCI slots (one pair are a shared slot). There are
339 2 versions, with either PS/2 or large DIN connectors for the
340 keyboard.
341
342config ALPHA_EV4
343 bool
344 depends on ALPHA_JENSEN || (ALPHA_SABLE && !ALPHA_GAMMA) || ALPHA_LYNX || ALPHA_NORITAKE && !ALPHA_PRIMO || ALPHA_MIKASA && !ALPHA_PRIMO || ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P_CH || ALPHA_XL || ALPHA_NONAME || ALPHA_EB66 || ALPHA_EB66P || ALPHA_P2K
345 default y if !ALPHA_LYNX
346
347config ALPHA_LCA
348 bool
349 depends on ALPHA_NONAME || ALPHA_EB66 || ALPHA_EB66P || ALPHA_P2K
350 default y
351
352config ALPHA_APECS
353 bool
354 depends on !ALPHA_PRIMO && (ALPHA_NORITAKE || ALPHA_MIKASA) || ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P_CH || ALPHA_XL
355 default y
356
357config ALPHA_EB64P
358 bool
359 depends on ALPHA_CABRIOLET || ALPHA_EB64P_CH
360 default y
361 help
362 Uses 21064 or 21064A and APECs. Has ISA and PCI expansion (3 ISA,
363 2 PCI, one pair are on a shared slot). Supports 36-bit DRAM SIMs.
364 ISA bus generated by Intel SaturnI/O PCI-ISA bridge. On-board SCSI
365 (NCR 810 on PCI) Ethernet (Digital 21040), KBD, MOUSE (PS2 style),
366 SuperI/O (2S, 1P, FD), RTC/NVRAM. Boot ROM is EPROM. PC-AT size.
367 Runs from standard PC power supply.
368
369config ALPHA_EV5
370 bool "EV5 CPU(s) (model 5/xxx)?" if ALPHA_LYNX
371 default y if ALPHA_RX164 || ALPHA_RAWHIDE || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN || ALPHA_SABLE && ALPHA_GAMMA || ALPHA_NORITAKE && ALPHA_PRIMO || ALPHA_MIKASA && ALPHA_PRIMO || ALPHA_PC164 || ALPHA_TAKARA || ALPHA_EB164 || ALPHA_ALCOR
372
373config ALPHA_EV4
374 bool
375 default y if ALPHA_LYNX && !ALPHA_EV5
376
377config ALPHA_CIA
378 bool
379 depends on ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN || ALPHA_NORITAKE && ALPHA_PRIMO || ALPHA_MIKASA && ALPHA_PRIMO || ALPHA_PC164 || ALPHA_TAKARA || ALPHA_EB164 || ALPHA_ALCOR
380 default y
381
382config ALPHA_EV56
383 bool "EV56 CPU (speed >= 366MHz)?" if ALPHA_ALCOR
384 default y if ALPHA_RX164 || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN || ALPHA_PC164 || ALPHA_TAKARA
385
386config ALPHA_EV56
387 prompt "EV56 CPU (speed >= 333MHz)?"
Fernando J. Pereda060ec3d2006-09-25 23:32:37 -0700388 depends on ALPHA_NORITAKE || ALPHA_PRIMO
Linus Torvalds1da177e2005-04-16 15:20:36 -0700389
390config ALPHA_EV56
391 prompt "EV56 CPU (speed >= 400MHz)?"
392 depends on ALPHA_RAWHIDE
393
394config ALPHA_PRIMO
395 bool "EV5 CPU daughtercard (model 5/xxx)?"
396 depends on ALPHA_NORITAKE || ALPHA_MIKASA
397 help
398 Say Y if you have an AS 1000 5/xxx or an AS 1000A 5/xxx.
399
400config ALPHA_GAMMA
401 bool "EV5 CPU(s) (model 5/xxx)?"
402 depends on ALPHA_SABLE
403 help
404 Say Y if you have an AS 2000 5/xxx or an AS 2100 5/xxx.
405
406config ALPHA_GAMMA
407 bool
408 depends on ALPHA_LYNX
409 default y
410
411config ALPHA_T2
412 bool
413 depends on ALPHA_SABLE || ALPHA_LYNX
414 default y
415
416config ALPHA_PYXIS
417 bool
418 depends on ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN
419 default y
420
421config ALPHA_EV6
422 bool
423 depends on ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER || ALPHA_MARVEL
424 default y
425
426config ALPHA_TSUNAMI
427 bool
428 depends on ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER
429 default y
430
431config ALPHA_EV67
432 bool "EV67 (or later) CPU (speed > 600MHz)?" if ALPHA_DP264 || ALPHA_EIGER
433 default y if ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_MARVEL
434 help
435 Is this a machine based on the EV67 core? If in doubt, select N here
436 and the machine will be treated as an EV6.
437
Linus Torvalds1da177e2005-04-16 15:20:36 -0700438config ALPHA_MCPCIA
439 bool
440 depends on ALPHA_RAWHIDE
441 default y
442
443config ALPHA_POLARIS
444 bool
445 depends on ALPHA_RX164
446 default y
447
448config ALPHA_IRONGATE
449 bool
450 depends on ALPHA_NAUTILUS
451 default y
452
Akinobu Mitaf7c29672006-03-26 01:39:18 -0800453config GENERIC_HWEIGHT
454 bool
Randy Dunlap5e625b02006-06-12 15:13:40 -0700455 default y if !ALPHA_EV67
Akinobu Mitaf7c29672006-03-26 01:39:18 -0800456
Linus Torvalds1da177e2005-04-16 15:20:36 -0700457config ALPHA_AVANTI
458 bool
459 depends on ALPHA_XL || ALPHA_AVANTI_CH
460 default y
461 help
462 Avanti AS 200, AS 205, AS 250, AS 255, AS 300, and AS 400-based
463 Alphas. Info at
464 <http://www.unix-ag.org/Linux-Alpha/Architectures/Avanti.html>.
465
466config ALPHA_BROKEN_IRQ_MASK
467 bool
468 depends on ALPHA_GENERIC || ALPHA_PC164
469 default y
470
Jay Estabrook025a2212007-06-01 00:47:03 -0700471config VGA_HOSE
472 bool
Matt Turnerdd7f1fe2012-05-01 21:28:59 -0400473 depends on VGA_CONSOLE && (ALPHA_GENERIC || ALPHA_TITAN || ALPHA_MARVEL || ALPHA_TSUNAMI)
Jay Estabrook025a2212007-06-01 00:47:03 -0700474 default y
475 help
476 Support VGA on an arbitrary hose; needed for several platforms
477 which always have multiple hoses, and whose consoles support it.
478
479
Richard Henderson994dcf72011-04-28 07:29:27 -0700480config ALPHA_QEMU
481 bool "Run under QEMU emulation"
482 depends on !ALPHA_GENERIC
483 ---help---
484 Assume the presence of special features supported by QEMU PALcode
485 that reduce the overhead of system emulation.
486
487 Generic kernels will auto-detect QEMU. But when building a
488 system-specific kernel, the assumption is that we want to
Masanari Iida83fc61a2017-09-26 12:47:59 +0900489 eliminate as many runtime tests as possible.
Richard Henderson994dcf72011-04-28 07:29:27 -0700490
491 If unsure, say N.
492
493
Linus Torvalds1da177e2005-04-16 15:20:36 -0700494config ALPHA_SRM
495 bool "Use SRM as bootloader" if ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P || ALPHA_PC164 || ALPHA_TAKARA || ALPHA_EB164 || ALPHA_ALCOR || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_NAUTILUS || ALPHA_NONAME
Joe Millenbach4f73bc42013-01-17 22:44:22 -0800496 depends on TTY
Linus Torvalds1da177e2005-04-16 15:20:36 -0700497 default y if ALPHA_JENSEN || ALPHA_MIKASA || ALPHA_SABLE || ALPHA_LYNX || ALPHA_NORITAKE || ALPHA_DP264 || ALPHA_RAWHIDE || ALPHA_EIGER || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_MARVEL
498 ---help---
499 There are two different types of booting firmware on Alphas: SRM,
500 which is command line driven, and ARC, which uses menus and arrow
501 keys. Details about the Linux/Alpha booting process are contained in
502 the Linux/Alpha FAQ, accessible on the WWW from
503 <http://www.alphalinux.org/>.
504
505 The usual way to load Linux on an Alpha machine is to use MILO
506 (a bootloader that lets you pass command line parameters to the
507 kernel just like lilo does for the x86 architecture) which can be
508 loaded either from ARC or can be installed directly as a permanent
509 firmware replacement from floppy (which requires changing a certain
510 jumper on the motherboard). If you want to do either of these, say N
511 here. If MILO doesn't work on your system (true for Jensen
512 motherboards), you can bypass it altogether and boot Linux directly
513 from an SRM console; say Y here in order to do that. Note that you
514 won't be able to boot from an IDE disk using SRM.
515
516 If unsure, say N.
517
viro@ZenIV.linux.org.uka08b6b72005-09-06 01:48:42 +0100518config ARCH_MAY_HAVE_PC_FDC
519 def_bool y
520
Linus Torvalds1da177e2005-04-16 15:20:36 -0700521config SMP
522 bool "Symmetric multi-processing support"
523 depends on ALPHA_SABLE || ALPHA_LYNX || ALPHA_RAWHIDE || ALPHA_DP264 || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_GENERIC || ALPHA_SHARK || ALPHA_MARVEL
524 ---help---
525 This enables support for systems with more than one CPU. If you have
Robert Graffham4a474152014-01-23 15:55:29 -0800526 a system with only one CPU, say N. If you have a system with more
527 than one CPU, say Y.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700528
Robert Graffham4a474152014-01-23 15:55:29 -0800529 If you say N here, the kernel will run on uni- and multiprocessor
Linus Torvalds1da177e2005-04-16 15:20:36 -0700530 machines, but will use only one CPU of a multiprocessor machine. If
531 you say Y here, the kernel will run on many, but not all,
Robert Graffham4a474152014-01-23 15:55:29 -0800532 uniprocessor machines. On a uniprocessor machine, the kernel
Linus Torvalds1da177e2005-04-16 15:20:36 -0700533 will run faster if you say N here.
534
Adrian Bunk03502fa2008-02-03 15:50:21 +0200535 See also the SMP-HOWTO available at
536 <http://www.tldp.org/docs.html#howto>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700537
538 If you don't know what to do here, say N.
539
Linus Torvalds1da177e2005-04-16 15:20:36 -0700540config NR_CPUS
Jay Estabrookd7083172007-06-01 00:47:05 -0700541 int "Maximum number of CPUs (2-32)"
542 range 2 32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700543 depends on SMP
Jay Estabrookd7083172007-06-01 00:47:05 -0700544 default "32" if ALPHA_GENERIC || ALPHA_MARVEL
545 default "4" if !ALPHA_GENERIC && !ALPHA_MARVEL
546 help
547 MARVEL support can handle a maximum of 32 CPUs, all the others
548 with working support have a maximum of 4 CPUs.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700549
Dave Hansen3f22ab22005-06-23 00:07:43 -0700550config ARCH_DISCONTIGMEM_ENABLE
Kees Cook88d11bb2012-10-02 11:16:25 -0700551 bool "Discontiguous Memory Support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700552 help
Matt LaPlantefc31e832006-10-03 22:23:47 +0200553 Say Y to support efficient handling of discontiguous physical memory,
Linus Torvalds1da177e2005-04-16 15:20:36 -0700554 for architectures which are either NUMA (Non-Uniform Memory Access)
555 or have huge holes in the physical address space for other reasons.
Mike Rapoportad56b732018-03-21 21:22:47 +0200556 See <file:Documentation/vm/numa.rst> for more.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700557
Linus Torvalds1da177e2005-04-16 15:20:36 -0700558config NUMA
559 bool "NUMA Support (EXPERIMENTAL)"
Al Viro6df7c992005-08-23 22:44:50 +0100560 depends on DISCONTIGMEM && BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700561 help
562 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
563 Access). This option is for configuring high-end multiprocessor
564 server machines. If in doubt, say N.
565
Richard Henderson7f3bbb82013-07-12 09:36:21 -0700566config ALPHA_WTINT
567 bool "Use WTINT" if ALPHA_SRM || ALPHA_GENERIC
568 default y if ALPHA_QEMU
569 default n if ALPHA_EV5 || ALPHA_EV56 || (ALPHA_EV4 && !ALPHA_LCA)
570 default n if !ALPHA_SRM && !ALPHA_GENERIC
571 default y if SMP
572 ---help---
573 The Wait for Interrupt (WTINT) PALcall attempts to place the CPU
574 to sleep until the next interrupt. This may reduce the power
575 consumed, and the heat produced by the computer. However, it has
576 the side effect of making the cycle counter unreliable as a timing
577 device across the sleep.
578
579 For emulation under QEMU, definitely say Y here, as we have other
580 mechanisms for measuring time than the cycle counter.
581
582 For EV4 (but not LCA), EV5 and EV56 systems, or for systems running
583 MILO, sleep mode is not supported so you might as well say N here.
584
585 For SMP systems we cannot use the cycle counter for timing anyway,
586 so you might as well say Y here.
587
588 If unsure, say N.
589
Yasunori Gotoc80d79d2006-04-10 22:53:53 -0700590config NODES_SHIFT
591 int
592 default "7"
593 depends on NEED_MULTIPLE_NODES
594
Linus Torvalds1da177e2005-04-16 15:20:36 -0700595# LARGE_VMALLOC is racy, if you *really* need it then fix it first
596config ALPHA_LARGE_VMALLOC
597 bool
598 ---help---
599 Process creation and other aspects of virtual memory management can
600 be streamlined if we restrict the kernel to one PGD for all vmalloc
601 allocations. This equates to about 8GB.
602
603 Under normal circumstances, this is so far and above what is needed
604 as to be laughable. However, there are certain applications (such
605 as benchmark-grade in-kernel web serving) that can make use of as
606 much vmalloc space as is available.
607
608 Say N unless you know you need gobs and gobs of vmalloc space.
609
610config VERBOSE_MCHECK
611 bool "Verbose Machine Checks"
612
613config VERBOSE_MCHECK_ON
614 int "Verbose Printing Mode (0=off, 1=on, 2=all)"
615 depends on VERBOSE_MCHECK
616 default 1
617 ---help---
618 This option allows the default printing mode to be set, and then
619 possibly overridden by a boot command argument.
620
621 For example, if one wanted the option of printing verbose
622 machine checks, but wanted the default to be as if verbose
623 machine check printing was turned off, then one would choose
624 the printing mode to be 0. Then, upon reboot, one could add
625 the boot command line "verbose_mcheck=1" to get the normal
626 verbose machine check printing, or "verbose_mcheck=2" to get
627 the maximum information available.
628
629 Take the default (1) unless you want more control or more info.
630
Richard Hendersonfddd87d2013-07-12 16:15:56 -0700631choice
632 prompt "Timer interrupt frequency (HZ)?"
633 default HZ_128 if ALPHA_QEMU
634 default HZ_1200 if ALPHA_RAWHIDE
635 default HZ_1024
636 ---help---
637 The frequency at which timer interrupts occur. A high frequency
638 minimizes latency, whereas a low frequency minimizes overhead of
639 process accounting. The later effect is especially significant
640 when being run under QEMU.
641
642 Note that some Alpha hardware cannot change the interrupt frequency
643 of the timer. If unsure, say 1024 (or 1200 for Rawhide).
644
645 config HZ_32
646 bool "32 Hz"
647 config HZ_64
648 bool "64 Hz"
649 config HZ_128
650 bool "128 Hz"
651 config HZ_256
652 bool "256 Hz"
653 config HZ_1024
654 bool "1024 Hz"
655 config HZ_1200
656 bool "1200 Hz"
657endchoice
658
H. Peter Anvinbdc80782008-02-08 04:21:26 -0800659config HZ
Richard Hendersonfddd87d2013-07-12 16:15:56 -0700660 int
661 default 32 if HZ_32
662 default 64 if HZ_64
663 default 128 if HZ_128
664 default 256 if HZ_256
665 default 1200 if HZ_1200
H. Peter Anvinbdc80782008-02-08 04:21:26 -0800666 default 1024
667
Linus Torvalds1da177e2005-04-16 15:20:36 -0700668config SRM_ENV
669 tristate "SRM environment through procfs"
670 depends on PROC_FS
671 ---help---
672 If you enable this option, a subdirectory inside /proc called
673 /proc/srm_environment will give you access to the all important
674 SRM environment variables (those which have a name) and also
675 to all others (by their internal number).
676
677 SRM is something like a BIOS for Alpha machines. There are some
678 other such BIOSes, like AlphaBIOS, which this driver cannot
679 support (hey, that's not SRM!).
680
681 Despite the fact that this driver doesn't work on all Alphas (but
682 only on those which have SRM as their firmware), it's save to
683 build it even if your particular machine doesn't know about SRM
684 (or if you intend to compile a generic kernel). It will simply
685 not create those subdirectory in /proc (and give you some warning,
686 of course).
687
688 This driver is also available as a module and will be called
689 srm_env then.
690
Linus Torvalds1da177e2005-04-16 15:20:36 -0700691endmenu
692
Jay Estabrook025a2212007-06-01 00:47:03 -0700693# DUMMY_CONSOLE may be defined in drivers/video/console/Kconfig
694# but we also need it if VGA_HOSE is set
695config DUMMY_CONSOLE
696 bool
697 depends on VGA_HOSE
698 default y