blob: d6e9fc7a7b19e2283cedc1122705834f455032a7 [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 Hellwig2f9237d2020-07-08 09:30:00 +020010 select DMA_OPS if PCI
Christoph Hellwigeb01d422018-11-15 20:05:32 +010011 select FORCE_PCI if !ALPHA_JENSEN
Christoph Hellwig2eac9c22018-11-15 20:05:33 +010012 select PCI_DOMAINS if PCI
Christoph Hellwig20f1b792018-11-15 20:05:34 +010013 select PCI_SYSCALL if PCI
David Woodhousee17c6d52008-06-17 12:19:34 +010014 select HAVE_AOUT
Masahiro Yamada2ff2b7e2019-08-19 14:54:20 +090015 select HAVE_ASM_MODVERSIONS
Sam Ravnborgec7748b2008-02-09 10:46:40 +010016 select HAVE_IDE
Mathieu Desnoyers42d4b832008-02-02 15:10:34 -050017 select HAVE_OPROFILE
Ralf Baechle8761f1a2011-06-01 19:05:09 +010018 select HAVE_PCSPKR_PLATFORM
Michael Creea582e6f2009-12-08 14:27:01 -050019 select HAVE_PERF_EVENTS
Christoph Hellwigf616ab52018-05-09 06:53:49 +020020 select NEED_DMA_MAP_STATE
Christoph Hellwig86596f02018-04-05 09:44:52 +020021 select NEED_SG_DMA_LENGTH
Stephen Rothwell4febd952013-03-07 15:48:16 +110022 select VIRT_TO_BUS
Thomas Gleixnere27ec642011-01-19 20:27:11 +010023 select GENERIC_IRQ_PROBE
Christoph Hellwigeb01d422018-11-15 20:05:32 +010024 select GENERIC_PCI_IOMAP if PCI
Thomas Gleixnere27ec642011-01-19 20:27:11 +010025 select AUTO_IRQ_AFFINITY if SMP
Thomas Gleixnera6e120e2011-03-25 22:20:51 +010026 select GENERIC_IRQ_SHOW
Will Deaconc1d7e012012-07-30 14:42:46 -070027 select ARCH_WANT_IPC_PARSE_VERSION
Huang Yingdf013ff2011-07-13 13:14:22 +080028 select ARCH_HAVE_NMI_SAFE_CMPXCHG
蔡正龙a9302e82013-12-20 10:04:10 +080029 select AUDIT_ARCH
Richard Hendersona1659d62013-07-14 10:57:34 -070030 select GENERIC_CLOCKEVENTS
Michael Cree6fd16ce2018-02-26 22:02:12 +130031 select GENERIC_CPU_VULNERABILITIES
Thomas Gleixner2ec94152012-04-20 13:05:55 +000032 select GENERIC_SMP_IDLE_THREAD
Michael Creef2db6332012-08-19 14:40:58 +120033 select GENERIC_STRNCPY_FROM_USER
34 select GENERIC_STRNLEN_USER
AKASHI Takahiro7a017722014-02-25 18:16:24 +090035 select HAVE_ARCH_AUDITSYSCALL
David Howells786d35d2012-09-28 14:31:03 +093036 select HAVE_MOD_ARCH_SPECIFIC
37 select MODULES_USE_ELF_RELA
Al Viroeaca6ea2012-11-25 23:12:10 -050038 select ODD_RT_SIGACTION
Al Viro302627e2012-12-25 16:30:23 -050039 select OLD_SIGSUSPEND
Zhaoxiu Zengfff7fb02016-05-20 17:03:57 -070040 select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
Peter Zijlstra6137fed2018-09-04 17:04:07 +020041 select MMU_GATHER_NO_RANGE
Christoph Hellwig5e6e9852020-09-03 16:22:35 +020042 select SET_FS
Linus Torvalds1da177e2005-04-16 15:20:36 -070043 help
44 The Alpha is a 64-bit general-purpose processor designed and
45 marketed by the Digital Equipment Corporation of blessed memory,
46 now Hewlett-Packard. The Alpha Linux project has a home page at
47 <http://www.alphalinux.org/>.
48
49config 64BIT
50 def_bool y
51
52config MMU
53 bool
54 default y
55
David Howellsf0d1b0b2006-12-08 02:37:49 -080056config ARCH_HAS_ILOG2_U32
57 bool
58 default n
59
60config ARCH_HAS_ILOG2_U64
61 bool
62 default n
63
Linus Torvalds1da177e2005-04-16 15:20:36 -070064config GENERIC_CALIBRATE_DELAY
65 bool
66 default y
67
Christoph Lameter5ac6da62007-02-10 01:43:14 -080068config ZONE_DMA
69 bool
70 default y
71
Linus Torvalds1da177e2005-04-16 15:20:36 -070072config GENERIC_ISA_DMA
73 bool
74 default y
75
Kirill A. Shutemovf5d45472015-04-14 15:45:36 -070076config PGTABLE_LEVELS
77 int
78 default 3
79
蔡正龙a9302e82013-12-20 10:04:10 +080080config AUDIT_ARCH
81 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -070082
83menu "System setup"
84
85choice
86 prompt "Alpha system type"
87 default ALPHA_GENERIC
Masahiro Yamadaa7f7f622020-06-14 01:50:22 +090088 help
Linus Torvalds1da177e2005-04-16 15:20:36 -070089 This is the system type of your hardware. A "generic" kernel will
90 run on any supported Alpha system. However, if you configure a
91 kernel for your specific system, it will be faster and smaller.
92
93 To find out what type of Alpha system you have, you may want to
94 check out the Linux/Alpha FAQ, accessible on the WWW from
95 <http://www.alphalinux.org/>. In summary:
96
Jay Estabrookd7083172007-06-01 00:47:05 -070097 Alcor/Alpha-XLT AS 600, AS 500, XL-300, XL-366
Linus Torvalds1da177e2005-04-16 15:20:36 -070098 Alpha-XL XL-233, XL-266
99 AlphaBook1 Alpha laptop
100 Avanti AS 200, AS 205, AS 250, AS 255, AS 300, AS 400
101 Cabriolet AlphaPC64, AlphaPCI64
Jay Estabrookd7083172007-06-01 00:47:05 -0700102 DP264 DP264 / DS20 / ES40 / DS10 / DS10L
Linus Torvalds1da177e2005-04-16 15:20:36 -0700103 EB164 EB164 21164 evaluation board
104 EB64+ EB64+ 21064 evaluation board
105 EB66 EB66 21066 evaluation board
106 EB66+ EB66+ 21066 evaluation board
Jay Estabrookd7083172007-06-01 00:47:05 -0700107 Jensen DECpc 150, DEC 2000 models 300, 500
Linus Torvalds1da177e2005-04-16 15:20:36 -0700108 LX164 AlphaPC164-LX
109 Lynx AS 2100A
Jay Estabrookd7083172007-06-01 00:47:05 -0700110 Miata Personal Workstation 433/500/600 a/au
Linus Torvalds1da177e2005-04-16 15:20:36 -0700111 Marvel AlphaServer ES47 / ES80 / GS1280
112 Mikasa AS 1000
113 Noname AXPpci33, UDB (Multia)
114 Noritake AS 1000A, AS 600A, AS 800
115 PC164 AlphaPC164
116 Rawhide AS 1200, AS 4000, AS 4100
117 Ruffian RPX164-2, AlphaPC164-UX, AlphaPC164-BX
118 SX164 AlphaPC164-SX
119 Sable AS 2000, AS 2100
Jay Estabrookd7083172007-06-01 00:47:05 -0700120 Shark DS 20L
121 Takara Takara (OEM)
122 Titan AlphaServer ES45 / DS25 / DS15
Linus Torvalds1da177e2005-04-16 15:20:36 -0700123 Wildfire AlphaServer GS 40/80/160/320
124
125 If you don't know what to do, choose "generic".
126
127config ALPHA_GENERIC
128 bool "Generic"
Joe Millenbach4f73bc42013-01-17 22:44:22 -0800129 depends on TTY
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100130 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700131 help
132 A generic kernel will run on all supported Alpha hardware.
133
134config ALPHA_ALCOR
135 bool "Alcor/Alpha-XLT"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100136 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700137 help
138 For systems using the Digital ALCOR chipset: 5 chips (4, 64-bit data
139 slices (Data Switch, DSW) - 208-pin PQFP and 1 control (Control, I/O
140 Address, CIA) - a 383 pin plastic PGA). It provides a DRAM
141 controller (256-bit memory bus) and a PCI interface. It also does
142 all the work required to support an external Bcache and to maintain
143 memory coherence when a PCI device DMAs into (or out of) memory.
144
145config ALPHA_XL
146 bool "Alpha-XL"
147 help
148 XL-233 and XL-266-based Alpha systems.
149
150config ALPHA_BOOK1
151 bool "AlphaBook1"
152 help
153 Dec AlphaBook1/Burns Alpha-based laptops.
154
155config ALPHA_AVANTI_CH
156 bool "Avanti"
157
158config ALPHA_CABRIOLET
159 bool "Cabriolet"
160 help
161 Cabriolet AlphaPC64, AlphaPCI64 systems. Derived from EB64+ but now
162 baby-AT with Flash boot ROM, no on-board SCSI or Ethernet. 3 ISA
163 slots, 4 PCI slots (one pair are on a shared slot), uses plug-in
164 Bcache SIMMs. Requires power supply with 3.3V output.
165
166config ALPHA_DP264
167 bool "DP264"
168 help
169 Various 21264 systems with the tsunami core logic chipset.
170 API Networks: 264DP, UP2000(+), CS20;
171 Compaq: DS10(E,L), XP900, XP1000, DS20(E), ES40.
172
173config ALPHA_EB164
174 bool "EB164"
175 help
176 EB164 21164 evaluation board from DEC. Uses 21164 and ALCOR. Has
177 ISA and PCI expansion (3 ISA slots, 2 64-bit PCI slots (one is
178 shared with an ISA slot) and 2 32-bit PCI slots. Uses plus-in
179 Bcache SIMMs. I/O sub-system provides SuperI/O (2S, 1P, FD), KBD,
180 MOUSE (PS2 style), RTC/NVRAM. Boot ROM is Flash. PC-AT-sized
181 motherboard. Requires power supply with 3.3V output.
182
183config ALPHA_EB64P_CH
184 bool "EB64+"
185
186config ALPHA_EB66
187 bool "EB66"
188 help
189 A Digital DS group board. Uses 21066 or 21066A. I/O sub-system is
190 identical to EB64+. Baby PC-AT size. Runs from standard PC power
191 supply. The EB66 schematic was published as a marketing poster
192 advertising the 21066 as "the first microprocessor in the world with
193 embedded PCI".
194
195config ALPHA_EB66P
196 bool "EB66+"
197 help
198 Later variant of the EB66 board.
199
200config ALPHA_EIGER
201 bool "Eiger"
202 help
203 Apparently an obscure OEM single-board computer based on the
204 Typhoon/Tsunami chipset family. Information on it is scanty.
205
206config ALPHA_JENSEN
207 bool "Jensen"
Christoph Hellwig1883c9f2017-12-22 10:42:06 +0100208 depends on BROKEN
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100209 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700210 help
211 DEC PC 150 AXP (aka Jensen): This is a very old Digital system - one
212 of the first-generation Alpha systems. A number of these systems
213 seem to be available on the second- hand market. The Jensen is a
214 floor-standing tower system which originally used a 150MHz 21064 It
215 used programmable logic to interface a 486 EISA I/O bridge to the
216 CPU.
217
218config ALPHA_LX164
219 bool "LX164"
220 help
221 A technical overview of this board is available at
222 <http://www.unix-ag.org/Linux-Alpha/Architectures/LX164.html>.
223
224config ALPHA_LYNX
225 bool "Lynx"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100226 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700227 help
228 AlphaServer 2100A-based systems.
229
230config ALPHA_MARVEL
231 bool "Marvel"
232 help
233 AlphaServer ES47 / ES80 / GS1280 based on EV7.
234
235config ALPHA_MIATA
236 bool "Miata"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100237 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700238 help
239 The Digital PersonalWorkStation (PWS 433a, 433au, 500a, 500au, 600a,
Adrian Bunkffc32d62008-10-15 22:01:19 -0700240 or 600au).
Linus Torvalds1da177e2005-04-16 15:20:36 -0700241
242config ALPHA_MIKASA
243 bool "Mikasa"
244 help
245 AlphaServer 1000-based Alpha systems.
246
247config ALPHA_NAUTILUS
248 bool "Nautilus"
249 help
250 Alpha systems based on the AMD 751 & ALI 1543C chipsets.
251
252config ALPHA_NONAME_CH
253 bool "Noname"
254
255config ALPHA_NORITAKE
256 bool "Noritake"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100257 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700258 help
259 AlphaServer 1000A, AlphaServer 600A, and AlphaServer 800-based
260 systems.
261
262config ALPHA_PC164
263 bool "PC164"
264
265config ALPHA_P2K
266 bool "Platform2000"
267
268config ALPHA_RAWHIDE
269 bool "Rawhide"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100270 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700271 help
272 AlphaServer 1200, AlphaServer 4000 and AlphaServer 4100 machines.
273 See HOWTO at
274 <http://www.alphalinux.org/docs/rawhide/4100_install.shtml>.
275
276config ALPHA_RUFFIAN
277 bool "Ruffian"
278 help
279 Samsung APC164UX. There is a page on known problems and workarounds
280 at <http://www.alphalinux.org/faq/FAQ-11.html>.
281
282config ALPHA_RX164
283 bool "RX164"
284
285config ALPHA_SX164
286 bool "SX164"
287
288config ALPHA_SABLE
289 bool "Sable"
Christoph Hellwig6630a8e2018-11-15 20:05:37 +0100290 select HAVE_EISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700291 help
292 Digital AlphaServer 2000 and 2100-based systems.
293
294config ALPHA_SHARK
295 bool "Shark"
296
297config ALPHA_TAKARA
298 bool "Takara"
299 help
300 Alpha 11164-based OEM single-board computer.
301
302config ALPHA_TITAN
303 bool "Titan"
304 help
305 AlphaServer ES45/DS25 SMP based on EV68 and Titan chipset.
306
307config ALPHA_WILDFIRE
308 bool "Wildfire"
309 help
310 AlphaServer GS 40/80/160/320 SMP based on the EV67 core.
311
312endchoice
313
314# clear all implied options (don't want default values for those):
315# Most of these machines have ISA slots; not exactly sure which don't,
316# and this doesn't activate hordes of code, so do it always.
317config ISA
318 bool
319 default y
320 help
321 Find out whether you have ISA slots on your motherboard. ISA is the
322 name of a bus system, i.e. the way the CPU talks to the other stuff
323 inside your box. Other bus systems are PCI, EISA, MicroChannel
324 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
325 newer boards don't support it. If you have ISA, say Y, otherwise N.
326
Al Viro5cae8412005-05-04 05:39:22 +0100327config ISA_DMA_API
328 bool
329 default y
330
Linus Torvalds1da177e2005-04-16 15:20:36 -0700331config ALPHA_NONAME
332 bool
333 depends on ALPHA_BOOK1 || ALPHA_NONAME_CH
334 default y
335 help
336 The AXPpci33 (aka NoName), is based on the EB66 (includes the Multia
337 UDB). This design was produced by Digital's Technical OEM (TOEM)
338 group. It uses the 21066 processor running at 166MHz or 233MHz. It
339 is a baby-AT size, and runs from a standard PC power supply. It has
340 5 ISA slots and 3 PCI slots (one pair are a shared slot). There are
341 2 versions, with either PS/2 or large DIN connectors for the
342 keyboard.
343
344config ALPHA_EV4
345 bool
346 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
347 default y if !ALPHA_LYNX
348
349config ALPHA_LCA
350 bool
351 depends on ALPHA_NONAME || ALPHA_EB66 || ALPHA_EB66P || ALPHA_P2K
352 default y
353
354config ALPHA_APECS
355 bool
356 depends on !ALPHA_PRIMO && (ALPHA_NORITAKE || ALPHA_MIKASA) || ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P_CH || ALPHA_XL
357 default y
358
359config ALPHA_EB64P
360 bool
361 depends on ALPHA_CABRIOLET || ALPHA_EB64P_CH
362 default y
363 help
364 Uses 21064 or 21064A and APECs. Has ISA and PCI expansion (3 ISA,
365 2 PCI, one pair are on a shared slot). Supports 36-bit DRAM SIMs.
366 ISA bus generated by Intel SaturnI/O PCI-ISA bridge. On-board SCSI
367 (NCR 810 on PCI) Ethernet (Digital 21040), KBD, MOUSE (PS2 style),
368 SuperI/O (2S, 1P, FD), RTC/NVRAM. Boot ROM is EPROM. PC-AT size.
369 Runs from standard PC power supply.
370
371config ALPHA_EV5
372 bool "EV5 CPU(s) (model 5/xxx)?" if ALPHA_LYNX
373 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
374
375config ALPHA_EV4
376 bool
377 default y if ALPHA_LYNX && !ALPHA_EV5
378
379config ALPHA_CIA
380 bool
381 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
382 default y
383
384config ALPHA_EV56
385 bool "EV56 CPU (speed >= 366MHz)?" if ALPHA_ALCOR
386 default y if ALPHA_RX164 || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN || ALPHA_PC164 || ALPHA_TAKARA
387
388config ALPHA_EV56
389 prompt "EV56 CPU (speed >= 333MHz)?"
Fernando J. Pereda060ec3d2006-09-25 23:32:37 -0700390 depends on ALPHA_NORITAKE || ALPHA_PRIMO
Linus Torvalds1da177e2005-04-16 15:20:36 -0700391
392config ALPHA_EV56
393 prompt "EV56 CPU (speed >= 400MHz)?"
394 depends on ALPHA_RAWHIDE
395
396config ALPHA_PRIMO
397 bool "EV5 CPU daughtercard (model 5/xxx)?"
398 depends on ALPHA_NORITAKE || ALPHA_MIKASA
399 help
400 Say Y if you have an AS 1000 5/xxx or an AS 1000A 5/xxx.
401
402config ALPHA_GAMMA
403 bool "EV5 CPU(s) (model 5/xxx)?"
404 depends on ALPHA_SABLE
405 help
406 Say Y if you have an AS 2000 5/xxx or an AS 2100 5/xxx.
407
408config ALPHA_GAMMA
409 bool
410 depends on ALPHA_LYNX
411 default y
412
413config ALPHA_T2
414 bool
415 depends on ALPHA_SABLE || ALPHA_LYNX
416 default y
417
418config ALPHA_PYXIS
419 bool
420 depends on ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN
421 default y
422
423config ALPHA_EV6
424 bool
425 depends on ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER || ALPHA_MARVEL
426 default y
427
428config ALPHA_TSUNAMI
429 bool
430 depends on ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER
431 default y
432
433config ALPHA_EV67
434 bool "EV67 (or later) CPU (speed > 600MHz)?" if ALPHA_DP264 || ALPHA_EIGER
435 default y if ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_MARVEL
436 help
437 Is this a machine based on the EV67 core? If in doubt, select N here
438 and the machine will be treated as an EV6.
439
Linus Torvalds1da177e2005-04-16 15:20:36 -0700440config ALPHA_MCPCIA
441 bool
442 depends on ALPHA_RAWHIDE
443 default y
444
445config ALPHA_POLARIS
446 bool
447 depends on ALPHA_RX164
448 default y
449
450config ALPHA_IRONGATE
451 bool
452 depends on ALPHA_NAUTILUS
453 default y
454
Akinobu Mitaf7c29672006-03-26 01:39:18 -0800455config GENERIC_HWEIGHT
456 bool
Randy Dunlap5e625b02006-06-12 15:13:40 -0700457 default y if !ALPHA_EV67
Akinobu Mitaf7c29672006-03-26 01:39:18 -0800458
Linus Torvalds1da177e2005-04-16 15:20:36 -0700459config ALPHA_AVANTI
460 bool
461 depends on ALPHA_XL || ALPHA_AVANTI_CH
462 default y
463 help
464 Avanti AS 200, AS 205, AS 250, AS 255, AS 300, and AS 400-based
465 Alphas. Info at
466 <http://www.unix-ag.org/Linux-Alpha/Architectures/Avanti.html>.
467
468config ALPHA_BROKEN_IRQ_MASK
469 bool
470 depends on ALPHA_GENERIC || ALPHA_PC164
471 default y
472
Jay Estabrook025a2212007-06-01 00:47:03 -0700473config VGA_HOSE
474 bool
Matt Turnerdd7f1fe2012-05-01 21:28:59 -0400475 depends on VGA_CONSOLE && (ALPHA_GENERIC || ALPHA_TITAN || ALPHA_MARVEL || ALPHA_TSUNAMI)
Jay Estabrook025a2212007-06-01 00:47:03 -0700476 default y
477 help
478 Support VGA on an arbitrary hose; needed for several platforms
479 which always have multiple hoses, and whose consoles support it.
480
481
Richard Henderson994dcf72011-04-28 07:29:27 -0700482config ALPHA_QEMU
483 bool "Run under QEMU emulation"
484 depends on !ALPHA_GENERIC
Masahiro Yamadaa7f7f622020-06-14 01:50:22 +0900485 help
Richard Henderson994dcf72011-04-28 07:29:27 -0700486 Assume the presence of special features supported by QEMU PALcode
487 that reduce the overhead of system emulation.
488
489 Generic kernels will auto-detect QEMU. But when building a
490 system-specific kernel, the assumption is that we want to
Masanari Iida83fc61a2017-09-26 12:47:59 +0900491 eliminate as many runtime tests as possible.
Richard Henderson994dcf72011-04-28 07:29:27 -0700492
493 If unsure, say N.
494
495
Linus Torvalds1da177e2005-04-16 15:20:36 -0700496config ALPHA_SRM
497 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 -0800498 depends on TTY
Linus Torvalds1da177e2005-04-16 15:20:36 -0700499 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
Masahiro Yamadaa7f7f622020-06-14 01:50:22 +0900500 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700501 There are two different types of booting firmware on Alphas: SRM,
502 which is command line driven, and ARC, which uses menus and arrow
503 keys. Details about the Linux/Alpha booting process are contained in
504 the Linux/Alpha FAQ, accessible on the WWW from
505 <http://www.alphalinux.org/>.
506
507 The usual way to load Linux on an Alpha machine is to use MILO
508 (a bootloader that lets you pass command line parameters to the
509 kernel just like lilo does for the x86 architecture) which can be
510 loaded either from ARC or can be installed directly as a permanent
511 firmware replacement from floppy (which requires changing a certain
512 jumper on the motherboard). If you want to do either of these, say N
513 here. If MILO doesn't work on your system (true for Jensen
514 motherboards), you can bypass it altogether and boot Linux directly
515 from an SRM console; say Y here in order to do that. Note that you
516 won't be able to boot from an IDE disk using SRM.
517
518 If unsure, say N.
519
viro@ZenIV.linux.org.uka08b6b72005-09-06 01:48:42 +0100520config ARCH_MAY_HAVE_PC_FDC
521 def_bool y
522
Linus Torvalds1da177e2005-04-16 15:20:36 -0700523config SMP
524 bool "Symmetric multi-processing support"
525 depends on ALPHA_SABLE || ALPHA_LYNX || ALPHA_RAWHIDE || ALPHA_DP264 || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_GENERIC || ALPHA_SHARK || ALPHA_MARVEL
Masahiro Yamadaa7f7f622020-06-14 01:50:22 +0900526 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700527 This enables support for systems with more than one CPU. If you have
Robert Graffham4a474152014-01-23 15:55:29 -0800528 a system with only one CPU, say N. If you have a system with more
529 than one CPU, say Y.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700530
Robert Graffham4a474152014-01-23 15:55:29 -0800531 If you say N here, the kernel will run on uni- and multiprocessor
Linus Torvalds1da177e2005-04-16 15:20:36 -0700532 machines, but will use only one CPU of a multiprocessor machine. If
533 you say Y here, the kernel will run on many, but not all,
Robert Graffham4a474152014-01-23 15:55:29 -0800534 uniprocessor machines. On a uniprocessor machine, the kernel
Linus Torvalds1da177e2005-04-16 15:20:36 -0700535 will run faster if you say N here.
536
Adrian Bunk03502fa2008-02-03 15:50:21 +0200537 See also the SMP-HOWTO available at
538 <http://www.tldp.org/docs.html#howto>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700539
540 If you don't know what to do here, say N.
541
Linus Torvalds1da177e2005-04-16 15:20:36 -0700542config NR_CPUS
Jay Estabrookd7083172007-06-01 00:47:05 -0700543 int "Maximum number of CPUs (2-32)"
544 range 2 32
Linus Torvalds1da177e2005-04-16 15:20:36 -0700545 depends on SMP
Jay Estabrookd7083172007-06-01 00:47:05 -0700546 default "32" if ALPHA_GENERIC || ALPHA_MARVEL
547 default "4" if !ALPHA_GENERIC && !ALPHA_MARVEL
548 help
549 MARVEL support can handle a maximum of 32 CPUs, all the others
Enrico Weigelt, metux IT consult8b3ebda2019-03-11 14:42:08 +0100550 with working support have a maximum of 4 CPUs.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700551
Dave Hansen3f22ab22005-06-23 00:07:43 -0700552config ARCH_DISCONTIGMEM_ENABLE
Kees Cook88d11bb2012-10-02 11:16:25 -0700553 bool "Discontiguous Memory Support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700554 help
Matt LaPlantefc31e832006-10-03 22:23:47 +0200555 Say Y to support efficient handling of discontiguous physical memory,
Linus Torvalds1da177e2005-04-16 15:20:36 -0700556 for architectures which are either NUMA (Non-Uniform Memory Access)
557 or have huge holes in the physical address space for other reasons.
Mike Rapoportad56b732018-03-21 21:22:47 +0200558 See <file:Documentation/vm/numa.rst> for more.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700559
Linus Torvalds1da177e2005-04-16 15:20:36 -0700560config NUMA
561 bool "NUMA Support (EXPERIMENTAL)"
Al Viro6df7c992005-08-23 22:44:50 +0100562 depends on DISCONTIGMEM && BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700563 help
564 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
565 Access). This option is for configuring high-end multiprocessor
566 server machines. If in doubt, say N.
567
Richard Henderson7f3bbb82013-07-12 09:36:21 -0700568config ALPHA_WTINT
569 bool "Use WTINT" if ALPHA_SRM || ALPHA_GENERIC
570 default y if ALPHA_QEMU
571 default n if ALPHA_EV5 || ALPHA_EV56 || (ALPHA_EV4 && !ALPHA_LCA)
572 default n if !ALPHA_SRM && !ALPHA_GENERIC
573 default y if SMP
Masahiro Yamadaa7f7f622020-06-14 01:50:22 +0900574 help
Richard Henderson7f3bbb82013-07-12 09:36:21 -0700575 The Wait for Interrupt (WTINT) PALcall attempts to place the CPU
576 to sleep until the next interrupt. This may reduce the power
577 consumed, and the heat produced by the computer. However, it has
578 the side effect of making the cycle counter unreliable as a timing
579 device across the sleep.
580
581 For emulation under QEMU, definitely say Y here, as we have other
582 mechanisms for measuring time than the cycle counter.
583
584 For EV4 (but not LCA), EV5 and EV56 systems, or for systems running
585 MILO, sleep mode is not supported so you might as well say N here.
586
587 For SMP systems we cannot use the cycle counter for timing anyway,
588 so you might as well say Y here.
589
590 If unsure, say N.
591
Yasunori Gotoc80d79d2006-04-10 22:53:53 -0700592config NODES_SHIFT
593 int
594 default "7"
595 depends on NEED_MULTIPLE_NODES
596
Linus Torvalds1da177e2005-04-16 15:20:36 -0700597# LARGE_VMALLOC is racy, if you *really* need it then fix it first
598config ALPHA_LARGE_VMALLOC
599 bool
Masahiro Yamadaa7f7f622020-06-14 01:50:22 +0900600 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700601 Process creation and other aspects of virtual memory management can
602 be streamlined if we restrict the kernel to one PGD for all vmalloc
603 allocations. This equates to about 8GB.
604
605 Under normal circumstances, this is so far and above what is needed
606 as to be laughable. However, there are certain applications (such
607 as benchmark-grade in-kernel web serving) that can make use of as
608 much vmalloc space as is available.
609
610 Say N unless you know you need gobs and gobs of vmalloc space.
611
612config VERBOSE_MCHECK
613 bool "Verbose Machine Checks"
614
615config VERBOSE_MCHECK_ON
616 int "Verbose Printing Mode (0=off, 1=on, 2=all)"
617 depends on VERBOSE_MCHECK
618 default 1
Masahiro Yamadaa7f7f622020-06-14 01:50:22 +0900619 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700620 This option allows the default printing mode to be set, and then
621 possibly overridden by a boot command argument.
622
623 For example, if one wanted the option of printing verbose
624 machine checks, but wanted the default to be as if verbose
625 machine check printing was turned off, then one would choose
626 the printing mode to be 0. Then, upon reboot, one could add
627 the boot command line "verbose_mcheck=1" to get the normal
628 verbose machine check printing, or "verbose_mcheck=2" to get
629 the maximum information available.
630
631 Take the default (1) unless you want more control or more info.
632
Richard Hendersonfddd87d2013-07-12 16:15:56 -0700633choice
634 prompt "Timer interrupt frequency (HZ)?"
635 default HZ_128 if ALPHA_QEMU
636 default HZ_1200 if ALPHA_RAWHIDE
637 default HZ_1024
Masahiro Yamadaa7f7f622020-06-14 01:50:22 +0900638 help
Richard Hendersonfddd87d2013-07-12 16:15:56 -0700639 The frequency at which timer interrupts occur. A high frequency
640 minimizes latency, whereas a low frequency minimizes overhead of
641 process accounting. The later effect is especially significant
642 when being run under QEMU.
643
644 Note that some Alpha hardware cannot change the interrupt frequency
645 of the timer. If unsure, say 1024 (or 1200 for Rawhide).
646
647 config HZ_32
648 bool "32 Hz"
649 config HZ_64
650 bool "64 Hz"
651 config HZ_128
652 bool "128 Hz"
653 config HZ_256
654 bool "256 Hz"
655 config HZ_1024
656 bool "1024 Hz"
657 config HZ_1200
658 bool "1200 Hz"
659endchoice
660
H. Peter Anvinbdc80782008-02-08 04:21:26 -0800661config HZ
Enrico Weigelt, metux IT consult8b3ebda2019-03-11 14:42:08 +0100662 int
Richard Hendersonfddd87d2013-07-12 16:15:56 -0700663 default 32 if HZ_32
664 default 64 if HZ_64
665 default 128 if HZ_128
666 default 256 if HZ_256
667 default 1200 if HZ_1200
H. Peter Anvinbdc80782008-02-08 04:21:26 -0800668 default 1024
669
Linus Torvalds1da177e2005-04-16 15:20:36 -0700670config SRM_ENV
671 tristate "SRM environment through procfs"
672 depends on PROC_FS
Masahiro Yamadaa7f7f622020-06-14 01:50:22 +0900673 help
Linus Torvalds1da177e2005-04-16 15:20:36 -0700674 If you enable this option, a subdirectory inside /proc called
675 /proc/srm_environment will give you access to the all important
676 SRM environment variables (those which have a name) and also
677 to all others (by their internal number).
678
679 SRM is something like a BIOS for Alpha machines. There are some
680 other such BIOSes, like AlphaBIOS, which this driver cannot
681 support (hey, that's not SRM!).
682
683 Despite the fact that this driver doesn't work on all Alphas (but
684 only on those which have SRM as their firmware), it's save to
685 build it even if your particular machine doesn't know about SRM
686 (or if you intend to compile a generic kernel). It will simply
687 not create those subdirectory in /proc (and give you some warning,
688 of course).
689
690 This driver is also available as a module and will be called
691 srm_env then.
692
Linus Torvalds1da177e2005-04-16 15:20:36 -0700693endmenu
694
Jay Estabrook025a2212007-06-01 00:47:03 -0700695# DUMMY_CONSOLE may be defined in drivers/video/console/Kconfig
696# but we also need it if VGA_HOSE is set
697config DUMMY_CONSOLE
698 bool
699 depends on VGA_HOSE
700 default y