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.)
124 bool "Symmetric multi-processing support"
126 This enables support for systems with more than one CPU. If you have
127 a system with only one CPU, say N. If you have a system with more than
130 If you say N here, the kernel will run on single and multiprocessor
131 machines, but will use only one CPU of a multiprocessor machine. If
132 you say Y here, the kernel will run on many, but not all,
133 singleprocessor machines. On a singleprocessor machine, the kernel
134 will run faster if you say N here.
136 People using multiprocessor machines who say Y here should also say
137 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
138 Management" code will be disabled if you say Y here.
140 See also the <file:Documentation/smp.txt>,
141 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
142 <http://www.tldp.org/docs.html#howto>.
144 If you don't know what to do here, say N.
147 bool "Preemptible Kernel"
149 This option reduces the latency of the kernel when reacting to
150 real-time or interactive events by allowing a low priority process to
151 be preempted even if it is in kernel mode executing a system call.
152 This allows applications to run more reliably even when the system is
155 Say Y here if you are building a kernel for a desktop, embedded
156 or real-time system. Say N if you are unsure.
159 int "Maximum number of CPUs (2-64)"
164 source "drivers/cpufreq/Kconfig"
167 tristate "UltraSPARC-III CPU Frequency driver"
169 select CPU_FREQ_TABLE
171 This adds the CPUFreq driver for UltraSPARC-III processors.
173 For details, take a look at <file:Documentation/cpu-freq>.
178 tristate "UltraSPARC-IIe CPU Frequency driver"
180 select CPU_FREQ_TABLE
182 This adds the CPUFreq driver for UltraSPARC-IIe processors.
184 For details, take a look at <file:Documentation/cpu-freq>.
188 # Identify this as a Sparc64 build
193 SPARC is a family of RISC microprocessors designed and marketed by
194 Sun Microsystems, incorporated. This port covers the newer 64-bit
195 UltraSPARC. The UltraLinux project maintains both the SPARC32 and
196 SPARC64 ports; its web page is available at
197 <http://www.ultralinux.org/>.
199 # Global things across all Sun machines.
200 config RWSEM_GENERIC_SPINLOCK
203 config RWSEM_XCHGADD_ALGORITHM
207 config GENERIC_CALIBRATE_DELAY
212 prompt "SPARC64 Huge TLB Page Size"
213 depends on HUGETLB_PAGE
214 default HUGETLB_PAGE_SIZE_4MB
216 config HUGETLB_PAGE_SIZE_4MB
219 config HUGETLB_PAGE_SIZE_512K
220 depends on !SPARC64_PAGE_SIZE_4MB
223 config HUGETLB_PAGE_SIZE_64K
224 depends on !SPARC64_PAGE_SIZE_4MB && !SPARC64_PAGE_SIZE_512K
229 config GENERIC_ISA_DMA
236 Find out whether you have ISA slots on your motherboard. ISA is the
237 name of a bus system, i.e. the way the CPU talks to the other stuff
238 inside your box. Other bus systems are PCI, EISA, MicroChannel
239 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
240 newer boards don't support it. If you have ISA, say Y, otherwise N.
245 Say Y here if you would like support for ISA Plug and Play devices.
246 Some information is in <file:Documentation/isapnp.txt>.
248 To compile this driver as a module, choose M here: the
249 module will be called isapnp.
256 The Extended Industry Standard Architecture (EISA) bus was
257 developed as an open alternative to the IBM MicroChannel bus.
259 The EISA bus provided some of the features of the IBM MicroChannel
260 bus while maintaining backward compatibility with cards made for
261 the older ISA bus. The EISA bus saw limited use between 1988 and
262 1995 when it was made obsolete by the PCI bus.
264 Say Y here if you are building a kernel for an EISA-based machine.
271 MicroChannel Architecture is found in some IBM PS/2 machines and
272 laptops. It is a bus system similar to PCI or ISA. See
273 <file:Documentation/mca.txt> (and especially the web page given
274 there) before attempting to build an MCA bus kernel.
279 Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
280 computer. These are credit-card size devices such as network cards,
281 modems or hard drives often used with laptops computers. There are
282 actually two varieties of these cards: the older 16 bit PCMCIA cards
283 and the newer 32 bit CardBus cards. If you want to use CardBus
284 cards, you need to say Y here and also to "CardBus support" below.
286 To use your PC-cards, you will need supporting software from David
287 Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
288 for location). Please also read the PCMCIA-HOWTO, available from
289 <http://www.tldp.org/docs.html#howto>.
291 To compile this driver as modules, choose M here: the
292 modules will be called pcmcia_core and ds.
313 Find out whether you have a PCI motherboard. PCI is the name of a
314 bus system, i.e. the way the CPU talks to the other stuff inside
315 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
316 VESA. If you have PCI, say Y, otherwise N.
318 The PCI-HOWTO, available from
319 <http://www.tldp.org/docs.html#howto>, contains valuable
320 information about which PCI hardware does work under Linux and which
332 If you say Y here and create a character special file /dev/rtc with
333 major number 10 and minor number 135 using mknod ("man mknod"), you
334 will get access to the real time clock (or hardware clock) built
337 Every PC has such a clock built in. It can be used to generate
338 signals from as low as 1Hz up to 8192Hz, and can also be used
339 as a 24 hour alarm. It reports status information via the file
340 /proc/driver/rtc and its behaviour is set by various ioctls on
343 If you run Linux on a multiprocessor machine and said Y to
344 "Symmetric Multi Processing" above, you should say Y here to read
345 and set the RTC in an SMP compatible fashion.
347 If you think you have a use for such a device (such as periodic data
348 sampling), then say Y here, and read <file:Documentation/rtc.txt>
351 To compile this driver as a module, choose M here: the
352 module will be called rtc.
354 source "drivers/pci/Kconfig"
356 config SUN_OPENPROMFS
357 tristate "Openprom tree appears in /proc/openprom"
359 If you say Y, the OpenPROM device tree will be available as a
360 virtual file system, which you can mount to /proc/openprom by "mount
361 -t openpromfs none /proc/openprom".
363 To compile the /proc/openprom support as a module, choose M here: the
364 module will be called openpromfs. If unsure, choose M.
366 config SPARC32_COMPAT
367 bool "Kernel support for Linux/Sparc 32bit binary compatibility"
369 This allows you to run 32-bit binaries on your Ultra.
370 Everybody wants this; say Y.
374 depends on SPARC32_COMPAT
379 depends on SPARC32_COMPAT
383 tristate "Kernel support for 32-bit ELF binaries"
384 depends on SPARC32_COMPAT
386 This allows you to run 32-bit Linux/ELF binaries on your Ultra.
387 Everybody wants this; say Y.
390 bool "Kernel support for 32-bit (ie. SunOS) a.out binaries"
391 depends on SPARC32_COMPAT
393 This allows you to run 32-bit a.out format binaries on your Ultra.
394 If you want to run SunOS binaries (see SunOS binary emulation below)
395 or other a.out binaries, say Y. If unsure, say N.
397 source "fs/Kconfig.binfmt"
400 bool "SunOS binary emulation"
401 depends on BINFMT_AOUT32
403 This allows you to run most SunOS binaries. If you want to do this,
404 say Y here and place appropriate files in /usr/gnemul/sunos. See
405 <http://www.ultralinux.org/faq.html> for more information. If you
406 want to run SunOS binaries on an Ultra you must also say Y to
407 "Kernel support for 32-bit a.out binaries" above.
410 tristate "Solaris binary emulation (EXPERIMENTAL)"
411 depends on SPARC32_COMPAT && EXPERIMENTAL
413 This is experimental code which will enable you to run (many)
414 Solaris binaries on your SPARC Linux machine.
416 To compile this code as a module, choose M here: the
417 module will be called solaris.
419 source "drivers/parport/Kconfig"
422 tristate "Parallel printer support"
425 If you intend to attach a printer to the parallel port of your Linux
426 box (as opposed to using a serial printer; if the connector at the
427 printer has 9 or 25 holes ["female"], then it's serial), say Y.
428 Also read the Printing-HOWTO, available from
429 <http://www.tldp.org/docs.html#howto>.
431 It is possible to share one parallel port among several devices
432 (e.g. printer and ZIP drive) and it is safe to compile the
433 corresponding drivers into the kernel.
434 To compile this driver as a module, choose M here and read
435 <file:Documentation/parport.txt>. The module will be called lp.
437 If you have several parallel ports, you can specify which ports to
438 use with the "lp" kernel command line option. (Try "man bootparam"
439 or see the documentation of your boot loader (lilo or loadlin) about
440 how to pass options to the kernel at boot time.) The syntax of the
441 "lp" command line option can be found in <file:drivers/char/lp.c>.
443 If you have more than 8 printers, you need to increase the LP_NO
444 macro in lp.c and the PARPORT_MAX macro in parport.h.
447 tristate "SUNW, envctrl support"
450 Kernel support for temperature and fan monitoring on Sun SME
453 To compile this driver as a module, choose M here: the
454 module will be called envctrl.
457 tristate "7-Segment Display support"
460 This is the driver for the 7-segment display and LED present on
461 Sun Microsystems CompactPCI models CP1400 and CP1500.
463 To compile this driver as a module, choose M here: the
464 module will be called display7seg.
466 If you do not have a CompactPCI model CP1400 or CP1500, or
467 another UltraSPARC-IIi-cEngine boardset with a 7-segment display,
468 you should say N to this option.
471 bool "Default bootloader kernel arguments"
474 string "Initial kernel command string"
475 depends on CMDLINE_BOOL
476 default "console=ttyS0,9600 root=/dev/sda1"
478 Say Y here if you want to be able to pass default arguments to
479 the kernel. This will be overridden by the bootloader, if you
480 use one (such as SILO). This is most useful if you want to boot
481 a kernel from TFTP, and want default options to be available
482 with having them passed on the command line.
484 NOTE: This option WILL override the PROM bootargs setting!
488 source "drivers/base/Kconfig"
490 source "drivers/video/Kconfig"
492 source "drivers/serial/Kconfig"
494 source "drivers/sbus/char/Kconfig"
496 source "drivers/mtd/Kconfig"
498 source "drivers/block/Kconfig"
500 source "drivers/ide/Kconfig"
502 source "drivers/scsi/Kconfig"
504 source "drivers/fc4/Kconfig"
506 source "drivers/md/Kconfig"
509 source "drivers/message/fusion/Kconfig"
512 source "drivers/ieee1394/Kconfig"
516 source "drivers/isdn/Kconfig"
518 source "drivers/telephony/Kconfig"
520 # This one must be before the filesystem configs. -DaveM
522 menu "Unix98 PTY support"
525 bool "Unix98 PTY support"
527 A pseudo terminal (PTY) is a software device consisting of two
528 halves: a master and a slave. The slave device behaves identical to
529 a physical terminal; the master device is used by a process to
530 read data from and write data to the slave, thereby emulating a
531 terminal. Typical programs for the master side are telnet servers
534 Linux has traditionally used the BSD-like names /dev/ptyxx for
535 masters and /dev/ttyxx for slaves of pseudo terminals. This scheme
536 has a number of problems. The GNU C library glibc 2.1 and later,
537 however, supports the Unix98 naming standard: in order to acquire a
538 pseudo terminal, a process opens /dev/ptmx; the number of the pseudo
539 terminal is then made available to the process and the pseudo
540 terminal slave can be accessed as /dev/pts/<number>. What was
541 traditionally /dev/ttyp2 will then be /dev/pts/2, for example.
543 The entries in /dev/pts/ are created on the fly by a virtual
544 file system; therefore, if you say Y here you should say Y to
545 "/dev/pts file system for Unix98 PTYs" as well.
547 If you want to say Y here, you need to have the C library glibc 2.1
548 or later (equal to libc-6.1, check with "ls -l /lib/libc.so.*").
549 Read the instructions in <file:Documentation/Changes> pertaining to
550 pseudo terminals. It's safe to say N.
552 config UNIX98_PTY_COUNT
553 int "Maximum number of Unix98 PTYs in use (0-2048)"
554 depends on UNIX98_PTYS
557 The maximum number of Unix98 PTYs that can be used at any one time.
558 The default is 256, and should be enough for desktop systems. Server
559 machines which support incoming telnet/rlogin/ssh connections and/or
560 serve several X terminals may want to increase this: every incoming
561 connection and every xterm uses up one PTY.
563 When not in use, each additional set of 256 PTYs occupy
564 approximately 8 KB of kernel memory on 32-bit architectures.
568 menu "XFree86 DRI support"
571 bool "Direct Rendering Manager (XFree86 DRI support)"
573 Kernel-level support for the Direct Rendering Infrastructure (DRI)
574 introduced in XFree86 4.0. If you say Y here, you need to select
575 the module that's right for your graphics card from the list below.
576 These modules provide support for synchronization, security, and
577 DMA transfers. Please see <http://dri.sourceforge.net/> for more
578 details. You should also select and configure AGP
579 (/dev/agpgart) support.
582 tristate "Creator/Creator3D"
583 depends on DRM && BROKEN
585 Choose this option if you have one of Sun's Creator3D-based graphics
586 and frame buffer cards. Product page at
587 <http://www.sun.com/desktop/products/Graphics/creator3d.html>.
590 tristate "3dfx Banshee/Voodoo3+"
593 Choose this option if you have a 3dfx Banshee or Voodoo3 (or later),
594 graphics card. If M is selected, the module will be called tdfx.
597 tristate "ATI Rage 128"
600 Choose this option if you have an ATI Rage 128 graphics card. If M
601 is selected, the module will be called r128. AGP support for
602 this card is strongly suggested (unless you have a PCI version).
606 source "drivers/input/Kconfig"
608 source "drivers/i2c/Kconfig"
612 source "drivers/media/Kconfig"
614 source "sound/Kconfig"
616 source "drivers/usb/Kconfig"
618 source "drivers/infiniband/Kconfig"
620 source "drivers/char/watchdog/Kconfig"
622 source "arch/sparc64/oprofile/Kconfig"
624 source "arch/sparc64/Kconfig.debug"
626 source "security/Kconfig"
628 source "crypto/Kconfig"