Kconfig 21 KB

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