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