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
50 depends on COMPAT && SYSVIPC
53 menu "General machine setup"
56 tristate "UltraSPARC-III bootbus i2c controller driver"
59 The BBC devices on the UltraSPARC III have two I2C controllers. The
60 first I2C controller connects mainly to configuration PROMs (NVRAM,
61 CPU configuration, DIMM types, etc.). The second I2C controller
62 connects to environmental control devices such as fans and
63 temperature sensors. The second controller also connects to the
64 smartcard reader, if present. Say Y to enable support for these.
67 bool "Virtual terminal" if EMBEDDED
71 If you say Y here, you will get support for terminal devices with
72 display and keyboard devices. These are called "virtual" because you
73 can run several virtual terminals (also called virtual consoles) on
74 one physical terminal. This is rather useful, for example one
75 virtual terminal can collect system messages and warnings, another
76 one can be used for a text-mode user session, and a third could run
77 an X session, all in parallel. Switching between virtual terminals
78 is done with certain key combinations, usually Alt-<function key>.
80 The setterm command ("man setterm") can be used to change the
81 properties (such as colors or beeping) of a virtual terminal. The
82 man page console_codes(4) ("man console_codes") contains the special
83 character sequences that can be used to change those properties
84 directly. The fonts used on virtual terminals can be changed with
85 the setfont ("man setfont") command and the key bindings are defined
86 with the loadkeys ("man loadkeys") command.
88 You need at least one virtual terminal device in order to make use
89 of your keyboard and monitor. Therefore, only people configuring an
90 embedded system would want to say N here in order to save some
91 memory; the only way to log into such a system is then via a serial
92 or network connection.
94 If unsure, say Y, or else you won't be able to do much with your new
95 shiny Linux system :-)
98 bool "Support for console on virtual terminal" if EMBEDDED
102 The system console is the device which receives all kernel messages
103 and warnings and which allows logins in single user mode. If you
104 answer Y here, a virtual terminal (the device used to interact with
105 a physical terminal) can be used as system console. This is the most
106 common mode of operations, so you should say Y here unless you want
107 the kernel messages be output only to a serial port (in which case
108 you should say Y to "Console on serial port", below).
110 If you do say Y here, by default the currently visible virtual
111 terminal (/dev/tty0) will be used as system console. You can change
112 that with a kernel command line option such as "console=tty3" which
113 would use the third virtual terminal as system console. (Try "man
114 bootparam" or see the documentation of your boot loader (lilo or
115 loadlin) about how to pass options to the kernel at boot time.)
125 bool "Symmetric multi-processing support"
127 This enables support for systems with more than one CPU. If you have
128 a system with only one CPU, say N. If you have a system with more than
131 If you say N here, the kernel will run on single and multiprocessor
132 machines, but will use only one CPU of a multiprocessor machine. If
133 you say Y here, the kernel will run on many, but not all,
134 singleprocessor machines. On a singleprocessor machine, the kernel
135 will run faster if you say N here.
137 People using multiprocessor machines who say Y here should also say
138 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
139 Management" code will be disabled if you say Y here.
141 See also the <file:Documentation/smp.txt>,
142 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
143 <http://www.tldp.org/docs.html#howto>.
145 If you don't know what to do here, say N.
148 bool "Preemptible Kernel"
150 This option reduces the latency of the kernel when reacting to
151 real-time or interactive events by allowing a low priority process to
152 be preempted even if it is in kernel mode executing a system call.
153 This allows applications to run more reliably even when the system is
156 Say Y here if you are building a kernel for a desktop, embedded
157 or real-time system. Say N if you are unsure.
160 int "Maximum number of CPUs (2-64)"
165 source "drivers/cpufreq/Kconfig"
168 tristate "UltraSPARC-III CPU Frequency driver"
170 select CPU_FREQ_TABLE
172 This adds the CPUFreq driver for UltraSPARC-III processors.
174 For details, take a look at <file:Documentation/cpu-freq>.
179 tristate "UltraSPARC-IIe CPU Frequency driver"
181 select CPU_FREQ_TABLE
183 This adds the CPUFreq driver for UltraSPARC-IIe processors.
185 For details, take a look at <file:Documentation/cpu-freq>.
189 # Identify this as a Sparc64 build
194 SPARC is a family of RISC microprocessors designed and marketed by
195 Sun Microsystems, incorporated. This port covers the newer 64-bit
196 UltraSPARC. The UltraLinux project maintains both the SPARC32 and
197 SPARC64 ports; its web page is available at
198 <http://www.ultralinux.org/>.
200 # Global things across all Sun machines.
201 config RWSEM_GENERIC_SPINLOCK
204 config RWSEM_XCHGADD_ALGORITHM
208 config GENERIC_CALIBRATE_DELAY
213 prompt "SPARC64 Huge TLB Page Size"
214 depends on HUGETLB_PAGE
215 default HUGETLB_PAGE_SIZE_4MB
217 config HUGETLB_PAGE_SIZE_4MB
220 config HUGETLB_PAGE_SIZE_512K
221 depends on !SPARC64_PAGE_SIZE_4MB
224 config HUGETLB_PAGE_SIZE_64K
225 depends on !SPARC64_PAGE_SIZE_4MB && !SPARC64_PAGE_SIZE_512K
230 config GENERIC_ISA_DMA
237 Find out whether you have ISA slots on your motherboard. ISA is the
238 name of a bus system, i.e. the way the CPU talks to the other stuff
239 inside your box. Other bus systems are PCI, EISA, MicroChannel
240 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
241 newer boards don't support it. If you have ISA, say Y, otherwise N.
246 Say Y here if you would like support for ISA Plug and Play devices.
247 Some information is in <file:Documentation/isapnp.txt>.
249 To compile this driver as a module, choose M here: the
250 module will be called isapnp.
257 The Extended Industry Standard Architecture (EISA) bus was
258 developed as an open alternative to the IBM MicroChannel bus.
260 The EISA bus provided some of the features of the IBM MicroChannel
261 bus while maintaining backward compatibility with cards made for
262 the older ISA bus. The EISA bus saw limited use between 1988 and
263 1995 when it was made obsolete by the PCI bus.
265 Say Y here if you are building a kernel for an EISA-based machine.
272 MicroChannel Architecture is found in some IBM PS/2 machines and
273 laptops. It is a bus system similar to PCI or ISA. See
274 <file:Documentation/mca.txt> (and especially the web page given
275 there) before attempting to build an MCA bus kernel.
280 Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
281 computer. These are credit-card size devices such as network cards,
282 modems or hard drives often used with laptops computers. There are
283 actually two varieties of these cards: the older 16 bit PCMCIA cards
284 and the newer 32 bit CardBus cards. If you want to use CardBus
285 cards, you need to say Y here and also to "CardBus support" below.
287 To use your PC-cards, you will need supporting software from David
288 Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
289 for location). Please also read the PCMCIA-HOWTO, available from
290 <http://www.tldp.org/docs.html#howto>.
292 To compile this driver as modules, choose M here: the
293 modules will be called pcmcia_core and ds.
314 Find out whether you have a PCI motherboard. PCI is the name of a
315 bus system, i.e. the way the CPU talks to the other stuff inside
316 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
317 VESA. If you have PCI, say Y, otherwise N.
319 The PCI-HOWTO, available from
320 <http://www.tldp.org/docs.html#howto>, contains valuable
321 information about which PCI hardware does work under Linux and which
333 If you say Y here and create a character special file /dev/rtc with
334 major number 10 and minor number 135 using mknod ("man mknod"), you
335 will get access to the real time clock (or hardware clock) built
338 Every PC has such a clock built in. It can be used to generate
339 signals from as low as 1Hz up to 8192Hz, and can also be used
340 as a 24 hour alarm. It reports status information via the file
341 /proc/driver/rtc and its behaviour is set by various ioctls on
344 If you run Linux on a multiprocessor machine and said Y to
345 "Symmetric Multi Processing" above, you should say Y here to read
346 and set the RTC in an SMP compatible fashion.
348 If you think you have a use for such a device (such as periodic data
349 sampling), then say Y here, and read <file:Documentation/rtc.txt>
352 To compile this driver as a module, choose M here: the
353 module will be called rtc.
355 source "drivers/pci/Kconfig"
357 config SUN_OPENPROMFS
358 tristate "Openprom tree appears in /proc/openprom"
360 If you say Y, the OpenPROM device tree will be available as a
361 virtual file system, which you can mount to /proc/openprom by "mount
362 -t openpromfs none /proc/openprom".
364 To compile the /proc/openprom support as a module, choose M here: the
365 module will be called openpromfs. If unsure, choose M.
367 config SPARC32_COMPAT
368 bool "Kernel support for Linux/Sparc 32bit binary compatibility"
370 This allows you to run 32-bit binaries on your Ultra.
371 Everybody wants this; say Y.
375 depends on SPARC32_COMPAT
380 depends on SPARC32_COMPAT
384 tristate "Kernel support for 32-bit ELF binaries"
385 depends on SPARC32_COMPAT
387 This allows you to run 32-bit Linux/ELF binaries on your Ultra.
388 Everybody wants this; say Y.
391 bool "Kernel support for 32-bit (ie. SunOS) a.out binaries"
392 depends on SPARC32_COMPAT
394 This allows you to run 32-bit a.out format binaries on your Ultra.
395 If you want to run SunOS binaries (see SunOS binary emulation below)
396 or other a.out binaries, say Y. If unsure, say N.
398 source "fs/Kconfig.binfmt"
401 bool "SunOS binary emulation"
402 depends on BINFMT_AOUT32
404 This allows you to run most SunOS binaries. If you want to do this,
405 say Y here and place appropriate files in /usr/gnemul/sunos. See
406 <http://www.ultralinux.org/faq.html> for more information. If you
407 want to run SunOS binaries on an Ultra you must also say Y to
408 "Kernel support for 32-bit a.out binaries" above.
411 tristate "Solaris binary emulation (EXPERIMENTAL)"
412 depends on SPARC32_COMPAT && EXPERIMENTAL
414 This is experimental code which will enable you to run (many)
415 Solaris binaries on your SPARC Linux machine.
417 To compile this code as a module, choose M here: the
418 module will be called solaris.
420 source "drivers/parport/Kconfig"
423 tristate "Parallel printer support"
426 If you intend to attach a printer to the parallel port of your Linux
427 box (as opposed to using a serial printer; if the connector at the
428 printer has 9 or 25 holes ["female"], then it's serial), say Y.
429 Also read the Printing-HOWTO, available from
430 <http://www.tldp.org/docs.html#howto>.
432 It is possible to share one parallel port among several devices
433 (e.g. printer and ZIP drive) and it is safe to compile the
434 corresponding drivers into the kernel.
435 To compile this driver as a module, choose M here and read
436 <file:Documentation/parport.txt>. The module will be called lp.
438 If you have several parallel ports, you can specify which ports to
439 use with the "lp" kernel command line option. (Try "man bootparam"
440 or see the documentation of your boot loader (lilo or loadlin) about
441 how to pass options to the kernel at boot time.) The syntax of the
442 "lp" command line option can be found in <file:drivers/char/lp.c>.
444 If you have more than 8 printers, you need to increase the LP_NO
445 macro in lp.c and the PARPORT_MAX macro in parport.h.
448 tristate "Support for user-space parallel port device drivers"
451 Saying Y to this adds support for /dev/parport device nodes. This
452 is needed for programs that want portable access to the parallel
453 port, for instance deviceid (which displays Plug-and-Play device
456 This is the parallel port equivalent of SCSI generic support (sg).
457 It is safe to say N to this -- it is not needed for normal printing
458 or parallel port CD-ROM/disk support.
460 To compile this driver as a module, choose M here: the
461 module will be called ppdev.
466 tristate "SUNW, envctrl support"
469 Kernel support for temperature and fan monitoring on Sun SME
472 To compile this driver as a module, choose M here: the
473 module will be called envctrl.
476 tristate "7-Segment Display support"
479 This is the driver for the 7-segment display and LED present on
480 Sun Microsystems CompactPCI models CP1400 and CP1500.
482 To compile this driver as a module, choose M here: the
483 module will be called display7seg.
485 If you do not have a CompactPCI model CP1400 or CP1500, or
486 another UltraSPARC-IIi-cEngine boardset with a 7-segment display,
487 you should say N to this option.
490 bool "Default bootloader kernel arguments"
493 string "Initial kernel command string"
494 depends on CMDLINE_BOOL
495 default "console=ttyS0,9600 root=/dev/sda1"
497 Say Y here if you want to be able to pass default arguments to
498 the kernel. This will be overridden by the bootloader, if you
499 use one (such as SILO). This is most useful if you want to boot
500 a kernel from TFTP, and want default options to be available
501 with having them passed on the command line.
503 NOTE: This option WILL override the PROM bootargs setting!
509 source "drivers/base/Kconfig"
511 source "drivers/video/Kconfig"
513 source "drivers/serial/Kconfig"
515 source "drivers/sbus/char/Kconfig"
517 source "drivers/mtd/Kconfig"
519 source "drivers/block/Kconfig"
521 source "drivers/ide/Kconfig"
523 source "drivers/scsi/Kconfig"
525 source "drivers/fc4/Kconfig"
527 source "drivers/md/Kconfig"
530 source "drivers/message/fusion/Kconfig"
533 source "drivers/ieee1394/Kconfig"
537 source "drivers/isdn/Kconfig"
539 source "drivers/telephony/Kconfig"
541 # This one must be before the filesystem configs. -DaveM
543 menu "Unix98 PTY support"
546 bool "Unix98 PTY support"
548 A pseudo terminal (PTY) is a software device consisting of two
549 halves: a master and a slave. The slave device behaves identical to
550 a physical terminal; the master device is used by a process to
551 read data from and write data to the slave, thereby emulating a
552 terminal. Typical programs for the master side are telnet servers
555 Linux has traditionally used the BSD-like names /dev/ptyxx for
556 masters and /dev/ttyxx for slaves of pseudo terminals. This scheme
557 has a number of problems. The GNU C library glibc 2.1 and later,
558 however, supports the Unix98 naming standard: in order to acquire a
559 pseudo terminal, a process opens /dev/ptmx; the number of the pseudo
560 terminal is then made available to the process and the pseudo
561 terminal slave can be accessed as /dev/pts/<number>. What was
562 traditionally /dev/ttyp2 will then be /dev/pts/2, for example.
564 The entries in /dev/pts/ are created on the fly by a virtual
565 file system; therefore, if you say Y here you should say Y to
566 "/dev/pts file system for Unix98 PTYs" as well.
568 If you want to say Y here, you need to have the C library glibc 2.1
569 or later (equal to libc-6.1, check with "ls -l /lib/libc.so.*").
570 Read the instructions in <file:Documentation/Changes> pertaining to
571 pseudo terminals. It's safe to say N.
573 config UNIX98_PTY_COUNT
574 int "Maximum number of Unix98 PTYs in use (0-2048)"
575 depends on UNIX98_PTYS
578 The maximum number of Unix98 PTYs that can be used at any one time.
579 The default is 256, and should be enough for desktop systems. Server
580 machines which support incoming telnet/rlogin/ssh connections and/or
581 serve several X terminals may want to increase this: every incoming
582 connection and every xterm uses up one PTY.
584 When not in use, each additional set of 256 PTYs occupy
585 approximately 8 KB of kernel memory on 32-bit architectures.
589 menu "XFree86 DRI support"
592 bool "Direct Rendering Manager (XFree86 DRI support)"
594 Kernel-level support for the Direct Rendering Infrastructure (DRI)
595 introduced in XFree86 4.0. If you say Y here, you need to select
596 the module that's right for your graphics card from the list below.
597 These modules provide support for synchronization, security, and
598 DMA transfers. Please see <http://dri.sourceforge.net/> for more
599 details. You should also select and configure AGP
600 (/dev/agpgart) support.
603 tristate "Creator/Creator3D"
604 depends on DRM && BROKEN
606 Choose this option if you have one of Sun's Creator3D-based graphics
607 and frame buffer cards. Product page at
608 <http://www.sun.com/desktop/products/Graphics/creator3d.html>.
611 tristate "3dfx Banshee/Voodoo3+"
614 Choose this option if you have a 3dfx Banshee or Voodoo3 (or later),
615 graphics card. If M is selected, the module will be called tdfx.
618 tristate "ATI Rage 128"
621 Choose this option if you have an ATI Rage 128 graphics card. If M
622 is selected, the module will be called r128. AGP support for
623 this card is strongly suggested (unless you have a PCI version).
627 source "drivers/input/Kconfig"
629 source "drivers/i2c/Kconfig"
633 source "drivers/media/Kconfig"
635 source "sound/Kconfig"
637 source "drivers/usb/Kconfig"
639 source "drivers/infiniband/Kconfig"
641 source "drivers/char/watchdog/Kconfig"
643 source "arch/sparc64/oprofile/Kconfig"
645 source "arch/sparc64/Kconfig.debug"
647 source "security/Kconfig"
649 source "crypto/Kconfig"