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