[S390] Add processor type march=z10 and a processor type safety check.
[linux-2.6.git] / arch / m68k / Kconfig
1 #
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
4 #
5 config M68K
6         bool
7         default y
8         select HAVE_AOUT
9         select HAVE_IDE
10
11 config MMU
12         bool
13         default y
14
15 config RWSEM_GENERIC_SPINLOCK
16         bool
17         default y
18
19 config RWSEM_XCHGADD_ALGORITHM
20         bool
21
22 config ARCH_HAS_ILOG2_U32
23         bool
24         default n
25
26 config ARCH_HAS_ILOG2_U64
27         bool
28         default n
29
30 config GENERIC_HWEIGHT
31         bool
32         default y
33
34 config GENERIC_CALIBRATE_DELAY
35         bool
36         default y
37
38 config TIME_LOW_RES
39         bool
40         default y
41
42 config GENERIC_IOMAP
43         bool
44         default y
45
46 config ARCH_MAY_HAVE_PC_FDC
47         bool
48         depends on BROKEN && (Q40 || SUN3X)
49         default y
50
51 config NO_IOPORT
52         def_bool y
53
54 config NO_DMA
55         def_bool SUN3
56
57 config HZ
58         int
59         default 100
60
61 mainmenu "Linux/68k Kernel Configuration"
62
63 source "init/Kconfig"
64
65 source "kernel/Kconfig.freezer"
66
67 menu "Platform dependent setup"
68
69 config EISA
70         bool
71         ---help---
72           The Extended Industry Standard Architecture (EISA) bus was
73           developed as an open alternative to the IBM MicroChannel bus.
74
75           The EISA bus provided some of the features of the IBM MicroChannel
76           bus while maintaining backward compatibility with cards made for
77           the older ISA bus.  The EISA bus saw limited use between 1988 and
78           1995 when it was made obsolete by the PCI bus.
79
80           Say Y here if you are building a kernel for an EISA-based machine.
81
82           Otherwise, say N.
83
84 config MCA
85         bool
86         help
87           MicroChannel Architecture is found in some IBM PS/2 machines and
88           laptops.  It is a bus system similar to PCI or ISA. See
89           <file:Documentation/mca.txt> (and especially the web page given
90           there) before attempting to build an MCA bus kernel.
91
92 config PCMCIA
93         tristate
94         ---help---
95           Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
96           computer.  These are credit-card size devices such as network cards,
97           modems or hard drives often used with laptops computers.  There are
98           actually two varieties of these cards: the older 16 bit PCMCIA cards
99           and the newer 32 bit CardBus cards.  If you want to use CardBus
100           cards, you need to say Y here and also to "CardBus support" below.
101
102           To use your PC-cards, you will need supporting software from David
103           Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
104           for location).  Please also read the PCMCIA-HOWTO, available from
105           <http://www.tldp.org/docs.html#howto>.
106
107           To compile this driver as modules, choose M here: the
108           modules will be called pcmcia_core and ds.
109
110 config AMIGA
111         bool "Amiga support"
112         select MMU_MOTOROLA if MMU
113         help
114           This option enables support for the Amiga series of computers. If
115           you plan to use this kernel on an Amiga, say Y here and browse the
116           material available in <file:Documentation/m68k>; otherwise say N.
117
118 config ATARI
119         bool "Atari support"
120         select MMU_MOTOROLA if MMU
121         help
122           This option enables support for the 68000-based Atari series of
123           computers (including the TT, Falcon and Medusa). If you plan to use
124           this kernel on an Atari, say Y here and browse the material
125           available in <file:Documentation/m68k>; otherwise say N.
126
127 config MAC
128         bool "Macintosh support"
129         select MMU_MOTOROLA if MMU
130         help
131           This option enables support for the Apple Macintosh series of
132           computers (yes, there is experimental support now, at least for part
133           of the series).
134
135           Say N unless you're willing to code the remaining necessary support.
136           ;)
137
138 config NUBUS
139         bool
140         depends on MAC
141         default y
142
143 config M68K_L2_CACHE
144         bool
145         depends on MAC
146         default y
147
148 config APOLLO
149         bool "Apollo support"
150         select MMU_MOTOROLA if MMU
151         help
152           Say Y here if you want to run Linux on an MC680x0-based Apollo
153           Domain workstation such as the DN3500.
154
155 config VME
156         bool "VME (Motorola and BVM) support"
157         select MMU_MOTOROLA if MMU
158         help
159           Say Y here if you want to build a kernel for a 680x0 based VME
160           board.  Boards currently supported include Motorola boards MVME147,
161           MVME162, MVME166, MVME167, MVME172, and MVME177.  BVME4000 and
162           BVME6000 boards from BVM Ltd are also supported.
163
164 config MVME147
165         bool "MVME147 support"
166         depends on VME
167         help
168           Say Y to include support for early Motorola VME boards.  This will
169           build a kernel which can run on MVME147 single-board computers.  If
170           you select this option you will have to select the appropriate
171           drivers for SCSI, Ethernet and serial ports later on.
172
173 config MVME16x
174         bool "MVME162, 166 and 167 support"
175         depends on VME
176         help
177           Say Y to include support for Motorola VME boards.  This will build a
178           kernel which can run on MVME162, MVME166, MVME167, MVME172, and
179           MVME177 boards.  If you select this option you will have to select
180           the appropriate drivers for SCSI, Ethernet and serial ports later
181           on.
182
183 config BVME6000
184         bool "BVME4000 and BVME6000 support"
185         depends on VME
186         help
187           Say Y to include support for VME boards from BVM Ltd.  This will
188           build a kernel which can run on BVME4000 and BVME6000 boards.  If
189           you select this option you will have to select the appropriate
190           drivers for SCSI, Ethernet and serial ports later on.
191
192 config HP300
193         bool "HP9000/300 and HP9000/400 support"
194         select MMU_MOTOROLA if MMU
195         help
196           This option enables support for the HP9000/300 and HP9000/400 series
197           of workstations. Support for these machines is still somewhat
198           experimental. If you plan to try to use the kernel on such a machine
199           say Y here.
200           Everybody else says N.
201
202 config DIO
203         bool "DIO bus support"
204         depends on HP300
205         default y
206         help
207           Say Y here to enable support for the "DIO" expansion bus used in
208           HP300 machines. If you are using such a system you almost certainly
209           want this.
210
211 config SUN3X
212         bool "Sun3x support"
213         select MMU_MOTOROLA if MMU
214         select M68030
215         help
216           This option enables support for the Sun 3x series of workstations.
217           Be warned that this support is very experimental.
218           Note that Sun 3x kernels are not compatible with Sun 3 hardware.
219           General Linux information on the Sun 3x series (now discontinued)
220           is at <http://www.angelfire.com/ca2/tech68k/sun3.html>.
221
222           If you don't want to compile a kernel for a Sun 3x, say N.
223
224 config Q40
225         bool "Q40/Q60 support"
226         select MMU_MOTOROLA if MMU
227         help
228           The Q40 is a Motorola 68040-based successor to the Sinclair QL
229           manufactured in Germany.  There is an official Q40 home page at
230           <http://www.q40.de/>.  This option enables support for the Q40 and
231           Q60. Select your CPU below.  For 68LC060 don't forget to enable FPU
232           emulation.
233
234 config SUN3
235         bool "Sun3 support"
236         depends on !MMU_MOTOROLA
237         select MMU_SUN3 if MMU
238         select M68020
239         help
240           This option enables support for the Sun 3 series of workstations
241           (3/50, 3/60, 3/1xx, 3/2xx systems). Enabling this option requires
242           that all other hardware types must be disabled, as Sun 3 kernels
243           are incompatible with all other m68k targets (including Sun 3x!).
244
245           If you don't want to compile a kernel exclusively for a Sun 3, say N.
246
247 comment "Processor type"
248
249 config M68020
250         bool "68020 support"
251         help
252           If you anticipate running this kernel on a computer with a MC68020
253           processor, say Y. Otherwise, say N. Note that the 68020 requires a
254           68851 MMU (Memory Management Unit) to run Linux/m68k, except on the
255           Sun 3, which provides its own version.
256
257 config M68030
258         bool "68030 support"
259         depends on !MMU_SUN3
260         help
261           If you anticipate running this kernel on a computer with a MC68030
262           processor, say Y. Otherwise, say N. Note that a MC68EC030 will not
263           work, as it does not include an MMU (Memory Management Unit).
264
265 config M68040
266         bool "68040 support"
267         depends on !MMU_SUN3
268         help
269           If you anticipate running this kernel on a computer with a MC68LC040
270           or MC68040 processor, say Y. Otherwise, say N. Note that an
271           MC68EC040 will not work, as it does not include an MMU (Memory
272           Management Unit).
273
274 config M68060
275         bool "68060 support"
276         depends on !MMU_SUN3
277         help
278           If you anticipate running this kernel on a computer with a MC68060
279           processor, say Y. Otherwise, say N.
280
281 config MMU_MOTOROLA
282         bool
283         depends on MMU && !MMU_SUN3
284
285 config MMU_SUN3
286         bool
287         depends on MMU && !MMU_MOTOROLA
288
289 config M68KFPU_EMU
290         bool "Math emulation support (EXPERIMENTAL)"
291         depends on EXPERIMENTAL
292         help
293           At some point in the future, this will cause floating-point math
294           instructions to be emulated by the kernel on machines that lack a
295           floating-point math coprocessor.  Thrill-seekers and chronically
296           sleep-deprived psychotic hacker types can say Y now, everyone else
297           should probably wait a while.
298
299 config M68KFPU_EMU_EXTRAPREC
300         bool "Math emulation extra precision"
301         depends on M68KFPU_EMU
302         help
303           The fpu uses normally a few bit more during calculations for
304           correct rounding, the emulator can (often) do the same but this
305           extra calculation can cost quite some time, so you can disable
306           it here. The emulator will then "only" calculate with a 64 bit
307           mantissa and round slightly incorrect, what is more then enough
308           for normal usage.
309
310 config M68KFPU_EMU_ONLY
311         bool "Math emulation only kernel"
312         depends on M68KFPU_EMU
313         help
314           This option prevents any floating-point instructions from being
315           compiled into the kernel, thereby the kernel doesn't save any
316           floating point context anymore during task switches, so this
317           kernel will only be usable on machines without a floating-point
318           math coprocessor. This makes the kernel a bit faster as no tests
319           needs to be executed whether a floating-point instruction in the
320           kernel should be executed or not.
321
322 config ADVANCED
323         bool "Advanced configuration options"
324         ---help---
325           This gives you access to some advanced options for the CPU. The
326           defaults should be fine for most users, but these options may make
327           it possible for you to improve performance somewhat if you know what
328           you are doing.
329
330           Note that the answer to this question won't directly affect the
331           kernel: saying N will just cause the configurator to skip all
332           the questions about these options.
333
334           Most users should say N to this question.
335
336 config RMW_INSNS
337         bool "Use read-modify-write instructions"
338         depends on ADVANCED
339         ---help---
340           This allows to use certain instructions that work with indivisible
341           read-modify-write bus cycles. While this is faster than the
342           workaround of disabling interrupts, it can conflict with DMA
343           ( = direct memory access) on many Amiga systems, and it is also said
344           to destabilize other machines. It is very likely that this will
345           cause serious problems on any Amiga or Atari Medusa if set. The only
346           configuration where it should work are 68030-based Ataris, where it
347           apparently improves performance. But you've been warned! Unless you
348           really know what you are doing, say N. Try Y only if you're quite
349           adventurous.
350
351 config SINGLE_MEMORY_CHUNK
352         bool "Use one physical chunk of memory only" if ADVANCED && !SUN3
353         default y if SUN3
354         select NEED_MULTIPLE_NODES
355         help
356           Ignore all but the first contiguous chunk of physical memory for VM
357           purposes.  This will save a few bytes kernel size and may speed up
358           some operations.  Say N if not sure.
359
360 config 060_WRITETHROUGH
361         bool "Use write-through caching for 68060 supervisor accesses"
362         depends on ADVANCED && M68060
363         ---help---
364           The 68060 generally uses copyback caching of recently accessed data.
365           Copyback caching means that memory writes will be held in an on-chip
366           cache and only written back to memory some time later.  Saying Y
367           here will force supervisor (kernel) accesses to use writethrough
368           caching.  Writethrough caching means that data is written to memory
369           straight away, so that cache and memory data always agree.
370           Writethrough caching is less efficient, but is needed for some
371           drivers on 68060 based systems where the 68060 bus snooping signal
372           is hardwired on.  The 53c710 SCSI driver is known to suffer from
373           this problem.
374
375 config ARCH_DISCONTIGMEM_ENABLE
376         def_bool !SINGLE_MEMORY_CHUNK
377
378 config NODES_SHIFT
379         int
380         default "3"
381         depends on !SINGLE_MEMORY_CHUNK
382
383 source "mm/Kconfig"
384
385 endmenu
386
387 menu "General setup"
388
389 source "fs/Kconfig.binfmt"
390
391 config ZORRO
392         bool "Amiga Zorro (AutoConfig) bus support"
393         depends on AMIGA
394         help
395           This enables support for the Zorro bus in the Amiga. If you have
396           expansion cards in your Amiga that conform to the Amiga
397           AutoConfig(tm) specification, say Y, otherwise N. Note that even
398           expansion cards that do not fit in the Zorro slots but fit in e.g.
399           the CPU slot may fall in this category, so you have to say Y to let
400           Linux use these.
401
402 config AMIGA_PCMCIA
403         bool "Amiga 1200/600 PCMCIA support (EXPERIMENTAL)"
404         depends on AMIGA && EXPERIMENTAL
405         help
406           Include support in the kernel for pcmcia on Amiga 1200 and Amiga
407           600. If you intend to use pcmcia cards say Y; otherwise say N.
408
409 config STRAM_PROC
410         bool "ST-RAM statistics in /proc"
411         depends on ATARI
412         help
413           Say Y here to report ST-RAM usage statistics in /proc/stram.
414
415 config HEARTBEAT
416         bool "Use power LED as a heartbeat" if AMIGA || APOLLO || ATARI || MAC ||Q40
417         default y if !AMIGA && !APOLLO && !ATARI && !MAC && !Q40 && HP300
418         help
419           Use the power-on LED on your machine as a load meter.  The exact
420           behavior is platform-dependent, but normally the flash frequency is
421           a hyperbolic function of the 5-minute load average.
422
423 # We have a dedicated heartbeat LED. :-)
424 config PROC_HARDWARE
425         bool "/proc/hardware support"
426         help
427           Say Y here to support the /proc/hardware file, which gives you
428           access to information about the machine you're running on,
429           including the model, CPU, MMU, clock speed, BogoMIPS rating,
430           and memory size.
431
432 config ISA
433         bool
434         depends on Q40 || AMIGA_PCMCIA || GG2
435         default y
436         help
437           Find out whether you have ISA slots on your motherboard.  ISA is the
438           name of a bus system, i.e. the way the CPU talks to the other stuff
439           inside your box.  Other bus systems are PCI, EISA, MicroChannel
440           (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
441           newer boards don't support it.  If you have ISA, say Y, otherwise N.
442
443 config GENERIC_ISA_DMA
444         bool
445         depends on Q40 || AMIGA_PCMCIA || GG2
446         default y
447
448 config ZONE_DMA
449         bool
450         default y
451
452 source "drivers/pci/Kconfig"
453
454 source "drivers/zorro/Kconfig"
455
456 endmenu
457
458 source "net/Kconfig"
459
460 source "drivers/Kconfig"
461
462 menu "Character devices"
463
464 config ATARI_MFPSER
465         tristate "Atari MFP serial support"
466         depends on ATARI
467         ---help---
468           If you like to use the MFP serial ports ("Modem1", "Serial1") under
469           Linux, say Y. The driver equally supports all kinds of MFP serial
470           ports and automatically detects whether Serial1 is available.
471
472           To compile this driver as a module, choose M here.
473
474           Note for Falcon users: You also have an MFP port, it's just not
475           wired to the outside... But you could use the port under Linux.
476
477 config ATARI_MIDI
478         tristate "Atari MIDI serial support"
479         depends on ATARI
480         help
481           If you want to use your Atari's MIDI port in Linux, say Y.
482
483           To compile this driver as a module, choose M here.
484
485 config ATARI_DSP56K
486         tristate "Atari DSP56k support (EXPERIMENTAL)"
487         depends on ATARI && EXPERIMENTAL
488         help
489           If you want to be able to use the DSP56001 in Falcons, say Y. This
490           driver is still experimental, and if you don't know what it is, or
491           if you don't have this processor, just say N.
492
493           To compile this driver as a module, choose M here.
494
495 config AMIGA_BUILTIN_SERIAL
496         tristate "Amiga builtin serial support"
497         depends on AMIGA
498         help
499           If you want to use your Amiga's built-in serial port in Linux,
500           answer Y.
501
502           To compile this driver as a module, choose M here.
503
504 config MULTIFACE_III_TTY
505         tristate "Multiface Card III serial support"
506         depends on AMIGA
507         help
508           If you want to use a Multiface III card's serial port in Linux,
509           answer Y.
510
511           To compile this driver as a module, choose M here.
512
513 config GVPIOEXT
514         tristate "GVP IO-Extender support"
515         depends on PARPORT=n && ZORRO
516         help
517           If you want to use a GVP IO-Extender serial card in Linux, say Y.
518           Otherwise, say N.
519
520 config GVPIOEXT_LP
521         tristate "GVP IO-Extender parallel printer support"
522         depends on GVPIOEXT
523         help
524           Say Y to enable driving a printer from the parallel port on your
525           GVP IO-Extender card, N otherwise.
526
527 config GVPIOEXT_PLIP
528         tristate "GVP IO-Extender PLIP support"
529         depends on GVPIOEXT
530         help
531           Say Y to enable doing IP over the parallel port on your GVP
532           IO-Extender card, N otherwise.
533
534 config MAC_SCC
535         tristate "Macintosh serial support"
536         depends on MAC
537
538 config MAC_HID
539         bool
540         depends on INPUT_ADBHID
541         default y
542
543 config HPDCA
544         tristate "HP DCA serial support"
545         depends on DIO && SERIAL_8250
546         help
547           If you want to use the internal "DCA" serial ports on an HP300
548           machine, say Y here.
549
550 config HPAPCI
551         tristate "HP APCI serial support"
552         depends on HP300 && SERIAL_8250 && EXPERIMENTAL
553         help
554           If you want to use the internal "APCI" serial ports on an HP400
555           machine, say Y here.
556
557 config MVME147_SCC
558         bool "SCC support for MVME147 serial ports"
559         depends on MVME147
560         help
561           This is the driver for the serial ports on the Motorola MVME147
562           boards.  Everyone using one of these boards should say Y here.
563
564 config SERIAL167
565         bool "CD2401 support for MVME166/7 serial ports"
566         depends on MVME16x
567         help
568           This is the driver for the serial ports on the Motorola MVME166,
569           167, and 172 boards.  Everyone using one of these boards should say
570           Y here.
571
572 config MVME162_SCC
573         bool "SCC support for MVME162 serial ports"
574         depends on MVME16x
575         help
576           This is the driver for the serial ports on the Motorola MVME162 and
577           172 boards.  Everyone using one of these boards should say Y here.
578
579 config BVME6000_SCC
580         bool "SCC support for BVME6000 serial ports"
581         depends on BVME6000
582         help
583           This is the driver for the serial ports on the BVME4000 and BVME6000
584           boards from BVM Ltd.  Everyone using one of these boards should say
585           Y here.
586
587 config DN_SERIAL
588         bool "Support for DN serial port (dummy)"
589         depends on APOLLO
590
591 config SERIAL_CONSOLE
592         bool "Support for serial port console"
593         depends on (AMIGA || ATARI || MAC || SUN3 || SUN3X || VME || APOLLO) && (ATARI_MFPSER=y || ATARI_MIDI=y || MAC_SCC=y || AMIGA_BUILTIN_SERIAL=y || GVPIOEXT=y || MULTIFACE_III_TTY=y || SERIAL=y || MVME147_SCC || SERIAL167 || MVME162_SCC || BVME6000_SCC || DN_SERIAL)
594         ---help---
595           If you say Y here, it will be possible to use a serial port as the
596           system console (the system console is the device which receives all
597           kernel messages and warnings and which allows logins in single user
598           mode). This could be useful if some terminal or printer is connected
599           to that serial port.
600
601           Even if you say Y here, the currently visible virtual console
602           (/dev/tty0) will still be used as the system console by default, but
603           you can alter that using a kernel command line option such as
604           "console=ttyS1". (Try "man bootparam" or see the documentation of
605           your boot loader (lilo or loadlin) about how to pass options to the
606           kernel at boot time.)
607
608           If you don't have a VGA card installed and you say Y here, the
609           kernel will automatically use the first serial line, /dev/ttyS0, as
610           system console.
611
612           If unsure, say N.
613
614 endmenu
615
616 source "fs/Kconfig"
617
618 source "arch/m68k/Kconfig.debug"
619
620 source "security/Kconfig"
621
622 source "crypto/Kconfig"
623
624 source "lib/Kconfig"