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