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