blob: c7c976eb64074b443b0821775201ba3f91abcc57 [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
Sam Ravnborgec7748b2008-02-09 10:46:40 +010014 select HAVE_IDE
Mathieu Desnoyers42d4b832008-02-02 15:10:34 -050015 select HAVE_OPROFILE
Ralf Baechle8761f1a2011-06-01 19:05:09 +010016 select HAVE_PCSPKR_PLATFORM
Michael Creea582e6f2009-12-08 14:27:01 -050017 select HAVE_PERF_EVENTS
Christoph Hellwigf616ab52018-05-09 06:53:49 +020018 select NEED_DMA_MAP_STATE
Christoph Hellwig86596f02018-04-05 09:44:52 +020019 select NEED_SG_DMA_LENGTH
Stephen Rothwell4febd952013-03-07 15:48:16 +110020 select VIRT_TO_BUS
Thomas Gleixnere27ec642011-01-19 20:27:11 +010021 select GENERIC_IRQ_PROBE
Christoph Hellwigeb01d422018-11-15 20:05:32 +010022 select GENERIC_PCI_IOMAP if PCI
Thomas Gleixnere27ec642011-01-19 20:27:11 +010023 select AUTO_IRQ_AFFINITY if SMP
Thomas Gleixnera6e120e2011-03-25 22:20:51 +010024 select GENERIC_IRQ_SHOW
Will Deaconc1d7e012012-07-30 14:42:46 -070025 select ARCH_WANT_IPC_PARSE_VERSION
Huang Yingdf013ff2011-07-13 13:14:22 +080026 select ARCH_HAVE_NMI_SAFE_CMPXCHG
蔡正龙a9302e82013-12-20 10:04:10 +080027 select AUDIT_ARCH
Richard Hendersona1659d62013-07-14 10:57:34 -070028 select GENERIC_CLOCKEVENTS
Michael Cree6fd16ce2018-02-26 22:02:12 +130029 select GENERIC_CPU_VULNERABILITIES
Thomas Gleixner2ec94152012-04-20 13:05:55 +000030 select GENERIC_SMP_IDLE_THREAD
Michael Creef2db6332012-08-19 14:40:58 +120031 select GENERIC_STRNCPY_FROM_USER
32 select GENERIC_STRNLEN_USER
AKASHI Takahiro7a017722014-02-25 18:16:24 +090033 select HAVE_ARCH_AUDITSYSCALL
David Howells786d35d2012-09-28 14:31:03 +093034 select HAVE_MOD_ARCH_SPECIFIC
35 select MODULES_USE_ELF_RELA
Al Viroeaca6ea2012-11-25 23:12:10 -050036 select ODD_RT_SIGACTION
Al Viro302627e2012-12-25 16:30:23 -050037 select OLD_SIGSUSPEND
Zhaoxiu Zengfff7fb02016-05-20 17:03:57 -070038 select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
Peter Zijlstra6137fed2018-09-04 17:04:07 +020039 select MMU_GATHER_NO_RANGE
Linus Torvalds1da177e2005-04-16 15:20:36 -070040 help
41 The Alpha is a 64-bit general-purpose processor designed and
42 marketed by the Digital Equipment Corporation of blessed memory,
43 now Hewlett-Packard. The Alpha Linux project has a home page at
44 <http://www.alphalinux.org/>.
45
46config 64BIT
47 def_bool y
48
49config MMU
50 bool
51 default y
52
Linus Torvalds1da177e2005-04-16 15:20:36 -070053config RWSEM_GENERIC_SPINLOCK
54 bool
55
56config RWSEM_XCHGADD_ALGORITHM
57 bool
58 default y
59
David Howellsf0d1b0b2006-12-08 02:37:49 -080060config ARCH_HAS_ILOG2_U32
61 bool
62 default n
63
64config ARCH_HAS_ILOG2_U64
65 bool
66 default n
67
Linus Torvalds1da177e2005-04-16 15:20:36 -070068config GENERIC_CALIBRATE_DELAY
69 bool
70 default y
71
Christoph Lameter5ac6da62007-02-10 01:43:14 -080072config ZONE_DMA
73 bool
74 default y
75
Linus Torvalds1da177e2005-04-16 15:20:36 -070076config GENERIC_ISA_DMA
77 bool
78 default y
79
Kirill A. Shutemovf5d45472015-04-14 15:45:36 -070080config PGTABLE_LEVELS
81 int
82 default 3
83
蔡正龙a9302e82013-12-20 10:04:10 +080084config AUDIT_ARCH
85 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -070086
87menu "System setup"
88
89choice
90 prompt "Alpha system type"
91 default ALPHA_GENERIC
92 ---help---
93 This is the system type of your hardware. A "generic" kernel will
94 run on any supported Alpha system. However, if you configure a
95 kernel for your specific system, it will be faster and smaller.
96
97 To find out what type of Alpha system you have, you may want to
98 check out the Linux/Alpha FAQ, accessible on the WWW from
99 <http://www.alphalinux.org/>. In summary:
100
Jay Estabrookd7083172007-06-01 00:47:05 -0700101 Alcor/Alpha-XLT AS 600, AS 500, XL-300, XL-366
Linus Torvalds1da177e2005-04-16 15:20:36 -0700102 Alpha-XL XL-233, XL-266
103 AlphaBook1 Alpha laptop
104 Avanti AS 200, AS 205, AS 250, AS 255, AS 300, AS 400
105 Cabriolet AlphaPC64, AlphaPCI64
Jay Estabrookd7083172007-06-01 00:47:05 -0700106 DP264 DP264 / DS20 / ES40 / DS10 / DS10L
Linus Torvalds1da177e2005-04-16 15:20:36 -0700107 EB164 EB164 21164 evaluation board
108 EB64+ EB64+ 21064 evaluation board
109 EB66 EB66 21066 evaluation board
110 EB66+ EB66+ 21066 evaluation board
Jay Estabrookd7083172007-06-01 00:47:05 -0700111 Jensen DECpc 150, DEC 2000 models 300, 500
Linus Torvalds1da177e2005-04-16 15:20:36 -0700112 LX164 AlphaPC164-LX
113 Lynx AS 2100A
Jay Estabrookd7083172007-06-01 00:47:05 -0700114 Miata Personal Workstation 433/500/600 a/au
Linus Torvalds1da177e2005-04-16 15:20:36 -0700115 Marvel AlphaServer ES47 / ES80 / GS1280
116 Mikasa AS 1000
117 Noname AXPpci33, UDB (Multia)
118 Noritake AS 1000A, AS 600A, AS 800
119 PC164 AlphaPC164
120 Rawhide AS 1200, AS 4000, AS 4100
121 Ruffian RPX164-2, AlphaPC164-UX, AlphaPC164-BX
122 SX164 AlphaPC164-SX
123 Sable AS 2000, AS 2100
Jay Estabrookd7083172007-06-01 00:47:05 -0700124 Shark DS 20L
125 Takara Takara (OEM)
126 Titan AlphaServer ES45 / DS25 / DS15
Linus Torvalds1da177e2005-04-16 15:20:36 -0700127 Wildfire AlphaServer GS 40/80/160/320
128
129 If you don't know what to do, choose "generic".
130
131config ALPHA_GENERIC
132 bool "Generic"
Joe Millenbach4f73bc42013-01-17 22:44:22 -0800133 depends on TTY
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100134 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700135 help
136 A generic kernel will run on all supported Alpha hardware.
137
138config ALPHA_ALCOR
139 bool "Alcor/Alpha-XLT"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100140 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700141 help
142 For systems using the Digital ALCOR chipset: 5 chips (4, 64-bit data
143 slices (Data Switch, DSW) - 208-pin PQFP and 1 control (Control, I/O
144 Address, CIA) - a 383 pin plastic PGA). It provides a DRAM
145 controller (256-bit memory bus) and a PCI interface. It also does
146 all the work required to support an external Bcache and to maintain
147 memory coherence when a PCI device DMAs into (or out of) memory.
148
149config ALPHA_XL
150 bool "Alpha-XL"
151 help
152 XL-233 and XL-266-based Alpha systems.
153
154config ALPHA_BOOK1
155 bool "AlphaBook1"
156 help
157 Dec AlphaBook1/Burns Alpha-based laptops.
158
159config ALPHA_AVANTI_CH
160 bool "Avanti"
161
162config ALPHA_CABRIOLET
163 bool "Cabriolet"
164 help
165 Cabriolet AlphaPC64, AlphaPCI64 systems. Derived from EB64+ but now
166 baby-AT with Flash boot ROM, no on-board SCSI or Ethernet. 3 ISA
167 slots, 4 PCI slots (one pair are on a shared slot), uses plug-in
168 Bcache SIMMs. Requires power supply with 3.3V output.
169
170config ALPHA_DP264
171 bool "DP264"
172 help
173 Various 21264 systems with the tsunami core logic chipset.
174 API Networks: 264DP, UP2000(+), CS20;
175 Compaq: DS10(E,L), XP900, XP1000, DS20(E), ES40.
176
177config ALPHA_EB164
178 bool "EB164"
179 help
180 EB164 21164 evaluation board from DEC. Uses 21164 and ALCOR. Has
181 ISA and PCI expansion (3 ISA slots, 2 64-bit PCI slots (one is
182 shared with an ISA slot) and 2 32-bit PCI slots. Uses plus-in
183 Bcache SIMMs. I/O sub-system provides SuperI/O (2S, 1P, FD), KBD,
184 MOUSE (PS2 style), RTC/NVRAM. Boot ROM is Flash. PC-AT-sized
185 motherboard. Requires power supply with 3.3V output.
186
187config ALPHA_EB64P_CH
188 bool "EB64+"
189
190config ALPHA_EB66
191 bool "EB66"
192 help
193 A Digital DS group board. Uses 21066 or 21066A. I/O sub-system is
194 identical to EB64+. Baby PC-AT size. Runs from standard PC power
195 supply. The EB66 schematic was published as a marketing poster
196 advertising the 21066 as "the first microprocessor in the world with
197 embedded PCI".
198
199config ALPHA_EB66P
200 bool "EB66+"
201 help
202 Later variant of the EB66 board.
203
204config ALPHA_EIGER
205 bool "Eiger"
206 help
207 Apparently an obscure OEM single-board computer based on the
208 Typhoon/Tsunami chipset family. Information on it is scanty.
209
210config ALPHA_JENSEN
211 bool "Jensen"
Christoph Hellwig1883c9f2017-12-22 10:42:06 +0100212 depends on BROKEN
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100213 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700214 help
215 DEC PC 150 AXP (aka Jensen): This is a very old Digital system - one
216 of the first-generation Alpha systems. A number of these systems
217 seem to be available on the second- hand market. The Jensen is a
218 floor-standing tower system which originally used a 150MHz 21064 It
219 used programmable logic to interface a 486 EISA I/O bridge to the
220 CPU.
221
222config ALPHA_LX164
223 bool "LX164"
224 help
225 A technical overview of this board is available at
226 <http://www.unix-ag.org/Linux-Alpha/Architectures/LX164.html>.
227
228config ALPHA_LYNX
229 bool "Lynx"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100230 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700231 help
232 AlphaServer 2100A-based systems.
233
234config ALPHA_MARVEL
235 bool "Marvel"
236 help
237 AlphaServer ES47 / ES80 / GS1280 based on EV7.
238
239config ALPHA_MIATA
240 bool "Miata"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100241 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700242 help
243 The Digital PersonalWorkStation (PWS 433a, 433au, 500a, 500au, 600a,
Adrian Bunkffc32d62008-10-15 22:01:19 -0700244 or 600au).
Linus Torvalds1da177e2005-04-16 15:20:36 -0700245
246config ALPHA_MIKASA
247 bool "Mikasa"
248 help
249 AlphaServer 1000-based Alpha systems.
250
251config ALPHA_NAUTILUS
252 bool "Nautilus"
253 help
254 Alpha systems based on the AMD 751 & ALI 1543C chipsets.
255
256config ALPHA_NONAME_CH
257 bool "Noname"
258
259config ALPHA_NORITAKE
260 bool "Noritake"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100261 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700262 help
263 AlphaServer 1000A, AlphaServer 600A, and AlphaServer 800-based
264 systems.
265
266config ALPHA_PC164
267 bool "PC164"
268
269config ALPHA_P2K
270 bool "Platform2000"
271
272config ALPHA_RAWHIDE
273 bool "Rawhide"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100274 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700275 help
276 AlphaServer 1200, AlphaServer 4000 and AlphaServer 4100 machines.
277 See HOWTO at
278 <http://www.alphalinux.org/docs/rawhide/4100_install.shtml>.
279
280config ALPHA_RUFFIAN
281 bool "Ruffian"
282 help
283 Samsung APC164UX. There is a page on known problems and workarounds
284 at <http://www.alphalinux.org/faq/FAQ-11.html>.
285
286config ALPHA_RX164
287 bool "RX164"
288
289config ALPHA_SX164
290 bool "SX164"
291
292config ALPHA_SABLE
293 bool "Sable"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100294 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700295 help
296 Digital AlphaServer 2000 and 2100-based systems.
297
298config ALPHA_SHARK
299 bool "Shark"
300
301config ALPHA_TAKARA
302 bool "Takara"
303 help
304 Alpha 11164-based OEM single-board computer.
305
306config ALPHA_TITAN
307 bool "Titan"
308 help
309 AlphaServer ES45/DS25 SMP based on EV68 and Titan chipset.
310
311config ALPHA_WILDFIRE
312 bool "Wildfire"
313 help
314 AlphaServer GS 40/80/160/320 SMP based on the EV67 core.
315
316endchoice
317
318# clear all implied options (don't want default values for those):
319# Most of these machines have ISA slots; not exactly sure which don't,
320# and this doesn't activate hordes of code, so do it always.
321config ISA
322 bool
323 default y
324 help
325 Find out whether you have ISA slots on your motherboard. ISA is the
326 name of a bus system, i.e. the way the CPU talks to the other stuff
327 inside your box. Other bus systems are PCI, EISA, MicroChannel
328 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
329 newer boards don't support it. If you have ISA, say Y, otherwise N.
330
Al Viro5cae8412005-05-04 05:39:22 +0100331config ISA_DMA_API
332 bool
333 default y
334
Linus Torvalds1da177e2005-04-16 15:20:36 -0700335config ALPHA_NONAME
336 bool
337 depends on ALPHA_BOOK1 || ALPHA_NONAME_CH
338 default y
339 help
340 The AXPpci33 (aka NoName), is based on the EB66 (includes the Multia
341 UDB). This design was produced by Digital's Technical OEM (TOEM)
342 group. It uses the 21066 processor running at 166MHz or 233MHz. It
343 is a baby-AT size, and runs from a standard PC power supply. It has
344 5 ISA slots and 3 PCI slots (one pair are a shared slot). There are
345 2 versions, with either PS/2 or large DIN connectors for the
346 keyboard.
347
348config ALPHA_EV4
349 bool
350 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
351 default y if !ALPHA_LYNX
352
353config ALPHA_LCA
354 bool
355 depends on ALPHA_NONAME || ALPHA_EB66 || ALPHA_EB66P || ALPHA_P2K
356 default y
357
358config ALPHA_APECS
359 bool
360 depends on !ALPHA_PRIMO && (ALPHA_NORITAKE || ALPHA_MIKASA) || ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P_CH || ALPHA_XL
361 default y
362
363config ALPHA_EB64P
364 bool
365 depends on ALPHA_CABRIOLET || ALPHA_EB64P_CH
366 default y
367 help
368 Uses 21064 or 21064A and APECs. Has ISA and PCI expansion (3 ISA,
369 2 PCI, one pair are on a shared slot). Supports 36-bit DRAM SIMs.
370 ISA bus generated by Intel SaturnI/O PCI-ISA bridge. On-board SCSI
371 (NCR 810 on PCI) Ethernet (Digital 21040), KBD, MOUSE (PS2 style),
372 SuperI/O (2S, 1P, FD), RTC/NVRAM. Boot ROM is EPROM. PC-AT size.
373 Runs from standard PC power supply.
374
375config ALPHA_EV5
376 bool "EV5 CPU(s) (model 5/xxx)?" if ALPHA_LYNX
377 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
378
379config ALPHA_EV4
380 bool
381 default y if ALPHA_LYNX && !ALPHA_EV5
382
383config ALPHA_CIA
384 bool
385 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
386 default y
387
388config ALPHA_EV56
389 bool "EV56 CPU (speed >= 366MHz)?" if ALPHA_ALCOR
390 default y if ALPHA_RX164 || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN || ALPHA_PC164 || ALPHA_TAKARA
391
392config ALPHA_EV56
393 prompt "EV56 CPU (speed >= 333MHz)?"
Fernando J. Pereda060ec3d2006-09-25 23:32:37 -0700394 depends on ALPHA_NORITAKE || ALPHA_PRIMO
Linus Torvalds1da177e2005-04-16 15:20:36 -0700395
396config ALPHA_EV56
397 prompt "EV56 CPU (speed >= 400MHz)?"
398 depends on ALPHA_RAWHIDE
399
400config ALPHA_PRIMO
401 bool "EV5 CPU daughtercard (model 5/xxx)?"
402 depends on ALPHA_NORITAKE || ALPHA_MIKASA
403 help
404 Say Y if you have an AS 1000 5/xxx or an AS 1000A 5/xxx.
405
406config ALPHA_GAMMA
407 bool "EV5 CPU(s) (model 5/xxx)?"
408 depends on ALPHA_SABLE
409 help
410 Say Y if you have an AS 2000 5/xxx or an AS 2100 5/xxx.
411
412config ALPHA_GAMMA
413 bool
414 depends on ALPHA_LYNX
415 default y
416
417config ALPHA_T2
418 bool
419 depends on ALPHA_SABLE || ALPHA_LYNX
420 default y
421
422config ALPHA_PYXIS
423 bool
424 depends on ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN
425 default y
426
427config ALPHA_EV6
428 bool
429 depends on ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER || ALPHA_MARVEL
430 default y
431
432config ALPHA_TSUNAMI
433 bool
434 depends on ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER
435 default y
436
437config ALPHA_EV67
438 bool "EV67 (or later) CPU (speed > 600MHz)?" if ALPHA_DP264 || ALPHA_EIGER
439 default y if ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_MARVEL
440 help
441 Is this a machine based on the EV67 core? If in doubt, select N here
442 and the machine will be treated as an EV6.
443
Linus Torvalds1da177e2005-04-16 15:20:36 -0700444config ALPHA_MCPCIA
445 bool
446 depends on ALPHA_RAWHIDE
447 default y
448
449config ALPHA_POLARIS
450 bool
451 depends on ALPHA_RX164
452 default y
453
454config ALPHA_IRONGATE
455 bool
456 depends on ALPHA_NAUTILUS
457 default y
458
Akinobu Mitaf7c29672006-03-26 01:39:18 -0800459config GENERIC_HWEIGHT
460 bool
Randy Dunlap5e625b02006-06-12 15:13:40 -0700461 default y if !ALPHA_EV67
Akinobu Mitaf7c29672006-03-26 01:39:18 -0800462
Linus Torvalds1da177e2005-04-16 15:20:36 -0700463config ALPHA_AVANTI
464 bool
465 depends on ALPHA_XL || ALPHA_AVANTI_CH
466 default y
467 help
468 Avanti AS 200, AS 205, AS 250, AS 255, AS 300, and AS 400-based
469 Alphas. Info at
470 <http://www.unix-ag.org/Linux-Alpha/Architectures/Avanti.html>.
471
472config ALPHA_BROKEN_IRQ_MASK
473 bool
474 depends on ALPHA_GENERIC || ALPHA_PC164
475 default y
476
Jay Estabrook025a2212007-06-01 00:47:03 -0700477config VGA_HOSE
478 bool
Matt Turnerdd7f1fe2012-05-01 21:28:59 -0400479 depends on VGA_CONSOLE && (ALPHA_GENERIC || ALPHA_TITAN || ALPHA_MARVEL || ALPHA_TSUNAMI)
Jay Estabrook025a2212007-06-01 00:47:03 -0700480 default y
481 help
482 Support VGA on an arbitrary hose; needed for several platforms
483 which always have multiple hoses, and whose consoles support it.
484
485
Richard Henderson994dcf72011-04-28 07:29:27 -0700486config ALPHA_QEMU
487 bool "Run under QEMU emulation"
488 depends on !ALPHA_GENERIC
489 ---help---
490 Assume the presence of special features supported by QEMU PALcode
491 that reduce the overhead of system emulation.
492
493 Generic kernels will auto-detect QEMU. But when building a
494 system-specific kernel, the assumption is that we want to
Masanari Iida83fc61a2017-09-26 12:47:59 +0900495 eliminate as many runtime tests as possible.
Richard Henderson994dcf72011-04-28 07:29:27 -0700496
497 If unsure, say N.
498
499
Linus Torvalds1da177e2005-04-16 15:20:36 -0700500config ALPHA_SRM
501 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 -0800502 depends on TTY
Linus Torvalds1da177e2005-04-16 15:20:36 -0700503 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
504 ---help---
505 There are two different types of booting firmware on Alphas: SRM,
506 which is command line driven, and ARC, which uses menus and arrow
507 keys. Details about the Linux/Alpha booting process are contained in
508 the Linux/Alpha FAQ, accessible on the WWW from
509 <http://www.alphalinux.org/>.
510
511 The usual way to load Linux on an Alpha machine is to use MILO
512 (a bootloader that lets you pass command line parameters to the
513 kernel just like lilo does for the x86 architecture) which can be
514 loaded either from ARC or can be installed directly as a permanent
515 firmware replacement from floppy (which requires changing a certain
516 jumper on the motherboard). If you want to do either of these, say N
517 here. If MILO doesn't work on your system (true for Jensen
518 motherboards), you can bypass it altogether and boot Linux directly
519 from an SRM console; say Y here in order to do that. Note that you
520 won't be able to boot from an IDE disk using SRM.
521
522 If unsure, say N.
523
viro@ZenIV.linux.org.uka08b6b72005-09-06 01:48:42 +0100524config ARCH_MAY_HAVE_PC_FDC
525 def_bool y
526
Linus Torvalds1da177e2005-04-16 15:20:36 -0700527config SMP
528 bool "Symmetric multi-processing support"
529 depends on ALPHA_SABLE || ALPHA_LYNX || ALPHA_RAWHIDE || ALPHA_DP264 || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_GENERIC || ALPHA_SHARK || ALPHA_MARVEL
530 ---help---
531 This enables support for systems with more than one CPU. If you have
Robert Graffham4a474152014-01-23 15:55:29 -0800532 a system with only one CPU, say N. If you have a system with more
533 than one CPU, say Y.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700534
Robert Graffham4a474152014-01-23 15:55:29 -0800535 If you say N here, the kernel will run on uni- and multiprocessor
Linus Torvalds1da177e2005-04-16 15:20:36 -0700536 machines, but will use only one CPU of a multiprocessor machine. If
537 you say Y here, the kernel will run on many, but not all,
Robert Graffham4a474152014-01-23 15:55:29 -0800538 uniprocessor machines. On a uniprocessor machine, the kernel
Linus Torvalds1da177e2005-04-16 15:20:36 -0700539 will run faster if you say N here.
540
Adrian Bunk03502fa2008-02-03 15:50:21 +0200541 See also the SMP-HOWTO available at
542 <http://www.tldp.org/docs.html#howto>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700543
544 If you don't know what to do here, say N.
545
Linus Torvalds1da177e2005-04-16 15:20:36 -0700546config NR_CPUS
Jay Estabrookd7083172007-06-01 00:47:05 -0700547 int "Maximum number of CPUs (2-32)"
548 range 2 32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700549 depends on SMP
Jay Estabrookd7083172007-06-01 00:47:05 -0700550 default "32" if ALPHA_GENERIC || ALPHA_MARVEL
551 default "4" if !ALPHA_GENERIC && !ALPHA_MARVEL
552 help
553 MARVEL support can handle a maximum of 32 CPUs, all the others
554 with working support have a maximum of 4 CPUs.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700555
Dave Hansen3f22ab22005-06-23 00:07:43 -0700556config ARCH_DISCONTIGMEM_ENABLE
Kees Cook88d11bb2012-10-02 11:16:25 -0700557 bool "Discontiguous Memory Support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700558 help
Matt LaPlantefc31e832006-10-03 22:23:47 +0200559 Say Y to support efficient handling of discontiguous physical memory,
Linus Torvalds1da177e2005-04-16 15:20:36 -0700560 for architectures which are either NUMA (Non-Uniform Memory Access)
561 or have huge holes in the physical address space for other reasons.
Mike Rapoportad56b732018-03-21 21:22:47 +0200562 See <file:Documentation/vm/numa.rst> for more.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700563
Linus Torvalds1da177e2005-04-16 15:20:36 -0700564config NUMA
565 bool "NUMA Support (EXPERIMENTAL)"
Al Viro6df7c992005-08-23 22:44:50 +0100566 depends on DISCONTIGMEM && BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700567 help
568 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
569 Access). This option is for configuring high-end multiprocessor
570 server machines. If in doubt, say N.
571
Richard Henderson7f3bbb82013-07-12 09:36:21 -0700572config ALPHA_WTINT
573 bool "Use WTINT" if ALPHA_SRM || ALPHA_GENERIC
574 default y if ALPHA_QEMU
575 default n if ALPHA_EV5 || ALPHA_EV56 || (ALPHA_EV4 && !ALPHA_LCA)
576 default n if !ALPHA_SRM && !ALPHA_GENERIC
577 default y if SMP
578 ---help---
579 The Wait for Interrupt (WTINT) PALcall attempts to place the CPU
580 to sleep until the next interrupt. This may reduce the power
581 consumed, and the heat produced by the computer. However, it has
582 the side effect of making the cycle counter unreliable as a timing
583 device across the sleep.
584
585 For emulation under QEMU, definitely say Y here, as we have other
586 mechanisms for measuring time than the cycle counter.
587
588 For EV4 (but not LCA), EV5 and EV56 systems, or for systems running
589 MILO, sleep mode is not supported so you might as well say N here.
590
591 For SMP systems we cannot use the cycle counter for timing anyway,
592 so you might as well say Y here.
593
594 If unsure, say N.
595
Yasunori Gotoc80d79d2006-04-10 22:53:53 -0700596config NODES_SHIFT
597 int
598 default "7"
599 depends on NEED_MULTIPLE_NODES
600
Linus Torvalds1da177e2005-04-16 15:20:36 -0700601# LARGE_VMALLOC is racy, if you *really* need it then fix it first
602config ALPHA_LARGE_VMALLOC
603 bool
604 ---help---
605 Process creation and other aspects of virtual memory management can
606 be streamlined if we restrict the kernel to one PGD for all vmalloc
607 allocations. This equates to about 8GB.
608
609 Under normal circumstances, this is so far and above what is needed
610 as to be laughable. However, there are certain applications (such
611 as benchmark-grade in-kernel web serving) that can make use of as
612 much vmalloc space as is available.
613
614 Say N unless you know you need gobs and gobs of vmalloc space.
615
616config VERBOSE_MCHECK
617 bool "Verbose Machine Checks"
618
619config VERBOSE_MCHECK_ON
620 int "Verbose Printing Mode (0=off, 1=on, 2=all)"
621 depends on VERBOSE_MCHECK
622 default 1
623 ---help---
624 This option allows the default printing mode to be set, and then
625 possibly overridden by a boot command argument.
626
627 For example, if one wanted the option of printing verbose
628 machine checks, but wanted the default to be as if verbose
629 machine check printing was turned off, then one would choose
630 the printing mode to be 0. Then, upon reboot, one could add
631 the boot command line "verbose_mcheck=1" to get the normal
632 verbose machine check printing, or "verbose_mcheck=2" to get
633 the maximum information available.
634
635 Take the default (1) unless you want more control or more info.
636
Richard Hendersonfddd87d2013-07-12 16:15:56 -0700637choice
638 prompt "Timer interrupt frequency (HZ)?"
639 default HZ_128 if ALPHA_QEMU
640 default HZ_1200 if ALPHA_RAWHIDE
641 default HZ_1024
642 ---help---
643 The frequency at which timer interrupts occur. A high frequency
644 minimizes latency, whereas a low frequency minimizes overhead of
645 process accounting. The later effect is especially significant
646 when being run under QEMU.
647
648 Note that some Alpha hardware cannot change the interrupt frequency
649 of the timer. If unsure, say 1024 (or 1200 for Rawhide).
650
651 config HZ_32
652 bool "32 Hz"
653 config HZ_64
654 bool "64 Hz"
655 config HZ_128
656 bool "128 Hz"
657 config HZ_256
658 bool "256 Hz"
659 config HZ_1024
660 bool "1024 Hz"
661 config HZ_1200
662 bool "1200 Hz"
663endchoice
664
H. Peter Anvinbdc80782008-02-08 04:21:26 -0800665config HZ
Richard Hendersonfddd87d2013-07-12 16:15:56 -0700666 int
667 default 32 if HZ_32
668 default 64 if HZ_64
669 default 128 if HZ_128
670 default 256 if HZ_256
671 default 1200 if HZ_1200
H. Peter Anvinbdc80782008-02-08 04:21:26 -0800672 default 1024
673
Linus Torvalds1da177e2005-04-16 15:20:36 -0700674config SRM_ENV
675 tristate "SRM environment through procfs"
676 depends on PROC_FS
677 ---help---
678 If you enable this option, a subdirectory inside /proc called
679 /proc/srm_environment will give you access to the all important
680 SRM environment variables (those which have a name) and also
681 to all others (by their internal number).
682
683 SRM is something like a BIOS for Alpha machines. There are some
684 other such BIOSes, like AlphaBIOS, which this driver cannot
685 support (hey, that's not SRM!).
686
687 Despite the fact that this driver doesn't work on all Alphas (but
688 only on those which have SRM as their firmware), it's save to
689 build it even if your particular machine doesn't know about SRM
690 (or if you intend to compile a generic kernel). It will simply
691 not create those subdirectory in /proc (and give you some warning,
692 of course).
693
694 This driver is also available as a module and will be called
695 srm_env then.
696
Linus Torvalds1da177e2005-04-16 15:20:36 -0700697endmenu
698
Jay Estabrook025a2212007-06-01 00:47:03 -0700699# DUMMY_CONSOLE may be defined in drivers/video/console/Kconfig
700# but we also need it if VGA_HOSE is set
701config DUMMY_CONSOLE
702 bool
703 depends on VGA_HOSE
704 default y