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.
6 mainmenu "Linux/UltraSPARC Kernel Configuration"
15 config TIME_INTERPOLATION
20 prompt "Kernel page size"
21 default SPARC64_PAGE_SIZE_8KB
23 config SPARC64_PAGE_SIZE_8KB
26 This lets you select the page size of the kernel.
28 8KB and 64KB work quite well, since Sparc ELF sections
29 provide for up to 64KB alignment.
31 Therefore, 512KB and 4MB are for expert hackers only.
33 If you don't know what to do, choose 8KB.
35 config SPARC64_PAGE_SIZE_64KB
38 config SPARC64_PAGE_SIZE_512KB
41 config SPARC64_PAGE_SIZE_4MB
46 source kernel/Kconfig.hz
52 depends on COMPAT && SYSVIPC
55 menu "General machine setup"
58 tristate "UltraSPARC-III bootbus i2c controller driver"
61 The BBC devices on the UltraSPARC III have two I2C controllers. The
62 first I2C controller connects mainly to configuration PROMs (NVRAM,
63 CPU configuration, DIMM types, etc.). The second I2C controller
64 connects to environmental control devices such as fans and
65 temperature sensors. The second controller also connects to the
66 smartcard reader, if present. Say Y to enable support for these.
69 bool "Virtual terminal" if EMBEDDED
73 If you say Y here, you will get support for terminal devices with
74 display and keyboard devices. These are called "virtual" because you
75 can run several virtual terminals (also called virtual consoles) on
76 one physical terminal. This is rather useful, for example one
77 virtual terminal can collect system messages and warnings, another
78 one can be used for a text-mode user session, and a third could run
79 an X session, all in parallel. Switching between virtual terminals
80 is done with certain key combinations, usually Alt-<function key>.
82 The setterm command ("man setterm") can be used to change the
83 properties (such as colors or beeping) of a virtual terminal. The
84 man page console_codes(4) ("man console_codes") contains the special
85 character sequences that can be used to change those properties
86 directly. The fonts used on virtual terminals can be changed with
87 the setfont ("man setfont") command and the key bindings are defined
88 with the loadkeys ("man loadkeys") command.
90 You need at least one virtual terminal device in order to make use
91 of your keyboard and monitor. Therefore, only people configuring an
92 embedded system would want to say N here in order to save some
93 memory; the only way to log into such a system is then via a serial
94 or network connection.
96 If unsure, say Y, or else you won't be able to do much with your new
97 shiny Linux system :-)
100 bool "Support for console on virtual terminal" if EMBEDDED
104 The system console is the device which receives all kernel messages
105 and warnings and which allows logins in single user mode. If you
106 answer Y here, a virtual terminal (the device used to interact with
107 a physical terminal) can be used as system console. This is the most
108 common mode of operations, so you should say Y here unless you want
109 the kernel messages be output only to a serial port (in which case
110 you should say Y to "Console on serial port", below).
112 If you do say Y here, by default the currently visible virtual
113 terminal (/dev/tty0) will be used as system console. You can change
114 that with a kernel command line option such as "console=tty3" which
115 would use the third virtual terminal as system console. (Try "man
116 bootparam" or see the documentation of your boot loader (lilo or
117 loadlin) about how to pass options to the kernel at boot time.)
127 bool "Symmetric multi-processing support"
129 This enables support for systems with more than one CPU. If you have
130 a system with only one CPU, say N. If you have a system with more than
133 If you say N here, the kernel will run on single and multiprocessor
134 machines, but will use only one CPU of a multiprocessor machine. If
135 you say Y here, the kernel will run on many, but not all,
136 singleprocessor machines. On a singleprocessor machine, the kernel
137 will run faster if you say N here.
139 People using multiprocessor machines who say Y here should also say
140 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
141 Management" code will be disabled if you say Y here.
143 See also the <file:Documentation/smp.txt>,
144 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
145 <http://www.tldp.org/docs.html#howto>.
147 If you don't know what to do here, say N.
150 bool "Preemptible Kernel"
152 This option reduces the latency of the kernel when reacting to
153 real-time or interactive events by allowing a low priority process to
154 be preempted even if it is in kernel mode executing a system call.
155 This allows applications to run more reliably even when the system is
158 Say Y here if you are building a kernel for a desktop, embedded
159 or real-time system. Say N if you are unsure.
162 int "Maximum number of CPUs (2-64)"
167 source "drivers/cpufreq/Kconfig"
170 tristate "UltraSPARC-III CPU Frequency driver"
172 select CPU_FREQ_TABLE
174 This adds the CPUFreq driver for UltraSPARC-III processors.
176 For details, take a look at <file:Documentation/cpu-freq>.
181 tristate "UltraSPARC-IIe CPU Frequency driver"
183 select CPU_FREQ_TABLE
185 This adds the CPUFreq driver for UltraSPARC-IIe processors.
187 For details, take a look at <file:Documentation/cpu-freq>.
191 # Identify this as a Sparc64 build
196 SPARC is a family of RISC microprocessors designed and marketed by
197 Sun Microsystems, incorporated. This port covers the newer 64-bit
198 UltraSPARC. The UltraLinux project maintains both the SPARC32 and
199 SPARC64 ports; its web page is available at
200 <http://www.ultralinux.org/>.
202 # Global things across all Sun machines.
203 config RWSEM_GENERIC_SPINLOCK
206 config RWSEM_XCHGADD_ALGORITHM
210 config GENERIC_CALIBRATE_DELAY
215 prompt "SPARC64 Huge TLB Page Size"
216 depends on HUGETLB_PAGE
217 default HUGETLB_PAGE_SIZE_4MB
219 config HUGETLB_PAGE_SIZE_4MB
222 config HUGETLB_PAGE_SIZE_512K
223 depends on !SPARC64_PAGE_SIZE_4MB
226 config HUGETLB_PAGE_SIZE_64K
227 depends on !SPARC64_PAGE_SIZE_4MB && !SPARC64_PAGE_SIZE_512K
232 config GENERIC_ISA_DMA
239 Find out whether you have ISA slots on your motherboard. ISA is the
240 name of a bus system, i.e. the way the CPU talks to the other stuff
241 inside your box. Other bus systems are PCI, EISA, MicroChannel
242 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
243 newer boards don't support it. If you have ISA, say Y, otherwise N.
248 Say Y here if you would like support for ISA Plug and Play devices.
249 Some information is in <file:Documentation/isapnp.txt>.
251 To compile this driver as a module, choose M here: the
252 module will be called isapnp.
259 The Extended Industry Standard Architecture (EISA) bus was
260 developed as an open alternative to the IBM MicroChannel bus.
262 The EISA bus provided some of the features of the IBM MicroChannel
263 bus while maintaining backward compatibility with cards made for
264 the older ISA bus. The EISA bus saw limited use between 1988 and
265 1995 when it was made obsolete by the PCI bus.
267 Say Y here if you are building a kernel for an EISA-based machine.
274 MicroChannel Architecture is found in some IBM PS/2 machines and
275 laptops. It is a bus system similar to PCI or ISA. See
276 <file:Documentation/mca.txt> (and especially the web page given
277 there) before attempting to build an MCA bus kernel.
282 Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
283 computer. These are credit-card size devices such as network cards,
284 modems or hard drives often used with laptops computers. There are
285 actually two varieties of these cards: the older 16 bit PCMCIA cards
286 and the newer 32 bit CardBus cards. If you want to use CardBus
287 cards, you need to say Y here and also to "CardBus support" below.
289 To use your PC-cards, you will need supporting software from David
290 Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
291 for location). Please also read the PCMCIA-HOWTO, available from
292 <http://www.tldp.org/docs.html#howto>.
294 To compile this driver as modules, choose M here: the
295 modules will be called pcmcia_core and ds.
316 Find out whether you have a PCI motherboard. PCI is the name of a
317 bus system, i.e. the way the CPU talks to the other stuff inside
318 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
319 VESA. If you have PCI, say Y, otherwise N.
321 The PCI-HOWTO, available from
322 <http://www.tldp.org/docs.html#howto>, contains valuable
323 information about which PCI hardware does work under Linux and which
335 If you say Y here and create a character special file /dev/rtc with
336 major number 10 and minor number 135 using mknod ("man mknod"), you
337 will get access to the real time clock (or hardware clock) built
340 Every PC has such a clock built in. It can be used to generate
341 signals from as low as 1Hz up to 8192Hz, and can also be used
342 as a 24 hour alarm. It reports status information via the file
343 /proc/driver/rtc and its behaviour is set by various ioctls on
346 If you run Linux on a multiprocessor machine and said Y to
347 "Symmetric Multi Processing" above, you should say Y here to read
348 and set the RTC in an SMP compatible fashion.
350 If you think you have a use for such a device (such as periodic data
351 sampling), then say Y here, and read <file:Documentation/rtc.txt>
354 To compile this driver as a module, choose M here: the
355 module will be called rtc.
357 source "drivers/pci/Kconfig"
359 config SUN_OPENPROMFS
360 tristate "Openprom tree appears in /proc/openprom"
362 If you say Y, the OpenPROM device tree will be available as a
363 virtual file system, which you can mount to /proc/openprom by "mount
364 -t openpromfs none /proc/openprom".
366 To compile the /proc/openprom support as a module, choose M here: the
367 module will be called openpromfs. If unsure, choose M.
369 config SPARC32_COMPAT
370 bool "Kernel support for Linux/Sparc 32bit binary compatibility"
372 This allows you to run 32-bit binaries on your Ultra.
373 Everybody wants this; say Y.
377 depends on SPARC32_COMPAT
382 depends on SPARC32_COMPAT
386 tristate "Kernel support for 32-bit ELF binaries"
387 depends on SPARC32_COMPAT
389 This allows you to run 32-bit Linux/ELF binaries on your Ultra.
390 Everybody wants this; say Y.
393 bool "Kernel support for 32-bit (ie. SunOS) a.out binaries"
394 depends on SPARC32_COMPAT
396 This allows you to run 32-bit a.out format binaries on your Ultra.
397 If you want to run SunOS binaries (see SunOS binary emulation below)
398 or other a.out binaries, say Y. If unsure, say N.
400 source "fs/Kconfig.binfmt"
403 bool "SunOS binary emulation"
404 depends on BINFMT_AOUT32
406 This allows you to run most SunOS binaries. If you want to do this,
407 say Y here and place appropriate files in /usr/gnemul/sunos. See
408 <http://www.ultralinux.org/faq.html> for more information. If you
409 want to run SunOS binaries on an Ultra you must also say Y to
410 "Kernel support for 32-bit a.out binaries" above.
413 tristate "Solaris binary emulation (EXPERIMENTAL)"
414 depends on SPARC32_COMPAT && EXPERIMENTAL
416 This is experimental code which will enable you to run (many)
417 Solaris binaries on your SPARC Linux machine.
419 To compile this code as a module, choose M here: the
420 module will be called solaris.
422 source "drivers/parport/Kconfig"
425 tristate "Parallel printer support"
428 If you intend to attach a printer to the parallel port of your Linux
429 box (as opposed to using a serial printer; if the connector at the
430 printer has 9 or 25 holes ["female"], then it's serial), say Y.
431 Also read the Printing-HOWTO, available from
432 <http://www.tldp.org/docs.html#howto>.
434 It is possible to share one parallel port among several devices
435 (e.g. printer and ZIP drive) and it is safe to compile the
436 corresponding drivers into the kernel.
437 To compile this driver as a module, choose M here and read
438 <file:Documentation/parport.txt>. The module will be called lp.
440 If you have several parallel ports, you can specify which ports to
441 use with the "lp" kernel command line option. (Try "man bootparam"
442 or see the documentation of your boot loader (lilo or loadlin) about
443 how to pass options to the kernel at boot time.) The syntax of the
444 "lp" command line option can be found in <file:drivers/char/lp.c>.
446 If you have more than 8 printers, you need to increase the LP_NO
447 macro in lp.c and the PARPORT_MAX macro in parport.h.
450 tristate "Support for user-space parallel port device drivers"
453 Saying Y to this adds support for /dev/parport device nodes. This
454 is needed for programs that want portable access to the parallel
455 port, for instance deviceid (which displays Plug-and-Play device
458 This is the parallel port equivalent of SCSI generic support (sg).
459 It is safe to say N to this -- it is not needed for normal printing
460 or parallel port CD-ROM/disk support.
462 To compile this driver as a module, choose M here: the
463 module will be called ppdev.
468 tristate "SUNW, envctrl support"
471 Kernel support for temperature and fan monitoring on Sun SME
474 To compile this driver as a module, choose M here: the
475 module will be called envctrl.
478 tristate "7-Segment Display support"
481 This is the driver for the 7-segment display and LED present on
482 Sun Microsystems CompactPCI models CP1400 and CP1500.
484 To compile this driver as a module, choose M here: the
485 module will be called display7seg.
487 If you do not have a CompactPCI model CP1400 or CP1500, or
488 another UltraSPARC-IIi-cEngine boardset with a 7-segment display,
489 you should say N to this option.
492 bool "Default bootloader kernel arguments"
495 string "Initial kernel command string"
496 depends on CMDLINE_BOOL
497 default "console=ttyS0,9600 root=/dev/sda1"
499 Say Y here if you want to be able to pass default arguments to
500 the kernel. This will be overridden by the bootloader, if you
501 use one (such as SILO). This is most useful if you want to boot
502 a kernel from TFTP, and want default options to be available
503 with having them passed on the command line.
505 NOTE: This option WILL override the PROM bootargs setting!
511 source "drivers/base/Kconfig"
513 source "drivers/video/Kconfig"
515 source "drivers/serial/Kconfig"
517 source "drivers/sbus/char/Kconfig"
519 source "drivers/mtd/Kconfig"
521 source "drivers/block/Kconfig"
523 source "drivers/ide/Kconfig"
525 source "drivers/scsi/Kconfig"
527 source "drivers/fc4/Kconfig"
529 source "drivers/md/Kconfig"
532 source "drivers/message/fusion/Kconfig"
535 source "drivers/ieee1394/Kconfig"
539 source "drivers/isdn/Kconfig"
541 source "drivers/telephony/Kconfig"
543 # This one must be before the filesystem configs. -DaveM
545 menu "Unix98 PTY support"
548 bool "Unix98 PTY support"
550 A pseudo terminal (PTY) is a software device consisting of two
551 halves: a master and a slave. The slave device behaves identical to
552 a physical terminal; the master device is used by a process to
553 read data from and write data to the slave, thereby emulating a
554 terminal. Typical programs for the master side are telnet servers
557 Linux has traditionally used the BSD-like names /dev/ptyxx for
558 masters and /dev/ttyxx for slaves of pseudo terminals. This scheme
559 has a number of problems. The GNU C library glibc 2.1 and later,
560 however, supports the Unix98 naming standard: in order to acquire a
561 pseudo terminal, a process opens /dev/ptmx; the number of the pseudo
562 terminal is then made available to the process and the pseudo
563 terminal slave can be accessed as /dev/pts/<number>. What was
564 traditionally /dev/ttyp2 will then be /dev/pts/2, for example.
566 The entries in /dev/pts/ are created on the fly by a virtual
567 file system; therefore, if you say Y here you should say Y to
568 "/dev/pts file system for Unix98 PTYs" as well.
570 If you want to say Y here, you need to have the C library glibc 2.1
571 or later (equal to libc-6.1, check with "ls -l /lib/libc.so.*").
572 Read the instructions in <file:Documentation/Changes> pertaining to
573 pseudo terminals. It's safe to say N.
575 config UNIX98_PTY_COUNT
576 int "Maximum number of Unix98 PTYs in use (0-2048)"
577 depends on UNIX98_PTYS
580 The maximum number of Unix98 PTYs that can be used at any one time.
581 The default is 256, and should be enough for desktop systems. Server
582 machines which support incoming telnet/rlogin/ssh connections and/or
583 serve several X terminals may want to increase this: every incoming
584 connection and every xterm uses up one PTY.
586 When not in use, each additional set of 256 PTYs occupy
587 approximately 8 KB of kernel memory on 32-bit architectures.
591 menu "XFree86 DRI support"
594 bool "Direct Rendering Manager (XFree86 DRI support)"
596 Kernel-level support for the Direct Rendering Infrastructure (DRI)
597 introduced in XFree86 4.0. If you say Y here, you need to select
598 the module that's right for your graphics card from the list below.
599 These modules provide support for synchronization, security, and
600 DMA transfers. Please see <http://dri.sourceforge.net/> for more
601 details. You should also select and configure AGP
602 (/dev/agpgart) support.
605 tristate "Creator/Creator3D"
606 depends on DRM && BROKEN
608 Choose this option if you have one of Sun's Creator3D-based graphics
609 and frame buffer cards. Product page at
610 <http://www.sun.com/desktop/products/Graphics/creator3d.html>.
613 tristate "3dfx Banshee/Voodoo3+"
616 Choose this option if you have a 3dfx Banshee or Voodoo3 (or later),
617 graphics card. If M is selected, the module will be called tdfx.
620 tristate "ATI Rage 128"
623 Choose this option if you have an ATI Rage 128 graphics card. If M
624 is selected, the module will be called r128. AGP support for
625 this card is strongly suggested (unless you have a PCI version).
629 source "drivers/input/Kconfig"
631 source "drivers/i2c/Kconfig"
635 source "drivers/media/Kconfig"
637 source "sound/Kconfig"
639 source "drivers/usb/Kconfig"
641 source "drivers/infiniband/Kconfig"
643 source "drivers/char/watchdog/Kconfig"
645 source "arch/sparc64/oprofile/Kconfig"
647 source "arch/sparc64/Kconfig.debug"
649 source "security/Kconfig"
651 source "crypto/Kconfig"