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