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