vserver 1.9.5.x5
[linux-2.6.git] / arch / sparc64 / Kconfig
1 # $Id: config.in,v 1.158 2002/01/24 22:14:44 davem Exp $
2 # For a description of the syntax of this configuration file,
3 # see the Configure script.
4 #
5
6 mainmenu "Linux/UltraSPARC Kernel Configuration"
7
8 config 64BIT
9         def_bool y
10
11 config MMU
12         bool
13         default y
14
15 config TIME_INTERPOLATION
16         bool
17         default y
18
19 source "init/Kconfig"
20
21 config SYSVIPC_COMPAT
22         bool
23         depends on COMPAT && SYSVIPC
24         default y
25
26 menu "General machine setup"
27
28 config BBC_I2C
29         tristate "UltraSPARC-III bootbus i2c controller driver"
30         depends on PCI
31         help
32           The BBC devices on the UltraSPARC III have two I2C controllers.  The
33           first I2C controller connects mainly to configuration PROMs (NVRAM,
34           CPU configuration, DIMM types, etc.).  The second I2C controller
35           connects to environmental control devices such as fans and
36           temperature sensors.  The second controller also connects to the
37           smartcard reader, if present.  Say Y to enable support for these.
38
39 config VT
40         bool "Virtual terminal" if EMBEDDED
41         select INPUT
42         default y
43         ---help---
44           If you say Y here, you will get support for terminal devices with
45           display and keyboard devices. These are called "virtual" because you
46           can run several virtual terminals (also called virtual consoles) on
47           one physical terminal. This is rather useful, for example one
48           virtual terminal can collect system messages and warnings, another
49           one can be used for a text-mode user session, and a third could run
50           an X session, all in parallel. Switching between virtual terminals
51           is done with certain key combinations, usually Alt-<function key>.
52
53           The setterm command ("man setterm") can be used to change the
54           properties (such as colors or beeping) of a virtual terminal. The
55           man page console_codes(4) ("man console_codes") contains the special
56           character sequences that can be used to change those properties
57           directly. The fonts used on virtual terminals can be changed with
58           the setfont ("man setfont") command and the key bindings are defined
59           with the loadkeys ("man loadkeys") command.
60
61           You need at least one virtual terminal device in order to make use
62           of your keyboard and monitor. Therefore, only people configuring an
63           embedded system would want to say N here in order to save some
64           memory; the only way to log into such a system is then via a serial
65           or network connection.
66
67           If unsure, say Y, or else you won't be able to do much with your new
68           shiny Linux system :-)
69
70 config VT_CONSOLE
71         bool "Support for console on virtual terminal" if EMBEDDED
72         depends on VT
73         default y
74         ---help---
75           The system console is the device which receives all kernel messages
76           and warnings and which allows logins in single user mode. If you
77           answer Y here, a virtual terminal (the device used to interact with
78           a physical terminal) can be used as system console. This is the most
79           common mode of operations, so you should say Y here unless you want
80           the kernel messages be output only to a serial port (in which case
81           you should say Y to "Console on serial port", below).
82
83           If you do say Y here, by default the currently visible virtual
84           terminal (/dev/tty0) will be used as system console. You can change
85           that with a kernel command line option such as "console=tty3" which
86           would use the third virtual terminal as system console. (Try "man
87           bootparam" or see the documentation of your boot loader (lilo or
88           loadlin) about how to pass options to the kernel at boot time.)
89
90           If unsure, say Y.
91
92 config HW_CONSOLE
93         bool
94         default y
95
96 config SMP
97         bool "Symmetric multi-processing support"
98         ---help---
99           This enables support for systems with more than one CPU. If you have
100           a system with only one CPU, say N. If you have a system with more than
101           one CPU, say Y.
102
103           If you say N here, the kernel will run on single and multiprocessor
104           machines, but will use only one CPU of a multiprocessor machine. If
105           you say Y here, the kernel will run on many, but not all,
106           singleprocessor machines. On a singleprocessor machine, the kernel
107           will run faster if you say N here.
108
109           People using multiprocessor machines who say Y here should also say
110           Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
111           Management" code will be disabled if you say Y here.
112
113           See also the <file:Documentation/smp.txt>,
114           <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
115           <http://www.tldp.org/docs.html#howto>.
116
117           If you don't know what to do here, say N.
118
119 config PREEMPT
120         bool "Preemptible Kernel"
121         help
122           This option reduces the latency of the kernel when reacting to
123           real-time or interactive events by allowing a low priority process to
124           be preempted even if it is in kernel mode executing a system call.
125           This allows applications to run more reliably even when the system is
126           under load.
127
128           Say Y here if you are building a kernel for a desktop, embedded
129           or real-time system.  Say N if you are unsure.
130
131 config NR_CPUS
132         int "Maximum number of CPUs (2-64)"
133         range 2 64
134         depends on SMP
135         default "32"
136
137 source "drivers/cpufreq/Kconfig"
138
139 config CPU_FREQ_TABLE
140        tristate "CPU frequency table helpers"
141        depends on CPU_FREQ
142        default y
143        help
144          Many CPUFreq drivers use these helpers, so only say N here if
145          the CPUFreq driver of your choice doesn't need these helpers.
146
147          If in doubt, say Y.
148
149 config US3_FREQ
150         tristate "UltraSPARC-III CPU Frequency driver"
151         depends on CPU_FREQ_TABLE
152         help
153           This adds the CPUFreq driver for UltraSPARC-III processors.
154
155           For details, take a look at <file:Documentation/cpu-freq>.
156
157           If in doubt, say N.
158
159 config US2E_FREQ
160         tristate "UltraSPARC-IIe CPU Frequency driver"
161         depends on CPU_FREQ_TABLE
162         help
163           This adds the CPUFreq driver for UltraSPARC-IIe processors.
164
165           For details, take a look at <file:Documentation/cpu-freq>.
166
167           If in doubt, say N.
168
169 # Identify this as a Sparc64 build
170 config SPARC64
171         bool
172         default y
173         help
174           SPARC is a family of RISC microprocessors designed and marketed by
175           Sun Microsystems, incorporated.  This port covers the newer 64-bit
176           UltraSPARC.  The UltraLinux project maintains both the SPARC32 and
177           SPARC64 ports; its web page is available at
178           <http://www.ultralinux.org/>.
179
180 # Global things across all Sun machines.
181 config RWSEM_GENERIC_SPINLOCK
182         bool
183
184 config RWSEM_XCHGADD_ALGORITHM
185         bool
186         default y
187
188 config GENERIC_CALIBRATE_DELAY
189         bool
190         default y
191
192 choice
193         prompt "SPARC64 Huge TLB Page Size"
194         depends on HUGETLB_PAGE
195         default HUGETLB_PAGE_SIZE_4MB
196
197 config HUGETLB_PAGE_SIZE_4MB
198         bool "4MB"
199
200 config HUGETLB_PAGE_SIZE_512K
201         bool "512K"
202
203 config HUGETLB_PAGE_SIZE_64K
204         bool "64K"
205
206 endchoice
207
208 config GENERIC_ISA_DMA
209         bool
210         default y
211
212 config ISA
213         bool
214         help
215           Find out whether you have ISA slots on your motherboard.  ISA is the
216           name of a bus system, i.e. the way the CPU talks to the other stuff
217           inside your box.  Other bus systems are PCI, EISA, MicroChannel
218           (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
219           newer boards don't support it.  If you have ISA, say Y, otherwise N.
220
221 config ISAPNP
222         bool
223         help
224           Say Y here if you would like support for ISA Plug and Play devices.
225           Some information is in <file:Documentation/isapnp.txt>.
226
227           To compile this driver as a module, choose M here: the
228           module will be called isapnp.
229
230           If unsure, say Y.
231
232 config EISA
233         bool
234         ---help---
235           The Extended Industry Standard Architecture (EISA) bus was
236           developed as an open alternative to the IBM MicroChannel bus.
237
238           The EISA bus provided some of the features of the IBM MicroChannel
239           bus while maintaining backward compatibility with cards made for
240           the older ISA bus.  The EISA bus saw limited use between 1988 and
241           1995 when it was made obsolete by the PCI bus.
242
243           Say Y here if you are building a kernel for an EISA-based machine.
244
245           Otherwise, say N.
246
247 config MCA
248         bool
249         help
250           MicroChannel Architecture is found in some IBM PS/2 machines and
251           laptops.  It is a bus system similar to PCI or ISA. See
252           <file:Documentation/mca.txt> (and especially the web page given
253           there) before attempting to build an MCA bus kernel.
254
255 config PCMCIA
256         tristate
257         ---help---
258           Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
259           computer.  These are credit-card size devices such as network cards,
260           modems or hard drives often used with laptops computers.  There are
261           actually two varieties of these cards: the older 16 bit PCMCIA cards
262           and the newer 32 bit CardBus cards.  If you want to use CardBus
263           cards, you need to say Y here and also to "CardBus support" below.
264
265           To use your PC-cards, you will need supporting software from David
266           Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
267           for location).  Please also read the PCMCIA-HOWTO, available from
268           <http://www.tldp.org/docs.html#howto>.
269
270           To compile this driver as modules, choose M here: the
271           modules will be called pcmcia_core and ds.
272
273 config SBUS
274         bool
275         default y
276
277 config SBUSCHAR
278         bool
279         default y
280
281 config SUN_AUXIO
282         bool
283         default y
284
285 config SUN_IO
286         bool
287         default y
288
289 config PCI
290         bool "PCI support"
291         help
292           Find out whether you have a PCI motherboard. PCI is the name of a
293           bus system, i.e. the way the CPU talks to the other stuff inside
294           your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
295           VESA. If you have PCI, say Y, otherwise N.
296
297           The PCI-HOWTO, available from
298           <http://www.tldp.org/docs.html#howto>, contains valuable
299           information about which PCI hardware does work under Linux and which
300           doesn't.
301
302 config PCI_DOMAINS
303         bool
304         default PCI
305
306 config RTC
307         tristate
308         depends on PCI
309         default y
310         ---help---
311           If you say Y here and create a character special file /dev/rtc with
312           major number 10 and minor number 135 using mknod ("man mknod"), you
313           will get access to the real time clock (or hardware clock) built
314           into your computer.
315
316           Every PC has such a clock built in. It can be used to generate
317           signals from as low as 1Hz up to 8192Hz, and can also be used
318           as a 24 hour alarm. It reports status information via the file
319           /proc/driver/rtc and its behaviour is set by various ioctls on
320           /dev/rtc.
321
322           If you run Linux on a multiprocessor machine and said Y to
323           "Symmetric Multi Processing" above, you should say Y here to read
324           and set the RTC in an SMP compatible fashion.
325
326           If you think you have a use for such a device (such as periodic data
327           sampling), then say Y here, and read <file:Documentation/rtc.txt>
328           for details.
329
330           To compile this driver as a module, choose M here: the
331           module will be called rtc.
332
333 source "drivers/pci/Kconfig"
334
335 config SUN_OPENPROMFS
336         tristate "Openprom tree appears in /proc/openprom"
337         help
338           If you say Y, the OpenPROM device tree will be available as a
339           virtual file system, which you can mount to /proc/openprom by "mount
340           -t openpromfs none /proc/openprom".
341
342           To compile the /proc/openprom support as a module, choose M here: the
343           module will be called openpromfs.  If unsure, choose M.
344
345 config SPARC32_COMPAT
346         bool "Kernel support for Linux/Sparc 32bit binary compatibility"
347         help
348           This allows you to run 32-bit binaries on your Ultra.
349           Everybody wants this; say Y.
350
351 config COMPAT
352         bool
353         depends on SPARC32_COMPAT
354         default y
355
356 config UID16
357         bool
358         depends on SPARC32_COMPAT
359         default y
360
361 config BINFMT_ELF32
362         tristate "Kernel support for 32-bit ELF binaries"
363         depends on SPARC32_COMPAT
364         help
365           This allows you to run 32-bit Linux/ELF binaries on your Ultra.
366           Everybody wants this; say Y.
367
368 config BINFMT_AOUT32
369         bool "Kernel support for 32-bit (ie. SunOS) a.out binaries"
370         depends on SPARC32_COMPAT
371         help
372           This allows you to run 32-bit a.out format binaries on your Ultra.
373           If you want to run SunOS binaries (see SunOS binary emulation below)
374           or other a.out binaries, say Y. If unsure, say N.
375
376 source "fs/Kconfig.binfmt"
377
378 config SUNOS_EMUL
379         bool "SunOS binary emulation"
380         depends on BINFMT_AOUT32
381         help
382           This allows you to run most SunOS binaries.  If you want to do this,
383           say Y here and place appropriate files in /usr/gnemul/sunos. See
384           <http://www.ultralinux.org/faq.html> for more information.  If you
385           want to run SunOS binaries on an Ultra you must also say Y to
386           "Kernel support for 32-bit a.out binaries" above.
387
388 config SOLARIS_EMUL
389         tristate "Solaris binary emulation (EXPERIMENTAL)"
390         depends on SPARC32_COMPAT && EXPERIMENTAL
391         help
392           This is experimental code which will enable you to run (many)
393           Solaris binaries on your SPARC Linux machine.
394
395           To compile this code as a module, choose M here: the
396           module will be called solaris.
397
398 source "drivers/parport/Kconfig"
399
400 config PRINTER
401         tristate "Parallel printer support"
402         depends on PARPORT
403         ---help---
404           If you intend to attach a printer to the parallel port of your Linux
405           box (as opposed to using a serial printer; if the connector at the
406           printer has 9 or 25 holes ["female"], then it's serial), say Y.
407           Also read the Printing-HOWTO, available from
408           <http://www.tldp.org/docs.html#howto>.
409
410           It is possible to share one parallel port among several devices
411           (e.g. printer and ZIP drive) and it is safe to compile the
412           corresponding drivers into the kernel.
413           To compile this driver as a module, choose M here and read
414           <file:Documentation/parport.txt>.  The module will be called lp.
415
416           If you have several parallel ports, you can specify which ports to
417           use with the "lp" kernel command line option.  (Try "man bootparam"
418           or see the documentation of your boot loader (lilo or loadlin) about
419           how to pass options to the kernel at boot time.)  The syntax of the
420           "lp" command line option can be found in <file:drivers/char/lp.c>.
421
422           If you have more than 8 printers, you need to increase the LP_NO
423           macro in lp.c and the PARPORT_MAX macro in parport.h.
424
425 config ENVCTRL
426         tristate "SUNW, envctrl support"
427         depends on PCI
428         help
429           Kernel support for temperature and fan monitoring on Sun SME
430           machines.
431
432           To compile this driver as a module, choose M here: the
433           module will be called envctrl.
434
435 config DISPLAY7SEG
436         tristate "7-Segment Display support"
437         depends on PCI
438         ---help---
439           This is the driver for the 7-segment display and LED present on
440           Sun Microsystems CompactPCI models CP1400 and CP1500.
441
442           To compile this driver as a module, choose M here: the
443           module will be called display7seg.
444
445           If you do not have a CompactPCI model CP1400 or CP1500, or
446           another UltraSPARC-IIi-cEngine boardset with a 7-segment display,
447           you should say N to this option.
448
449 config CMDLINE_BOOL
450         bool "Default bootloader kernel arguments"
451
452 config CMDLINE
453         string "Initial kernel command string"
454         depends on CMDLINE_BOOL
455         default "console=ttyS0,9600 root=/dev/sda1"
456         help
457           Say Y here if you want to be able to pass default arguments to
458           the kernel. This will be overridden by the bootloader, if you
459           use one (such as SILO). This is most useful if you want to boot
460           a kernel from TFTP, and want default options to be available
461           with having them passed on the command line.
462
463           NOTE: This option WILL override the PROM bootargs setting!
464
465 endmenu
466
467 source "drivers/base/Kconfig"
468
469 source "drivers/video/Kconfig"
470
471 source "drivers/serial/Kconfig"
472
473 source "drivers/sbus/char/Kconfig"
474
475 source "drivers/mtd/Kconfig"
476
477 source "drivers/block/Kconfig"
478
479 source "drivers/ide/Kconfig"
480
481 source "drivers/scsi/Kconfig"
482
483 source "drivers/fc4/Kconfig"
484
485 source "drivers/md/Kconfig"
486
487 if PCI
488 source "drivers/message/fusion/Kconfig"
489 endif
490
491 source "drivers/ieee1394/Kconfig"
492
493 source "net/Kconfig"
494
495 source "drivers/isdn/Kconfig"
496
497 source "drivers/telephony/Kconfig"
498
499 # This one must be before the filesystem configs. -DaveM
500
501 menu "Unix98 PTY support"
502
503 config UNIX98_PTYS
504         bool "Unix98 PTY support"
505         ---help---
506           A pseudo terminal (PTY) is a software device consisting of two
507           halves: a master and a slave. The slave device behaves identical to
508           a physical terminal; the master device is used by a process to
509           read data from and write data to the slave, thereby emulating a
510           terminal. Typical programs for the master side are telnet servers
511           and xterms.
512
513           Linux has traditionally used the BSD-like names /dev/ptyxx for
514           masters and /dev/ttyxx for slaves of pseudo terminals. This scheme
515           has a number of problems. The GNU C library glibc 2.1 and later,
516           however, supports the Unix98 naming standard: in order to acquire a
517           pseudo terminal, a process opens /dev/ptmx; the number of the pseudo
518           terminal is then made available to the process and the pseudo
519           terminal slave can be accessed as /dev/pts/<number>. What was
520           traditionally /dev/ttyp2 will then be /dev/pts/2, for example.
521
522           The entries in /dev/pts/ are created on the fly by a virtual
523           file system; therefore, if you say Y here you should say Y to
524           "/dev/pts file system for Unix98 PTYs" as well.
525
526           If you want to say Y here, you need to have the C library glibc 2.1
527           or later (equal to libc-6.1, check with "ls -l /lib/libc.so.*").
528           Read the instructions in <file:Documentation/Changes> pertaining to
529           pseudo terminals. It's safe to say N.
530
531 config UNIX98_PTY_COUNT
532         int "Maximum number of Unix98 PTYs in use (0-2048)"
533         depends on UNIX98_PTYS
534         default "256"
535         help
536           The maximum number of Unix98 PTYs that can be used at any one time.
537           The default is 256, and should be enough for desktop systems. Server
538           machines which support incoming telnet/rlogin/ssh connections and/or
539           serve several X terminals may want to increase this: every incoming
540           connection and every xterm uses up one PTY.
541
542           When not in use, each additional set of 256 PTYs occupy
543           approximately 8 KB of kernel memory on 32-bit architectures.
544
545 endmenu
546
547 menu "XFree86 DRI support"
548
549 config DRM
550         bool "Direct Rendering Manager (XFree86 DRI support)"
551         help
552           Kernel-level support for the Direct Rendering Infrastructure (DRI)
553           introduced in XFree86 4.0. If you say Y here, you need to select
554           the module that's right for your graphics card from the list below.
555           These modules provide support for synchronization, security, and
556           DMA transfers. Please see <http://dri.sourceforge.net/> for more
557           details.  You should also select and configure AGP
558           (/dev/agpgart) support.
559
560 config DRM_FFB
561         tristate "Creator/Creator3D"
562         depends on DRM && BROKEN
563         help
564           Choose this option if you have one of Sun's Creator3D-based graphics
565           and frame buffer cards.  Product page at
566           <http://www.sun.com/desktop/products/Graphics/creator3d.html>.
567
568 config DRM_TDFX
569         tristate "3dfx Banshee/Voodoo3+"
570         depends on DRM
571         help
572           Choose this option if you have a 3dfx Banshee or Voodoo3 (or later),
573           graphics card.  If M is selected, the module will be called tdfx.
574
575 config DRM_R128
576         tristate "ATI Rage 128"
577         depends on DRM
578         help
579           Choose this option if you have an ATI Rage 128 graphics card.  If M
580           is selected, the module will be called r128.  AGP support for
581           this card is strongly suggested (unless you have a PCI version).
582
583 endmenu
584
585 source "drivers/input/Kconfig"
586
587 source "drivers/i2c/Kconfig"
588
589 source "fs/Kconfig"
590
591 source "drivers/media/Kconfig"
592
593 source "sound/Kconfig"
594
595 source "drivers/usb/Kconfig"
596
597 source "drivers/infiniband/Kconfig"
598
599 source "drivers/char/watchdog/Kconfig"
600
601 source "arch/sparc64/oprofile/Kconfig"
602
603 source "arch/sparc64/Kconfig.debug"
604
605 source "kernel/vserver/Kconfig"
606
607 source "security/Kconfig"
608
609 source "crypto/Kconfig"
610
611 source "lib/Kconfig"