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