+- add patches.fixes/linux-post-2.6.3-20040220
[linux-flexiantxendom0-3.2.10.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 UID16
14         bool
15         default y
16
17 config RWSEM_GENERIC_SPINLOCK
18         bool
19         default y
20
21 config RWSEM_XCHGADD_ALGORITHM
22         bool
23
24
25 mainmenu "Linux/68k Kernel Configuration"
26
27 source "init/Kconfig"
28
29
30 menu "Platform dependent setup"
31
32 config EISA
33         bool
34         ---help---
35           The Extended Industry Standard Architecture (EISA) bus was
36           developed as an open alternative to the IBM MicroChannel bus.
37
38           The EISA bus provided some of the features of the IBM MicroChannel
39           bus while maintaining backward compatibility with cards made for
40           the older ISA bus.  The EISA bus saw limited use between 1988 and
41           1995 when it was made obsolete by the PCI bus.
42
43           Say Y here if you are building a kernel for an EISA-based machine.
44
45           Otherwise, say N.
46
47 config MCA
48         bool
49         help
50           MicroChannel Architecture is found in some IBM PS/2 machines and
51           laptops.  It is a bus system similar to PCI or ISA. See
52           <file:Documentation/mca.txt> (and especially the web page given
53           there) before attempting to build an MCA bus kernel.
54
55 config PCMCIA
56         tristate
57         ---help---
58           Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
59           computer.  These are credit-card size devices such as network cards,
60           modems or hard drives often used with laptops computers.  There are
61           actually two varieties of these cards: the older 16 bit PCMCIA cards
62           and the newer 32 bit CardBus cards.  If you want to use CardBus
63           cards, you need to say Y here and also to "CardBus support" below.
64
65           To use your PC-cards, you will need supporting software from David
66           Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
67           for location).  Please also read the PCMCIA-HOWTO, available from
68           <http://www.tldp.org/docs.html#howto>.
69
70           To compile this driver as modules, choose M here: the
71           modules will be called pcmcia_core and ds.
72
73 config AMIGA
74         bool "Amiga support"
75         help
76           This option enables support for the Amiga series of computers. If
77           you plan to use this kernel on an Amiga, say Y here and browse the
78           material available in <file:Documentation/m68k>; otherwise say N.
79
80 config ATARI
81         bool "Atari support"
82         help
83           This option enables support for the 68000-based Atari series of
84           computers (including the TT, Falcon and Medusa). If you plan to use
85           this kernel on an Atari, say Y here and browse the material
86           available in <file:Documentation/m68k>; otherwise say N.
87
88 config HADES
89         bool "Hades support"
90         depends on ATARI && BROKEN
91         help
92           This option enables support for the Hades Atari clone. If you plan
93           to use this kernel on a Hades, say Y here; otherwise say N.
94
95 config PCI
96         bool
97         depends on HADES
98         default y
99         help
100           Find out whether you have a PCI motherboard. PCI is the name of a
101           bus system, i.e. the way the CPU talks to the other stuff inside
102           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
103           VESA. If you have PCI, say Y, otherwise N.
104
105           The PCI-HOWTO, available from
106           <http://www.tldp.org/docs.html#howto>, contains valuable
107           information about which PCI hardware does work under Linux and which
108           doesn't.
109
110 config MAC
111         bool "Macintosh support"
112         help
113           This option enables support for the Apple Macintosh series of
114           computers (yes, there is experimental support now, at least for part
115           of the series).
116
117           Say N unless you're willing to code the remaining necessary support.
118           ;)
119
120 config NUBUS
121         bool
122         depends on MAC
123         default y
124
125 config M68K_L2_CACHE
126         bool
127         depends on MAC
128         default y
129
130 config APOLLO
131         bool "Apollo support"
132         help
133           Say Y here if you want to run Linux on an MC680x0-based Apollo
134           Domain workstation such as the DN3500.
135
136 config VME
137         bool "VME (Motorola and BVM) support"
138         help
139           Say Y here if you want to build a kernel for a 680x0 based VME
140           board.  Boards currently supported include Motorola boards MVME147,
141           MVME162, MVME166, MVME167, MVME172, and MVME177.  BVME4000 and
142           BVME6000 boards from BVM Ltd are also supported.
143
144 config MVME147
145         bool "MVME147 support"
146         depends on VME
147         help
148           Say Y to include support for early Motorola VME boards.  This will
149           build a kernel which can run on MVME147 single-board computers.  If
150           you select this option you will have to select the appropriate
151           drivers for SCSI, Ethernet and serial ports later on.
152
153 config MVME16x
154         bool "MVME162, 166 and 167 support"
155         depends on VME
156         help
157           Say Y to include support for Motorola VME boards.  This will build a
158           kernel which can run on MVME162, MVME166, MVME167, MVME172, and
159           MVME177 boards.  If you select this option you will have to select
160           the appropriate drivers for SCSI, Ethernet and serial ports later
161           on.
162
163 config BVME6000
164         bool "BVME4000 and BVME6000 support"
165         depends on VME
166         help
167           Say Y to include support for VME boards from BVM Ltd.  This will
168           build a kernel which can run on BVME4000 and BVME6000 boards.  If
169           you select this option you will have to select the appropriate
170           drivers for SCSI, Ethernet and serial ports later on.
171
172 config HP300
173         bool "HP9000/300 support"
174         help
175           This option enables support for the HP9000/300 series of
176           workstations. Support for these machines is still very experimental.
177           If you plan to try to use the kernel on such a machine say Y here.
178           Everybody else says N.
179
180 config DIO
181         bool "DIO bus support"
182         depends on HP300
183         help
184           Say Y here to enable support for the "DIO" expansion bus used in
185           HP300 machines. If you are using such a system you almost certainly
186           want this.
187
188 config SUN3X
189         bool "Sun3x support"
190         help
191           This option enables support for the Sun 3x series of workstations.
192           Be warned that this support is very experimental. You will also want
193           to say Y to 68030 support and N to the other processors below.
194           Note that Sun 3x kernels are not compatible with Sun 3 hardware.
195           General Linux information on the Sun 3x series (now discontinued)
196           is at <http://www.angelfire.com/ca2/tech68k/sun3.html>.
197
198           If you don't want to compile a kernel for a Sun 3x, say N.
199
200 config SUN3
201         bool "Sun3 support"
202         help
203           This option enables support for the Sun 3 series of workstations
204           (3/50, 3/60, 3/1xx, 3/2xx systems). Enabling this option requires 
205           that all other hardware types must be disabled, as Sun 3 kernels 
206           are incompatible with all other m68k targets (including Sun 3x!).  
207           Also, you will want to say Y to 68020 support and N to the other 
208           processors below.
209
210           If you don't want to compile a kernel exclusively for a Sun 3, say N.
211
212 config Q40
213         bool "Q40/Q60 support"
214         help
215           The Q40 is a Motorola 68040-based successor to the Sinclair QL
216           manufactured in Germany.  There is an official Q40 home page at
217           <http://www.q40.de/>.  This option enables support for the Q40 and
218           Q60. Select your CPU below.  For 68LC060 don't forget to enable FPU
219           emulation.
220
221 comment "Processor type"
222
223 config M68020
224         bool "68020 support"
225         help
226           If you anticipate running this kernel on a computer with a MC68020
227           processor, say Y. Otherwise, say N. Note that the 68020 requires a
228           68851 MMU (Memory Management Unit) to run Linux/m68k, except on the
229           Sun 3, which provides its own version.
230
231 config M68030
232         bool "68030 support"
233         help
234           If you anticipate running this kernel on a computer with a MC68030
235           processor, say Y. Otherwise, say N. Note that a MC68EC030 will not
236           work, as it does not include an MMU (Memory Management Unit).
237
238 config M68040
239         bool "68040 support"
240         help
241           If you anticipate running this kernel on a computer with a MC68LC040
242           or MC68040 processor, say Y. Otherwise, say N. Note that an
243           MC68EC040 will not work, as it does not include an MMU (Memory
244           Management Unit).
245
246 config M68060
247         bool "68060 support"
248         help
249           If you anticipate running this kernel on a computer with a MC68060
250           processor, say Y. Otherwise, say N.
251
252 config M68KFPU_EMU
253         bool "Math emulation support (EXPERIMENTAL)"
254         depends on EXPERIMENTAL
255         help
256           At some point in the future, this will cause floating-point math
257           instructions to be emulated by the kernel on machines that lack a
258           floating-point math coprocessor.  Thrill-seekers and chronically
259           sleep-deprived psychotic hacker types can say Y now, everyone else
260           should probably wait a while.
261
262 config M68KFPU_EMU_EXTRAPREC
263         bool "Math emulation extra precision"
264         depends on M68KFPU_EMU
265         help
266           The fpu uses normally a few bit more during calculations for
267           correct rounding, the emulator can (often) do the same but this
268           extra calculation can cost quite some time, so you can disable
269           it here. The emulator will then "only" calculate with a 64 bit
270           mantissa and round slightly incorrect, what is more then enough
271           for normal usage.
272
273 config M68KFPU_EMU_ONLY
274         bool "Math emulation only kernel"
275         depends on M68KFPU_EMU
276         help
277           This option prevents any floating-point instructions from being
278           compiled into the kernel, thereby the kernel doesn't save any
279           floating point context anymore during task switches, so this
280           kernel will only be usable on machines without a floating-point
281           math coprocessor. This makes the kernel a bit faster as no tests
282           needs to be executed whether a floating-point instruction in the
283           kernel should be executed or not.
284
285 config ADVANCED
286         bool "Advanced configuration options"
287         ---help---
288           This gives you access to some advanced options for the CPU. The
289           defaults should be fine for most users, but these options may make
290           it possible for you to improve performance somewhat if you know what
291           you are doing.
292
293           Note that the answer to this question won't directly affect the
294           kernel: saying N will just cause the configurator to skip all
295           the questions about these options.
296
297           Most users should say N to this question.
298
299 config RMW_INSNS
300         bool "Use read-modify-write instructions"
301         depends on ADVANCED
302         ---help---
303           This allows to use certain instructions that work with indivisible
304           read-modify-write bus cycles. While this is faster than the
305           workaround of disabling interrupts, it can conflict with DMA
306           ( = direct memory access) on many Amiga systems, and it is also said
307           to destabilize other machines. It is very likely that this will
308           cause serious problems on any Amiga or Atari Medusa if set. The only
309           configuration where it should work are 68030-based Ataris, where it
310           apparently improves performance. But you've been warned! Unless you
311           really know what you are doing, say N. Try Y only if you're quite
312           adventurous.
313
314 config SINGLE_MEMORY_CHUNK
315         bool "Use one physical chunk of memory only"
316         depends on ADVANCED && !SUN3
317         help
318           Ignore all but the first contiguous chunk of physical memory for VM
319           purposes.  This will save a few bytes kernel size and may speed up
320           some operations.  Say N if not sure.
321
322 config 060_WRITETHROUGH
323         bool "Use write-through caching for 68060 supervisor accesses"
324         depends on ADVANCED && M68060
325         ---help---
326           The 68060 generally uses copyback caching of recently accessed data.
327           Copyback caching means that memory writes will be held in an on-chip
328           cache and only written back to memory some time later.  Saying Y
329           here will force supervisor (kernel) accesses to use writethrough
330           caching.  Writethrough caching means that data is written to memory
331           straight away, so that cache and memory data always agree.
332           Writethrough caching is less efficient, but is needed for some
333           drivers on 68060 based systems where the 68060 bus snooping signal
334           is hardwired on.  The 53c710 SCSI driver is known to suffer from
335           this problem.
336
337 endmenu
338
339
340 menu "General setup"
341
342 source "fs/Kconfig.binfmt"
343
344 config ZORRO
345         bool "Amiga Zorro (AutoConfig) bus support"
346         depends on AMIGA
347         help
348           This enables support for the Zorro bus in the Amiga. If you have
349           expansion cards in your Amiga that conform to the Amiga
350           AutoConfig(tm) specification, say Y, otherwise N. Note that even
351           expansion cards that do not fit in the Zorro slots but fit in e.g.
352           the CPU slot may fall in this category, so you have to say Y to let
353           Linux use these.
354
355 config AMIGA_PCMCIA
356         bool "Amiga 1200/600 PCMCIA support (EXPERIMENTAL)"
357         depends on AMIGA && EXPERIMENTAL
358         help
359           Include support in the kernel for pcmcia on Amiga 1200 and Amiga
360           600. If you intend to use pcmcia cards say Y; otherwise say N.
361
362 config STRAM_SWAP
363         bool "Support for ST-RAM as swap space"
364         depends on ATARI && BROKEN
365         ---help---
366           Some Atari 68k macines (including the 520STF and 1020STE) divide
367           their addressible memory into ST and TT sections.  The TT section
368           (up to 512MB) is the main memory; the ST section (up to 4MB) is
369           accessible to the built-in graphics board, runs slower, and is
370           present mainly for backward compatibility with older machines.
371
372           This enables support for using (parts of) ST-RAM as swap space,
373           instead of as normal system memory. This can first enhance system
374           performance if you have lots of alternate RAM (compared to the size
375           of ST-RAM), because executable code always will reside in faster
376           memory. ST-RAM will remain as ultra-fast swap space. On the other
377           hand, it allows much improved dynamic allocations of ST-RAM buffers
378           for device driver modules (e.g. floppy, ACSI, SLM printer, DMA
379           sound). The probability that such allocations at module load time
380           fail is drastically reduced.
381
382 config STRAM_PROC
383         bool "ST-RAM statistics in /proc"
384         depends on ATARI
385         help
386           Say Y here to report ST-RAM usage statistics in /proc/stram.  See
387           the help for CONFIG_STRAM_SWAP for discussion of ST-RAM and its
388           uses.
389
390 config HEARTBEAT
391         bool "Use power LED as a heartbeat" if AMIGA || APOLLO || ATARI || MAC ||Q40
392         default y if !AMIGA && !APOLLO && !ATARI && !MAC && !Q40 && HP300
393         help
394           Use the power-on LED on your machine as a load meter.  The exact
395           behavior is platform-dependent, but normally the flash frequency is
396           a hyperbolic function of the 5-minute load average.
397
398 # We have a dedicated heartbeat LED. :-)
399 config PROC_HARDWARE
400         bool "/proc/hardware support"
401         help
402           Say Y here to support the /proc/hardware file, which gives you
403           access to information about the machine you're running on,
404           including the model, CPU, MMU, clock speed, BogoMIPS rating,
405           and memory size.
406
407 config PARPORT
408         tristate "Parallel port support (EXPERIMENTAL)"
409         depends on EXPERIMENTAL
410         ---help---
411           If you want to use devices connected to your machine's parallel port
412           (the connector at the computer with 25 holes), e.g. printer, ZIP
413           drive, PLIP link (Parallel Line Internet Protocol is mainly used to
414           create a mini network by connecting the parallel ports of two local
415           machines) etc., then you need to say Y here; please read
416           <file:Documentation/parport.txt> and
417           <file:drivers/parport/BUGS-parport>.
418
419           For extensive information about drivers for many devices attaching
420           to the parallel port see <http://www.torque.net/linux-pp.html> on
421           the WWW.
422
423           It is possible to share a single parallel port among several devices
424           and it is safe to compile all the corresponding drivers into the
425           kernel. To compile parallel port support as a module, choose M here:
426           the module will be called parport.
427           If you have more than one parallel port and want to specify which
428           port and IRQ to be used by this driver at module load time, take a
429           look at <file:Documentation/parport.txt>.
430
431           If unsure, say Y.
432
433 config PARPORT_AMIGA
434         tristate "Amiga builtin port"
435         depends on AMIGA && PARPORT
436         help
437           Say Y here if you need support for the parallel port hardware on
438           Amiga machines. This code is also available as a module (say M),
439           called parport_amiga. If in doubt, saying N is the safe plan.
440
441 config PARPORT_MFC3
442         tristate "Multiface III parallel port"
443         depends on ZORRO && PARPORT
444         help
445           Say Y here if you need parallel port support for the MFC3 card.
446           This code is also available as a module (say M), called
447           parport_mfc3. If in doubt, saying N is the safe plan.
448
449 config PARPORT_PC
450         bool
451         depends on Q40 && PARPORT
452         default y
453         ---help---
454           You should say Y here if you have a PC-style parallel port. All IBM
455           PC compatible computers and some Alphas have PC-style parallel
456           ports.
457
458           To compile this driver as a module, choose M here: the
459           module will be called parport_pc.
460
461           If unsure, say Y.
462
463 config PARPORT_ATARI
464         tristate "Atari builtin port"
465         depends on ATARI && PARPORT
466         help
467           Say Y here if you need support for the parallel port hardware on
468           Atari machines. This code is also available as a module (say M),
469           called parport_atari. If in doubt, saying N is the safe plan.
470
471 config PRINTER
472         tristate "Parallel printer support"
473         depends on PARPORT
474         ---help---
475           If you intend to attach a printer to the parallel port of your Linux
476           box (as opposed to using a serial printer; if the connector at the
477           printer has 9 or 25 holes ["female"], then it's serial), say Y.
478           Also read the Printing-HOWTO, available from
479           <http://www.tldp.org/docs.html#howto>.
480
481           It is possible to share one parallel port among several devices
482           (e.g. printer and ZIP drive) and it is safe to compile the
483           corresponding drivers into the kernel.
484           To compile this driver as a module, choose M here and read
485           <file:Documentation/parport.txt>.  The module will be called lp.
486
487           If you have several parallel ports, you can specify which ports to
488           use with the "lp" kernel command line option.  (Try "man bootparam"
489           or see the documentation of your boot loader (lilo or loadlin) about
490           how to pass options to the kernel at boot time.)  The syntax of the
491           "lp" command line option can be found in <file:drivers/char/lp.c>.
492
493           If you have more than 8 printers, you need to increase the LP_NO
494           macro in lp.c and the PARPORT_MAX macro in parport.h.
495
496 config PARPORT_1284
497         bool "IEEE 1284 transfer modes"
498         depends on PRINTER
499         help
500           If you have a printer that supports status readback or device ID, or
501           want to use a device that uses enhanced parallel port transfer modes
502           such as EPP and ECP, say Y here to enable advanced IEEE 1284
503           transfer modes. Also say Y if you want device ID information to
504           appear in /proc/sys/dev/parport/*/autoprobe*. It is safe to say N.
505
506 config ISA
507         bool
508         depends on Q40 || AMIGA_PCMCIA || GG2
509         default y
510         help
511           Find out whether you have ISA slots on your motherboard.  ISA is the
512           name of a bus system, i.e. the way the CPU talks to the other stuff
513           inside your box.  Other bus systems are PCI, EISA, MicroChannel
514           (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
515           newer boards don't support it.  If you have ISA, say Y, otherwise N.
516
517 config GENERIC_ISA_DMA
518         bool
519         depends on Q40 || AMIGA_PCMCIA || GG2
520         default y
521
522 source "drivers/pci/Kconfig"
523
524 source "drivers/zorro/Kconfig"
525
526 if Q40
527 source "drivers/pnp/Kconfig"
528 endif
529
530 endmenu
531
532 source "drivers/base/Kconfig"
533
534 source "drivers/mtd/Kconfig"
535
536 source "drivers/block/Kconfig"
537
538 source "drivers/md/Kconfig"
539
540 source "drivers/input/Kconfig"
541
542 source "drivers/ide/Kconfig"
543
544 source "drivers/scsi/Kconfig"
545
546 source "net/Kconfig"
547
548
549 menu "Character devices"
550
551 config SERIAL
552         tristate "Q40 Standard/generic serial support" if Q40
553         default DN_SERIAL if APOLLO
554         ---help---
555           This selects whether you want to include the driver for the standard
556           serial ports.  The standard answer is Y.  People who might say N
557           here are those that are setting up dedicated Ethernet WWW/FTP
558           servers, or users that have one of the various bus mice instead of a
559           serial mouse and don't intend to use their machine's standard serial
560           port for anything.  (Note that the Cyclades and Stallion multi
561           serial port drivers do not need this driver built in for them to
562           work.)
563
564           To compile this driver as a module, choose M here: the
565           module will be called serial.
566           [WARNING: Do not compile this driver as a module if you are using
567           non-standard serial ports, since the configuration information will
568           be lost when the driver is unloaded.  This limitation may be lifted
569           in the future.]
570
571           BTW1: If you have a mouseman serial mouse which is not recognized by
572           the X window system, try running gpm first.
573
574           BTW2: If you intend to use a software modem (also called Winmodem)
575           under Linux, forget it.  These modems are crippled and require
576           proprietary drivers which are only available under Windows.
577
578           Most people will say Y or M here, so that they can use serial mice,
579           modems and similar devices connecting to the standard serial ports.
580
581 config SERIAL_EXTENDED
582         bool "Extended dumb serial driver options"
583         depends on SERIAL=y
584         help
585           If you wish to use any non-standard features of the standard "dumb"
586           driver, say Y here. This includes HUB6 support, shared serial
587           interrupts, special multiport support, support for more than the
588           four COM 1/2/3/4 boards, etc.
589
590           Note that the answer to this question won't directly affect the
591           kernel: saying N will just cause the configurator to skip all
592           the questions about serial driver options. If unsure, say N.
593
594 config SERIAL_MANY_PORTS
595         bool "Support more than 4 serial ports"
596         depends on SERIAL_EXTENDED
597         help
598           Say Y here if you have dumb serial boards other than the four
599           standard COM 1/2/3/4 ports. This may happen if you have an AST
600           FourPort, Accent Async, Boca (read the Boca mini-HOWTO, available
601           from <http://www.tldp.org/docs.html#howto>), or other custom
602           serial port hardware which acts similar to standard serial port
603           hardware. If you only use the standard COM 1/2/3/4 ports, you can
604           say N here to save some memory. You can also say Y if you have an
605           "intelligent" multiport card such as Cyclades, Digiboards, etc.
606
607 config SERIAL_SHARE_IRQ
608         bool "Support for sharing serial interrupts"
609         depends on SERIAL_EXTENDED
610         help
611           Some serial boards have hardware support which allows multiple dumb
612           serial ports on the same board to share a single IRQ. To enable
613           support for this in the serial driver, say Y here.
614
615 config SERIAL_MULTIPORT
616         bool "Support special multiport boards"
617         depends on SERIAL_EXTENDED
618         help
619           Some multiport serial ports have special ports which are used to
620           signal when there are any serial ports on the board which need
621           servicing. Say Y here to enable the serial driver to take advantage
622           of those special I/O ports.
623
624 config HUB6
625         bool "Support the Bell Technologies HUB6 card"
626         depends on SERIAL_EXTENDED
627         help
628           Say Y here to enable support in the dumb serial driver to support
629           the HUB6 card.
630
631 config VT
632         bool "Virtual terminal"
633         ---help---
634           If you say Y here, you will get support for terminal devices with
635           display and keyboard devices. These are called "virtual" because you
636           can run several virtual terminals (also called virtual consoles) on
637           one physical terminal. This is rather useful, for example one
638           virtual terminal can collect system messages and warnings, another
639           one can be used for a text-mode user session, and a third could run
640           an X session, all in parallel. Switching between virtual terminals
641           is done with certain key combinations, usually Alt-<function key>.
642
643           The setterm command ("man setterm") can be used to change the
644           properties (such as colors or beeping) of a virtual terminal. The
645           man page console_codes(4) ("man console_codes") contains the special
646           character sequences that can be used to change those properties
647           directly. The fonts used on virtual terminals can be changed with
648           the setfont ("man setfont") command and the key bindings are defined
649           with the loadkeys ("man loadkeys") command.
650
651           You need at least one virtual terminal device in order to make use
652           of your keyboard and monitor. Therefore, only people configuring an
653           embedded system would want to say N here in order to save some
654           memory; the only way to log into such a system is then via a serial
655           or network connection.
656
657           If unsure, say Y, or else you won't be able to do much with your new
658           shiny Linux system :-)
659
660 config VT_CONSOLE
661         bool "Support for console on virtual terminal"
662         depends on VT
663         ---help---
664           The system console is the device which receives all kernel messages
665           and warnings and which allows logins in single user mode. If you
666           answer Y here, a virtual terminal (the device used to interact with
667           a physical terminal) can be used as system console. This is the most
668           common mode of operations, so you should say Y here unless you want
669           the kernel messages be output only to a serial port (in which case
670           you should say Y to "Console on serial port", below).
671
672           If you do say Y here, by default the currently visible virtual
673           terminal (/dev/tty0) will be used as system console. You can change
674           that with a kernel command line option such as "console=tty3" which
675           would use the third virtual terminal as system console. (Try "man
676           bootparam" or see the documentation of your boot loader (lilo or
677           loadlin) about how to pass options to the kernel at boot time.)
678
679           If unsure, say Y.
680
681 config HW_CONSOLE
682         bool
683         depends on VT
684         default y
685
686 config NVRAM
687         bool
688         depends on ATARI
689         default y
690         ---help---
691           If you say Y here and create a character special file /dev/nvram
692           with major number 10 and minor number 144 using mknod ("man mknod"),
693           you get read and write access to the 50 bytes of non-volatile memory
694           in the real time clock (RTC), which is contained in every PC and
695           most Ataris.
696
697           This memory is conventionally called "CMOS RAM" on PCs and "NVRAM"
698           on Ataris. /dev/nvram may be used to view settings there, or to
699           change them (with some utility). It could also be used to frequently
700           save a few bits of very important data that may not be lost over
701           power-off and for which writing to disk is too insecure. Note
702           however that most NVRAM space in a PC belongs to the BIOS and you
703           should NEVER idly tamper with it. See Ralf Brown's interrupt list
704           for a guide to the use of CMOS bytes by your BIOS.
705
706           On Atari machines, /dev/nvram is always configured and does not need
707           to be selected.
708
709           To compile this driver as a module, choose M here: the
710           module will be called nvram.
711
712 config ATARI_MFPSER
713         tristate "Atari MFP serial support"
714         depends on ATARI
715         ---help---
716           If you like to use the MFP serial ports ("Modem1", "Serial1") under
717           Linux, say Y. The driver equally supports all kinds of MFP serial
718           ports and automatically detects whether Serial1 is available.
719
720           To compile this driver as a module, choose M here.
721
722           Note for Falcon users: You also have an MFP port, it's just not
723           wired to the outside... But you could use the port under Linux.
724
725 config ATARI_SCC
726         tristate "Atari SCC serial support"
727         depends on ATARI
728         ---help---
729           If you have serial ports based on a Zilog SCC chip (Modem2, Serial2,
730           LAN) and like to use them under Linux, say Y. All built-in SCC's are
731           supported (TT, MegaSTE, Falcon), and also the ST-ESCC. If you have
732           two connectors for channel A (Serial2 and LAN), they are visible as
733           two separate devices.
734
735           To compile this driver as a module, choose M here.
736
737 config ATARI_SCC_DMA
738         bool "Atari SCC serial DMA support"
739         depends on ATARI_SCC
740         help
741           This enables DMA support for receiving data on channel A of the SCC.
742           If you have a TT you may say Y here and read
743           drivers/char/atari_SCC.README. All other users should say N here,
744           because only the TT has SCC-DMA, even if your machine keeps claiming
745           so at boot time.
746
747 config ATARI_MIDI
748         tristate "Atari MIDI serial support"
749         depends on ATARI
750         help
751           If you want to use your Atari's MIDI port in Linux, say Y.
752
753           To compile this driver as a module, choose M here.
754
755 config ATARI_DSP56K
756         tristate "Atari DSP56k support (EXPERIMENTAL)"
757         depends on ATARI && EXPERIMENTAL
758         help
759           If you want to be able to use the DSP56001 in Falcons, say Y. This
760           driver is still experimental, and if you don't know what it is, or
761           if you don't have this processor, just say N.
762
763           To compile this driver as a module, choose M here.
764
765 config AMIGA_BUILTIN_SERIAL
766         tristate "Amiga builtin serial support"
767         depends on AMIGA
768         help
769           If you want to use your Amiga's built-in serial port in Linux,
770           answer Y.
771
772           To compile this driver as a module, choose M here.
773
774 config WHIPPET_SERIAL
775         tristate "Hisoft Whippet PCMCIA serial support"
776         depends on AMIGA_PCMCIA
777         help
778           HiSoft has a web page at <http://www.hisoft.co.uk/>, but there
779           is no listing for the Whippet in their Amiga section.
780
781 config MULTIFACE_III_TTY
782         tristate "Multiface Card III serial support"
783         depends on AMIGA
784         help
785           If you want to use a Multiface III card's serial port in Linux,
786           answer Y.
787
788           To compile this driver as a module, choose M here.
789
790 config A2232
791         tristate "Commodore A2232 serial support (EXPERIMENTAL)"
792         depends on AMIGA && EXPERIMENTAL
793         ---help---
794           This option supports the 2232 7-port serial card shipped with the
795           Amiga 2000 and other Zorro-bus machines, dating from 1989.  At
796           a max of 19,200 bps, the ports are served by a 6551 ACIA UART chip
797           each, plus a 8520 CIA, and a master 6502 CPU and buffer as well. The
798           ports were connected with 8 pin DIN connectors on the card bracket,
799           for which 8 pin to DB25 adapters were supplied. The card also had
800           jumpers internally to toggle various pinning configurations.
801
802           This driver can be built as a module; but then "generic_serial"
803           will also be built as a module. This has to be loaded before
804           "ser_a2232". If you want to do this, answer M here.
805
806 config GVPIOEXT
807         tristate "GVP IO-Extender support"
808         depends on PARPORT=n && ZORRO
809         help
810           If you want to use a GVP IO-Extender serial card in Linux, say Y.
811           Otherwise, say N.
812
813 config GVPIOEXT_LP
814         tristate "GVP IO-Extender parallel printer support"
815         depends on GVPIOEXT
816         help
817           Say Y to enable driving a printer from the parallel port on your
818           GVP IO-Extender card, N otherwise.
819
820 config GVPIOEXT_PLIP
821         tristate "GVP IO-Extender PLIP support"
822         depends on GVPIOEXT
823         help
824           Say Y to enable doing IP over the parallel port on your GVP
825           IO-Extender card, N otherwise.
826
827 config MAC_SCC
828         tristate "Macintosh serial support"
829         depends on MAC
830
831 config ADB
832         bool "Apple Desktop Bus (ADB) support"
833         depends on MAC
834         help
835           Apple Desktop Bus (ADB) support is for support of devices which
836           are connected to an ADB port.  ADB devices tend to have 4 pins.
837           If you have an Apple Macintosh prior to the iMac, or a
838           "Blue and White G3", you probably want to say Y here.  Otherwise
839           say N.
840
841 config ADB_MACII
842         bool "Include Mac II ADB driver"
843         depends on ADB
844         help
845           Say Y here if want your kernel to support Macintosh systems that use
846           the Mac II style ADB.  This includes the II, IIx, IIcx, SE/30, IIci,
847           Quadra 610, Quadra 650, Quadra 700, Quadra 800, Centris 610 and
848           Centris 650.
849
850 config ADB_MACIISI
851         bool "Include Mac IIsi ADB driver"
852         depends on ADB
853         help
854           Say Y here if want your kernel to support Macintosh systems that use
855           the Mac IIsi style ADB.  This includes the IIsi, IIvi, IIvx, Classic
856           II, LC, LC II, LC III, Performa 460, and the Performa 600.
857
858 config ADB_CUDA
859         bool "Include CUDA ADB driver"
860         depends on ADB
861         help
862           This provides support for CUDA based Power Macintosh systems.  This
863           includes most OldWorld PowerMacs, the first generation iMacs, the
864           Blue&White G3 and the Yikes G4 (PCI Graphics).  All later models
865           should use CONFIG_ADB_PMU instead.
866
867           If unsure say Y.
868
869 config ADB_IOP
870         bool "Include IOP (IIfx/Quadra 9x0) ADB driver"
871         depends on ADB
872         help
873           The I/O Processor (IOP) is an Apple custom IC designed to provide
874           intelligent support for I/O controllers.  It is described at
875           <http://www.angelfire.com/ca2/dev68k/iopdesc.html> to enable direct
876           support for it, say 'Y' here.
877
878 config ADB_PMU68K
879         bool "Include PMU (Powerbook) ADB driver"
880         depends on ADB
881         help
882           Say Y here if want your kernel to support the m68k based Powerbooks.
883           This includes the PowerBook 140, PowerBook 145, PowerBook 150,
884           PowerBook 160, PowerBook 165, PowerBook 165c, PowerBook 170,
885           PowerBook 180, PowerBook, 180c, PowerBook 190cs, PowerBook 520,
886           PowerBook Duo 210, PowerBook Duo 230, PowerBook Duo 250,
887           PowerBook Duo 270c, PowerBook Duo 280 and PowerBook Duo 280c.
888
889 config INPUT_ADBHID
890         bool "Use input layer for ADB devices"
891         depends on MAC && INPUT=y
892         ---help---
893           Say Y here if you want to have ADB (Apple Desktop Bus) HID devices
894           such as keyboards, mice, joysticks, or graphic tablets handled by
895           the input layer.  If you say Y here, make sure to say Y to the
896           corresponding drivers "Keyboard support" (CONFIG_INPUT_KEYBDEV),
897           "Mouse Support" (CONFIG_INPUT_MOUSEDEV) and "Event interface
898           support" (CONFIG_INPUT_EVDEV) as well.
899
900           If you say N here, you still have the option of using the old ADB
901           keyboard and mouse drivers.
902
903           If unsure, say Y.
904
905 config MAC_HID
906         bool
907         depends on INPUT_ADBHID
908         default y
909
910 config MAC_ADBKEYCODES
911         bool "Support for ADB raw keycodes"
912         depends on INPUT_ADBHID
913         help
914           This provides support for sending raw ADB keycodes to console
915           devices.  This is the default up to 2.4.0, but in future this may be
916           phased out in favor of generic Linux keycodes.  If you say Y here,
917           you can dynamically switch via the
918           /proc/sys/dev/mac_hid/keyboard_sends_linux_keycodes
919           sysctl and with the "keyboard_sends_linux_keycodes=" kernel
920           argument.
921
922           If unsure, say Y here.
923
924 config MAC_EMUMOUSEBTN
925         bool "Support for mouse button 2+3 emulation"
926         depends on INPUT_ADBHID
927         help
928           This provides generic support for emulating the 2nd and 3rd mouse
929           button with keypresses.  If you say Y here, the emulation is still
930           disabled by default.  The emulation is controlled by these sysctl
931           entries:
932           /proc/sys/dev/mac_hid/mouse_button_emulation
933           /proc/sys/dev/mac_hid/mouse_button2_keycode
934           /proc/sys/dev/mac_hid/mouse_button3_keycode
935
936 config ADB_KEYBOARD
937         bool "Support for ADB keyboard (old driver)"
938         depends on MAC && !INPUT_ADBHID
939         help
940           This option allows you to use an ADB keyboard attached to your
941           machine. Note that this disables any other (ie. PS/2) keyboard
942           support, even if your machine is physically capable of using both at
943           the same time.
944
945           If you use an ADB keyboard (4 pin connector), say Y here.
946           If you use a PS/2 keyboard (6 pin connector), say N here.
947
948 config HPDCA
949         tristate "HP DCA serial support"
950         depends on DIO
951         help
952           If you want to use the internal "DCA" serial ports on an HP300
953           machine, say Y here.
954
955 config MVME147_SCC
956         bool "SCC support for MVME147 serial ports"
957         depends on MVME147
958         help
959           This is the driver for the serial ports on the Motorola MVME147
960           boards.  Everyone using one of these boards should say Y here.
961
962 config SERIAL167
963         bool "CD2401 support for MVME166/7 serial ports"
964         depends on MVME16x && BROKEN
965         help
966           This is the driver for the serial ports on the Motorola MVME166,
967           167, and 172 boards.  Everyone using one of these boards should say
968           Y here.
969
970 config MVME162_SCC
971         bool "SCC support for MVME162 serial ports"
972         depends on MVME16x
973         help
974           This is the driver for the serial ports on the Motorola MVME162 and
975           172 boards.  Everyone using one of these boards should say Y here.
976
977 config BVME6000_SCC
978         bool "SCC support for BVME6000 serial ports"
979         depends on BVME6000
980         help
981           This is the driver for the serial ports on the BVME4000 and BVME6000
982           boards from BVM Ltd.  Everyone using one of these boards should say
983           Y here.
984
985 config DN_SERIAL
986         bool "Support for DN serial port (dummy)"
987         depends on APOLLO
988
989 config SERIAL_CONSOLE
990         bool "Support for serial port console"
991         depends on (AMIGA || ATARI || MAC || HP300 || 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 || HPDCA=y || SERIAL=y || MVME147_SCC || SERIAL167 || MVME162_SCC || BVME6000_SCC || DN_SERIAL)
992         ---help---
993           If you say Y here, it will be possible to use a serial port as the
994           system console (the system console is the device which receives all
995           kernel messages and warnings and which allows logins in single user
996           mode). This could be useful if some terminal or printer is connected
997           to that serial port.
998
999           Even if you say Y here, the currently visible virtual console
1000           (/dev/tty0) will still be used as the system console by default, but
1001           you can alter that using a kernel command line option such as
1002           "console=ttyS1". (Try "man bootparam" or see the documentation of
1003           your boot loader (lilo or loadlin) about how to pass options to the
1004           kernel at boot time.)
1005
1006           If you don't have a VGA card installed and you say Y here, the
1007           kernel will automatically use the first serial line, /dev/ttyS0, as
1008           system console.
1009
1010           If unsure, say N.
1011
1012 config USERIAL
1013         bool "Support for user serial device modules"
1014
1015 source "drivers/char/watchdog/Kconfig"
1016
1017 config GEN_RTC
1018         tristate "Generic /dev/rtc emulation" if !SUN3
1019         default y if SUN3
1020         ---help---
1021           If you say Y here and create a character special file /dev/rtc with
1022           major number 10 and minor number 135 using mknod ("man mknod"), you
1023           will get access to the real time clock (or hardware clock) built
1024           into your computer.
1025
1026           It reports status information via the file /proc/driver/rtc and its
1027           behaviour is set by various ioctls on /dev/rtc. If you enable the
1028           "extended RTC operation" below it will also provide an emulation
1029           for RTC_UIE which is required by some programs and may improve
1030           precision in some cases.
1031
1032           To compile this driver as a module, choose M here: the
1033           module will be called genrtc.
1034
1035 config GEN_RTC_X
1036         bool "Extended RTC operation"
1037         depends on GEN_RTC
1038         help
1039           Provides an emulation for RTC_UIE which is required by some programs
1040           and may improve precision of the generic RTC support in some cases.
1041
1042 config UNIX98_PTYS
1043         bool "Unix98 PTY support"
1044         ---help---
1045           A pseudo terminal (PTY) is a software device consisting of two
1046           halves: a master and a slave. The slave device behaves identical to
1047           a physical terminal; the master device is used by a process to
1048           read data from and write data to the slave, thereby emulating a
1049           terminal. Typical programs for the master side are telnet servers
1050           and xterms.
1051
1052           Linux has traditionally used the BSD-like names /dev/ptyxx for
1053           masters and /dev/ttyxx for slaves of pseudo terminals. This scheme
1054           has a number of problems. The GNU C library glibc 2.1 and later,
1055           however, supports the Unix98 naming standard: in order to acquire a
1056           pseudo terminal, a process opens /dev/ptmx; the number of the pseudo
1057           terminal is then made available to the process and the pseudo
1058           terminal slave can be accessed as /dev/pts/<number>. What was
1059           traditionally /dev/ttyp2 will then be /dev/pts/2, for example.
1060
1061           The entries in /dev/pts/ are created on the fly by a virtual
1062           file system; therefore, if you say Y here you should say Y to
1063           "/dev/pts file system for Unix98 PTYs" as well.
1064
1065           If you want to say Y here, you need to have the C library glibc 2.1
1066           or later (equal to libc-6.1, check with "ls -l /lib/libc.so.*").
1067           Read the instructions in <file:Documentation/Changes> pertaining to
1068           pseudo terminals. It's safe to say N.
1069
1070 config UNIX98_PTY_COUNT
1071         int "Maximum number of Unix98 PTYs in use (0-2048)"
1072         depends on UNIX98_PTYS
1073         default "256"
1074         help
1075           The maximum number of Unix98 PTYs that can be used at any one time.
1076           The default is 256, and should be enough for desktop systems. Server
1077           machines which support incoming telnet/rlogin/ssh connections and/or
1078           serve several X terminals may want to increase this: every incoming
1079           connection and every xterm uses up one PTY.
1080
1081           When not in use, each additional set of 256 PTYs occupy
1082           approximately 8 KB of kernel memory on 32-bit architectures.
1083
1084 endmenu
1085
1086 source "sound/Kconfig"
1087
1088 source "fs/Kconfig"
1089
1090 source "drivers/video/Kconfig"
1091
1092 menu "Kernel hacking"
1093
1094 config DEBUG_KERNEL
1095         bool "Kernel debugging"
1096
1097 config MAGIC_SYSRQ
1098         bool "Magic SysRq key"
1099         depends on DEBUG_KERNEL
1100         help
1101           If you say Y here, you will have some control over the system even
1102           if the system crashes for example during kernel debugging (e.g., you
1103           will be able to flush the buffer cache to disk, reboot the system
1104           immediately or dump some status information). This is accomplished
1105           by pressing various keys while holding SysRq (Alt+PrintScreen). It
1106           also works on a serial console (on PC hardware at least), if you
1107           send a BREAK and then within 5 seconds a command keypress. The
1108           keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
1109           unless you really know what this hack does.
1110
1111 config DEBUG_SLAB
1112         bool "Debug memory allocations"
1113         depends on DEBUG_KERNEL
1114
1115 config DEBUG_BUGVERBOSE
1116         bool "Verbose BUG() reporting"
1117         depends on DEBUG_KERNEL
1118
1119 config DEBUG_INFO
1120         bool "Compile the kernel with debug info"
1121         depends on DEBUG_KERNEL
1122         help
1123           If you say Y here the resulting kernel image will include
1124           debugging info resulting in a larger kernel image.
1125           Say Y here only if you plan to use gdb to debug the kernel.
1126           If you don't debug the kernel, you can say N.
1127           
1128 endmenu
1129
1130 source "security/Kconfig"
1131
1132 source "crypto/Kconfig"
1133
1134 source "lib/Kconfig"
1135
1136 source "rpmify/Kconfig"
1137