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