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