Merge commit 'jk/jk-merge'
[linux-2.6] / arch / sparc / Kconfig
1 # For a description of the syntax of this configuration file,
2 # see Documentation/kbuild/kconfig-language.txt.
3 #
4
5 mainmenu "Linux/SPARC Kernel Configuration"
6
7 config MMU
8         bool
9         default y
10
11 config HIGHMEM
12         bool
13         default y
14
15 config ZONE_DMA
16         bool
17         default y
18
19 config GENERIC_ISA_DMA
20         bool
21         default y
22
23 config ARCH_NO_VIRT_TO_BUS
24         def_bool y
25
26 config OF
27         def_bool y
28
29 config HZ
30         int
31         default 100
32
33 source "init/Kconfig"
34
35 menu "General machine setup"
36
37 config SMP
38         bool "Symmetric multi-processing support (does not work on sun4/sun4c)"
39         ---help---
40           This enables support for systems with more than one CPU. If you have
41           a system with only one CPU, say N. If you have a system with more
42           than one CPU, say Y.
43
44           If you say N here, the kernel will run on single and multiprocessor
45           machines, but will use only one CPU of a multiprocessor machine. If
46           you say Y here, the kernel will run on many, but not all,
47           singleprocessor machines. On a singleprocessor machine, the kernel
48           will run faster if you say N here.
49
50           People using multiprocessor machines who say Y here should also say
51           Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
52           Management" code will be disabled if you say Y here.
53
54           See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
55           available at <http://www.tldp.org/docs.html#howto>.
56
57           If you don't know what to do here, say N.
58
59 config NR_CPUS
60         int "Maximum number of CPUs (2-32)"
61         range 2 32
62         depends on SMP
63         default "32"
64
65 config SPARC
66         bool
67         default y
68         select HAVE_IDE
69         select HAVE_OPROFILE
70         select HAVE_ARCH_KGDB if !SMP
71
72 # Identify this as a Sparc32 build
73 config SPARC32
74         bool
75         default y
76         help
77           SPARC is a family of RISC microprocessors designed and marketed by
78           Sun Microsystems, incorporated.  They are very widely found in Sun
79           workstations and clones. This port covers the original 32-bit SPARC;
80           it is old and stable and usually considered one of the "big three"
81           along with the Intel and Alpha ports.  The UltraLinux project
82           maintains both the SPARC32 and SPARC64 ports; its web page is
83           available at <http://www.ultralinux.org/>.
84
85 # Global things across all Sun machines.
86 config ISA
87         bool
88         help
89           ISA is found on Espresso only and is not supported currently.
90           Say N
91
92 config EISA
93         bool
94         help
95           EISA is not supported.
96           Say N
97
98 config MCA
99         bool
100         help
101           MCA is not supported.
102           Say N
103
104 config PCMCIA
105         tristate
106         ---help---
107           Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
108           computer.  These are credit-card size devices such as network cards,
109           modems or hard drives often used with laptops computers.  There are
110           actually two varieties of these cards: the older 16 bit PCMCIA cards
111           and the newer 32 bit CardBus cards.  If you want to use CardBus
112           cards, you need to say Y here and also to "CardBus support" below.
113
114           To use your PC-cards, you will need supporting software from David
115           Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
116           for location).  Please also read the PCMCIA-HOWTO, available from
117           <http://www.tldp.org/docs.html#howto>.
118
119           To compile this driver as modules, choose M here: the
120           modules will be called pcmcia_core and ds.
121
122 config SBUS
123         bool
124         default y
125
126 config SBUSCHAR
127         bool
128         default y
129
130 config SERIAL_CONSOLE
131         bool
132         default y
133         ---help---
134           If you say Y here, it will be possible to use a serial port as the
135           system console (the system console is the device which receives all
136           kernel messages and warnings and which allows logins in single user
137           mode). This could be useful if some terminal or printer is connected
138           to that serial port.
139
140           Even if you say Y here, the currently visible virtual console
141           (/dev/tty0) will still be used as the system console by default, but
142           you can alter that using a kernel command line option such as
143           "console=ttyS1". (Try "man bootparam" or see the documentation of
144           your boot loader (silo) about how to pass options to the kernel at
145           boot time.)
146
147           If you don't have a graphics card installed and you say Y here, the
148           kernel will automatically use the first serial line, /dev/ttyS0, as
149           system console.
150
151           If unsure, say N.
152
153 config SUN_AUXIO
154         bool
155         default y
156
157 config SUN_IO
158         bool
159         default y
160
161 config RWSEM_GENERIC_SPINLOCK
162         bool
163         default y
164
165 config RWSEM_XCHGADD_ALGORITHM
166         bool
167
168 config GENERIC_FIND_NEXT_BIT
169         bool
170         default y
171
172 config GENERIC_HWEIGHT
173         bool
174         default y
175
176 config GENERIC_CALIBRATE_DELAY
177         bool
178         default y
179
180 config ARCH_MAY_HAVE_PC_FDC
181         bool
182         default y
183
184 config ARCH_HAS_ILOG2_U32
185         bool
186         default n
187
188 config ARCH_HAS_ILOG2_U64
189         bool
190         default n
191
192 config EMULATED_CMPXCHG
193         bool
194         default y
195         help
196           Sparc32 does not have a CAS instruction like sparc64. cmpxchg()
197           is emulated, and therefore it is not completely atomic.
198
199 config SUN_PM
200         bool
201         default y
202         help
203           Enable power management and CPU standby features on supported
204           SPARC platforms.
205
206 config SUN4
207         bool "Support for SUN4 machines (disables SUN4[CDM] support)"
208         depends on !SMP
209         default n
210         help
211           Say Y here if, and only if, your machine is a sun4. Note that
212           a kernel compiled with this option will run only on sun4.
213           (And the current version will probably work only on sun4/330.)
214
215 if !SUN4
216
217 config PCI
218         bool "Support for PCI and PS/2 keyboard/mouse"
219         help
220           CONFIG_PCI is needed for all JavaStation's (including MrCoffee),
221           CP-1200, JavaEngine-1, Corona, Red October, and Serengeti SGSC.
222           All of these platforms are extremely obscure, so say N if unsure.
223
224 config PCI_SYSCALL
225         def_bool PCI
226
227 source "drivers/pci/Kconfig"
228
229 endif
230
231 config NO_DMA
232         def_bool !PCI
233
234 config SUN_OPENPROMFS
235         tristate "Openprom tree appears in /proc/openprom"
236         help
237           If you say Y, the OpenPROM device tree will be available as a
238           virtual file system, which you can mount to /proc/openprom by "mount
239           -t openpromfs none /proc/openprom".
240
241           To compile the /proc/openprom support as a module, choose M here: the
242           module will be called openpromfs.
243
244           Only choose N if you know in advance that you will not need to modify
245           OpenPROM settings on the running system.
246
247 config SPARC_LED
248         tristate "Sun4m LED driver"
249         help
250           This driver toggles the front-panel LED on sun4m systems
251           in a user-specifiable manner.  Its state can be probed
252           by reading /proc/led and its blinking mode can be changed
253           via writes to /proc/led
254
255 source "fs/Kconfig.binfmt"
256
257 source "mm/Kconfig"
258
259 endmenu
260
261 source "net/Kconfig"
262
263 source "drivers/Kconfig"
264
265 if !SUN4
266 source "drivers/sbus/char/Kconfig"
267 endif
268
269 # This one must be before the filesystem configs. -DaveM
270
271 menu "Unix98 PTY support"
272
273 config UNIX98_PTYS
274         bool "Unix98 PTY support"
275         ---help---
276           A pseudo terminal (PTY) is a software device consisting of two
277           halves: a master and a slave. The slave device behaves identical to
278           a physical terminal; the master device is used by a process to
279           read data from and write data to the slave, thereby emulating a
280           terminal. Typical programs for the master side are telnet servers
281           and xterms.
282
283           Linux has traditionally used the BSD-like names /dev/ptyxx for
284           masters and /dev/ttyxx for slaves of pseudo terminals. This scheme
285           has a number of problems. The GNU C library glibc 2.1 and later,
286           however, supports the Unix98 naming standard: in order to acquire a
287           pseudo terminal, a process opens /dev/ptmx; the number of the pseudo
288           terminal is then made available to the process and the pseudo
289           terminal slave can be accessed as /dev/pts/<number>. What was
290           traditionally /dev/ttyp2 will then be /dev/pts/2, for example.
291
292           The entries in /dev/pts/ are created on the fly by a virtual
293           file system; therefore, if you say Y here you should say Y to
294           "/dev/pts file system for Unix98 PTYs" as well.
295
296           If you want to say Y here, you need to have the C library glibc 2.1
297           or later (equal to libc-6.1, check with "ls -l /lib/libc.so.*").
298           Read the instructions in <file:Documentation/Changes> pertaining to
299           pseudo terminals. It's safe to say N.
300
301 config UNIX98_PTY_COUNT
302         int "Maximum number of Unix98 PTYs in use (0-2048)"
303         depends on UNIX98_PTYS
304         default "256"
305         help
306           The maximum number of Unix98 PTYs that can be used at any one time.
307           The default is 256, and should be enough for desktop systems. Server
308           machines which support incoming telnet/rlogin/ssh connections and/or
309           serve several X terminals may want to increase this: every incoming
310           connection and every xterm uses up one PTY.
311
312           When not in use, each additional set of 256 PTYs occupy
313           approximately 8 KB of kernel memory on 32-bit architectures.
314
315 endmenu
316
317 source "fs/Kconfig"
318
319 source "arch/sparc/Kconfig.debug"
320
321 source "security/Kconfig"
322
323 source "crypto/Kconfig"
324
325 source "lib/Kconfig"