Merge branch 'for-linus' of ssh://master.kernel.org/pub/scm/linux/kernel/git/ieee1394...
[pandora-kernel.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 ARCH_MAY_HAVE_PC_FDC
41         bool
42         depends on Q40 || (BROKEN && SUN3X)
43         default y
44
45 config NO_IOPORT
46         def_bool y
47
48 mainmenu "Linux/68k Kernel Configuration"
49
50 source "init/Kconfig"
51
52 menu "Platform dependent setup"
53
54 config EISA
55         bool
56         ---help---
57           The Extended Industry Standard Architecture (EISA) bus was
58           developed as an open alternative to the IBM MicroChannel bus.
59
60           The EISA bus provided some of the features of the IBM MicroChannel
61           bus while maintaining backward compatibility with cards made for
62           the older ISA bus.  The EISA bus saw limited use between 1988 and
63           1995 when it was made obsolete by the PCI bus.
64
65           Say Y here if you are building a kernel for an EISA-based machine.
66
67           Otherwise, say N.
68
69 config MCA
70         bool
71         help
72           MicroChannel Architecture is found in some IBM PS/2 machines and
73           laptops.  It is a bus system similar to PCI or ISA. See
74           <file:Documentation/mca.txt> (and especially the web page given
75           there) before attempting to build an MCA bus kernel.
76
77 config PCMCIA
78         tristate
79         ---help---
80           Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
81           computer.  These are credit-card size devices such as network cards,
82           modems or hard drives often used with laptops computers.  There are
83           actually two varieties of these cards: the older 16 bit PCMCIA cards
84           and the newer 32 bit CardBus cards.  If you want to use CardBus
85           cards, you need to say Y here and also to "CardBus support" below.
86
87           To use your PC-cards, you will need supporting software from David
88           Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
89           for location).  Please also read the PCMCIA-HOWTO, available from
90           <http://www.tldp.org/docs.html#howto>.
91
92           To compile this driver as modules, choose M here: the
93           modules will be called pcmcia_core and ds.
94
95 config SUN3
96         bool "Sun3 support"
97         select M68020
98         select MMU_SUN3 if MMU
99         help
100           This option enables support for the Sun 3 series of workstations
101           (3/50, 3/60, 3/1xx, 3/2xx systems). Enabling this option requires
102           that all other hardware types must be disabled, as Sun 3 kernels
103           are incompatible with all other m68k targets (including Sun 3x!).
104
105           If you don't want to compile a kernel exclusively for a Sun 3, say N.
106
107 config AMIGA
108         bool "Amiga support"
109         depends on !MMU_SUN3
110         help
111           This option enables support for the Amiga series of computers. If
112           you plan to use this kernel on an Amiga, say Y here and browse the
113           material available in <file:Documentation/m68k>; otherwise say N.
114
115 config ATARI
116         bool "Atari support"
117         depends on !MMU_SUN3
118         help
119           This option enables support for the 68000-based Atari series of
120           computers (including the TT, Falcon and Medusa). If you plan to use
121           this kernel on an Atari, say Y here and browse the material
122           available in <file:Documentation/m68k>; otherwise say N.
123
124 config HADES
125         bool "Hades support"
126         depends on ATARI && BROKEN
127         help
128           This option enables support for the Hades Atari clone. If you plan
129           to use this kernel on a Hades, say Y here; otherwise say N.
130
131 config PCI
132         bool
133         depends on HADES
134         default y
135         help
136           Find out whether you have a PCI motherboard. PCI is the name of a
137           bus system, i.e. the way the CPU talks to the other stuff inside
138           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
139           VESA. If you have PCI, say Y, otherwise N.
140
141           The PCI-HOWTO, available from
142           <http://www.tldp.org/docs.html#howto>, contains valuable
143           information about which PCI hardware does work under Linux and which
144           doesn't.
145
146 config MAC
147         bool "Macintosh support"
148         depends on !MMU_SUN3
149         help
150           This option enables support for the Apple Macintosh series of
151           computers (yes, there is experimental support now, at least for part
152           of the series).
153
154           Say N unless you're willing to code the remaining necessary support.
155           ;)
156
157 config NUBUS
158         bool
159         depends on MAC
160         default y
161
162 config M68K_L2_CACHE
163         bool
164         depends on MAC
165         default y
166
167 config APOLLO
168         bool "Apollo support"
169         depends on !MMU_SUN3
170         help
171           Say Y here if you want to run Linux on an MC680x0-based Apollo
172           Domain workstation such as the DN3500.
173
174 config VME
175         bool "VME (Motorola and BVM) support"
176         depends on !MMU_SUN3
177         help
178           Say Y here if you want to build a kernel for a 680x0 based VME
179           board.  Boards currently supported include Motorola boards MVME147,
180           MVME162, MVME166, MVME167, MVME172, and MVME177.  BVME4000 and
181           BVME6000 boards from BVM Ltd are also supported.
182
183 config MVME147
184         bool "MVME147 support"
185         depends on VME
186         help
187           Say Y to include support for early Motorola VME boards.  This will
188           build a kernel which can run on MVME147 single-board computers.  If
189           you select this option you will have to select the appropriate
190           drivers for SCSI, Ethernet and serial ports later on.
191
192 config MVME16x
193         bool "MVME162, 166 and 167 support"
194         depends on VME
195         help
196           Say Y to include support for Motorola VME boards.  This will build a
197           kernel which can run on MVME162, MVME166, MVME167, MVME172, and
198           MVME177 boards.  If you select this option you will have to select
199           the appropriate drivers for SCSI, Ethernet and serial ports later
200           on.
201
202 config BVME6000
203         bool "BVME4000 and BVME6000 support"
204         depends on VME
205         help
206           Say Y to include support for VME boards from BVM Ltd.  This will
207           build a kernel which can run on BVME4000 and BVME6000 boards.  If
208           you select this option you will have to select the appropriate
209           drivers for SCSI, Ethernet and serial ports later on.
210
211 config HP300
212         bool "HP9000/300 and HP9000/400 support"
213         depends on !MMU_SUN3
214         help
215           This option enables support for the HP9000/300 and HP9000/400 series
216           of workstations. Support for these machines is still somewhat
217           experimental. If you plan to try to use the kernel on such a machine
218           say Y here.
219           Everybody else says N.
220
221 config DIO
222         bool "DIO bus support"
223         depends on HP300
224         default y
225         help
226           Say Y here to enable support for the "DIO" expansion bus used in
227           HP300 machines. If you are using such a system you almost certainly
228           want this.
229
230 config SUN3X
231         bool "Sun3x support"
232         depends on !MMU_SUN3
233         select M68030
234         help
235           This option enables support for the Sun 3x series of workstations.
236           Be warned that this support is very experimental.
237           Note that Sun 3x kernels are not compatible with Sun 3 hardware.
238           General Linux information on the Sun 3x series (now discontinued)
239           is at <http://www.angelfire.com/ca2/tech68k/sun3.html>.
240
241           If you don't want to compile a kernel for a Sun 3x, say N.
242
243 config Q40
244         bool "Q40/Q60 support"
245         depends on !MMU_SUN3
246         help
247           The Q40 is a Motorola 68040-based successor to the Sinclair QL
248           manufactured in Germany.  There is an official Q40 home page at
249           <http://www.q40.de/>.  This option enables support for the Q40 and
250           Q60. Select your CPU below.  For 68LC060 don't forget to enable FPU
251           emulation.
252
253 comment "Processor type"
254
255 config M68020
256         bool "68020 support"
257         help
258           If you anticipate running this kernel on a computer with a MC68020
259           processor, say Y. Otherwise, say N. Note that the 68020 requires a
260           68851 MMU (Memory Management Unit) to run Linux/m68k, except on the
261           Sun 3, which provides its own version.
262
263 config M68030
264         bool "68030 support"
265         depends on !MMU_SUN3
266         help
267           If you anticipate running this kernel on a computer with a MC68030
268           processor, say Y. Otherwise, say N. Note that a MC68EC030 will not
269           work, as it does not include an MMU (Memory Management Unit).
270
271 config M68040
272         bool "68040 support"
273         depends on !MMU_SUN3
274         help
275           If you anticipate running this kernel on a computer with a MC68LC040
276           or MC68040 processor, say Y. Otherwise, say N. Note that an
277           MC68EC040 will not work, as it does not include an MMU (Memory
278           Management Unit).
279
280 config M68060
281         bool "68060 support"
282         depends on !MMU_SUN3
283         help
284           If you anticipate running this kernel on a computer with a MC68060
285           processor, say Y. Otherwise, say N.
286
287 config MMU_MOTOROLA
288         bool
289         depends on MMU && !MMU_SUN3
290         default y
291
292 config MMU_SUN3
293         bool
294
295 config M68KFPU_EMU
296         bool "Math emulation support (EXPERIMENTAL)"
297         depends on EXPERIMENTAL
298         help
299           At some point in the future, this will cause floating-point math
300           instructions to be emulated by the kernel on machines that lack a
301           floating-point math coprocessor.  Thrill-seekers and chronically
302           sleep-deprived psychotic hacker types can say Y now, everyone else
303           should probably wait a while.
304
305 config M68KFPU_EMU_EXTRAPREC
306         bool "Math emulation extra precision"
307         depends on M68KFPU_EMU
308         help
309           The fpu uses normally a few bit more during calculations for
310           correct rounding, the emulator can (often) do the same but this
311           extra calculation can cost quite some time, so you can disable
312           it here. The emulator will then "only" calculate with a 64 bit
313           mantissa and round slightly incorrect, what is more then enough
314           for normal usage.
315
316 config M68KFPU_EMU_ONLY
317         bool "Math emulation only kernel"
318         depends on M68KFPU_EMU
319         help
320           This option prevents any floating-point instructions from being
321           compiled into the kernel, thereby the kernel doesn't save any
322           floating point context anymore during task switches, so this
323           kernel will only be usable on machines without a floating-point
324           math coprocessor. This makes the kernel a bit faster as no tests
325           needs to be executed whether a floating-point instruction in the
326           kernel should be executed or not.
327
328 config ADVANCED
329         bool "Advanced configuration options"
330         ---help---
331           This gives you access to some advanced options for the CPU. The
332           defaults should be fine for most users, but these options may make
333           it possible for you to improve performance somewhat if you know what
334           you are doing.
335
336           Note that the answer to this question won't directly affect the
337           kernel: saying N will just cause the configurator to skip all
338           the questions about these options.
339
340           Most users should say N to this question.
341
342 config RMW_INSNS
343         bool "Use read-modify-write instructions"
344         depends on ADVANCED
345         ---help---
346           This allows to use certain instructions that work with indivisible
347           read-modify-write bus cycles. While this is faster than the
348           workaround of disabling interrupts, it can conflict with DMA
349           ( = direct memory access) on many Amiga systems, and it is also said
350           to destabilize other machines. It is very likely that this will
351           cause serious problems on any Amiga or Atari Medusa if set. The only
352           configuration where it should work are 68030-based Ataris, where it
353           apparently improves performance. But you've been warned! Unless you
354           really know what you are doing, say N. Try Y only if you're quite
355           adventurous.
356
357 config SINGLE_MEMORY_CHUNK
358         bool "Use one physical chunk of memory only"
359         depends on ADVANCED && !SUN3
360         help
361           Ignore all but the first contiguous chunk of physical memory for VM
362           purposes.  This will save a few bytes kernel size and may speed up
363           some operations.  Say N if not sure.
364
365 config 060_WRITETHROUGH
366         bool "Use write-through caching for 68060 supervisor accesses"
367         depends on ADVANCED && M68060
368         ---help---
369           The 68060 generally uses copyback caching of recently accessed data.
370           Copyback caching means that memory writes will be held in an on-chip
371           cache and only written back to memory some time later.  Saying Y
372           here will force supervisor (kernel) accesses to use writethrough
373           caching.  Writethrough caching means that data is written to memory
374           straight away, so that cache and memory data always agree.
375           Writethrough caching is less efficient, but is needed for some
376           drivers on 68060 based systems where the 68060 bus snooping signal
377           is hardwired on.  The 53c710 SCSI driver is known to suffer from
378           this problem.
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 || GG2
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 || GG2
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_SCC
475         tristate "Atari SCC serial support"
476         depends on ATARI
477         ---help---
478           If you have serial ports based on a Zilog SCC chip (Modem2, Serial2,
479           LAN) and like to use them under Linux, say Y. All built-in SCC's are
480           supported (TT, MegaSTE, Falcon), and also the ST-ESCC. If you have
481           two connectors for channel A (Serial2 and LAN), they are visible as
482           two separate devices.
483
484           To compile this driver as a module, choose M here.
485
486 config ATARI_SCC_DMA
487         bool "Atari SCC serial DMA support"
488         depends on ATARI_SCC
489         help
490           This enables DMA support for receiving data on channel A of the SCC.
491           If you have a TT you may say Y here and read
492           drivers/char/atari_SCC.README. All other users should say N here,
493           because only the TT has SCC-DMA, even if your machine keeps claiming
494           so at boot time.
495
496 config ATARI_MIDI
497         tristate "Atari MIDI serial support"
498         depends on ATARI
499         help
500           If you want to use your Atari's MIDI port in Linux, say Y.
501
502           To compile this driver as a module, choose M here.
503
504 config ATARI_DSP56K
505         tristate "Atari DSP56k support (EXPERIMENTAL)"
506         depends on ATARI && EXPERIMENTAL
507         help
508           If you want to be able to use the DSP56001 in Falcons, say Y. This
509           driver is still experimental, and if you don't know what it is, or
510           if you don't have this processor, just say N.
511
512           To compile this driver as a module, choose M here.
513
514 config AMIGA_BUILTIN_SERIAL
515         tristate "Amiga builtin serial support"
516         depends on AMIGA
517         help
518           If you want to use your Amiga's built-in serial port in Linux,
519           answer Y.
520
521           To compile this driver as a module, choose M here.
522
523 config WHIPPET_SERIAL
524         tristate "Hisoft Whippet PCMCIA serial support"
525         depends on AMIGA_PCMCIA
526         help
527           HiSoft has a web page at <http://www.hisoft.co.uk/>, but there
528           is no listing for the Whippet in their Amiga section.
529
530 config MULTIFACE_III_TTY
531         tristate "Multiface Card III serial support"
532         depends on AMIGA
533         help
534           If you want to use a Multiface III card's serial port in Linux,
535           answer Y.
536
537           To compile this driver as a module, choose M here.
538
539 config GVPIOEXT
540         tristate "GVP IO-Extender support"
541         depends on PARPORT=n && ZORRO
542         help
543           If you want to use a GVP IO-Extender serial card in Linux, say Y.
544           Otherwise, say N.
545
546 config GVPIOEXT_LP
547         tristate "GVP IO-Extender parallel printer support"
548         depends on GVPIOEXT
549         help
550           Say Y to enable driving a printer from the parallel port on your
551           GVP IO-Extender card, N otherwise.
552
553 config GVPIOEXT_PLIP
554         tristate "GVP IO-Extender PLIP support"
555         depends on GVPIOEXT
556         help
557           Say Y to enable doing IP over the parallel port on your GVP
558           IO-Extender card, N otherwise.
559
560 config MAC_SCC
561         tristate "Macintosh serial support"
562         depends on MAC
563
564 config MAC_HID
565         bool
566         depends on INPUT_ADBHID
567         default y
568
569 config MAC_ADBKEYCODES
570         bool "Support for ADB raw keycodes"
571         depends on INPUT_ADBHID
572         help
573           This provides support for sending raw ADB keycodes to console
574           devices.  This is the default up to 2.4.0, but in future this may be
575           phased out in favor of generic Linux keycodes.  If you say Y here,
576           you can dynamically switch via the
577           /proc/sys/dev/mac_hid/keyboard_sends_linux_keycodes
578           sysctl and with the "keyboard_sends_linux_keycodes=" kernel
579           argument.
580
581           If unsure, say Y here.
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"