SECCOMP for MIPS.
[safe/jmp/linux-2.6] / arch / mips / Kconfig
1 config MIPS
2         bool
3         default y
4         # Horrible source of confusion.  Die, die, die ...
5         select EMBEDDED
6
7 # shouldn't it be per-subarchitecture?
8 config ARCH_MAY_HAVE_PC_FDC
9         bool
10         default y
11
12 mainmenu "Linux/MIPS Kernel Configuration"
13
14 source "init/Kconfig"
15
16 config SYS_SUPPORTS_32BIT_KERNEL
17         bool
18 config SYS_SUPPORTS_64BIT_KERNEL
19         bool
20 config CPU_SUPPORTS_32BIT_KERNEL
21         bool
22 config CPU_SUPPORTS_64BIT_KERNEL
23         bool
24
25 menu "Kernel type"
26
27 choice
28
29         prompt "Kernel code model"
30         help
31           You should only select this option if you have a workload that
32           actually benefits from 64-bit processing or if your machine has
33           large memory.  You will only be presented a single option in this
34           menu if your system does not support both 32-bit and 64-bit kernels.
35
36 config 32BIT
37         bool "32-bit kernel"
38         depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
39         select TRAD_SIGNALS
40         help
41           Select this option if you want to build a 32-bit kernel.
42
43 config 64BIT
44         bool "64-bit kernel"
45         depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
46         help
47           Select this option if you want to build a 64-bit kernel.
48
49 endchoice
50
51 endmenu
52
53 menu "Machine selection"
54
55 config MACH_JAZZ
56         bool "Support for the Jazz family of machines"
57         select ARC
58         select ARC32
59         select GENERIC_ISA_DMA
60         select I8259
61         select ISA
62         select SYS_SUPPORTS_32BIT_KERNEL
63         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
64         help
65          This a family of machines based on the MIPS R4030 chipset which was
66          used by several vendors to build RISC/os and Windows NT workstations.
67          Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
68          Olivetti M700-10 workstations.
69
70 config ACER_PICA_61
71         bool "Support for Acer PICA 1 chipset (EXPERIMENTAL)"
72         depends on MACH_JAZZ && EXPERIMENTAL
73         select DMA_NONCOHERENT
74         help
75           This is a machine with a R4400 133/150 MHz CPU. To compile a Linux
76           kernel that runs on these, say Y here. For details about Linux on
77           the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at
78           <http://www.linux-mips.org/>.
79
80 config MIPS_MAGNUM_4000
81         bool "Support for MIPS Magnum 4000"
82         depends on MACH_JAZZ
83         select DMA_NONCOHERENT
84         help
85           This is a machine with a R4000 100 MHz CPU. To compile a Linux
86           kernel that runs on these, say Y here. For details about Linux on
87           the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at
88           <http://www.linux-mips.org/>.
89
90 config OLIVETTI_M700
91         bool "Support for Olivetti M700-10"
92         depends on MACH_JAZZ
93         select DMA_NONCOHERENT
94         help
95           This is a machine with a R4000 100 MHz CPU. To compile a Linux
96           kernel that runs on these, say Y here. For details about Linux on
97           the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at
98           <http://www.linux-mips.org/>.
99
100 config MACH_VR41XX
101         bool "Support for NEC VR4100 series based machines"
102         select SYS_SUPPORTS_32BIT_KERNEL
103         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
104
105 config NEC_CMBVR4133
106         bool "Support for NEC CMB-VR4133"
107         depends on MACH_VR41XX
108         select CPU_VR41XX
109         select DMA_NONCOHERENT
110         select IRQ_CPU
111         select HW_HAS_PCI
112
113 config ROCKHOPPER
114         bool "Support for Rockhopper baseboard"
115         depends on NEC_CMBVR4133
116         select I8259
117         select HAVE_STD_PC_SERIAL_PORT
118
119 config CASIO_E55
120         bool "Support for CASIO CASSIOPEIA E-10/15/55/65"
121         depends on MACH_VR41XX
122         select CPU_LITTLE_ENDIAN
123         select DMA_NONCOHERENT
124         select IRQ_CPU
125         select ISA
126
127 config IBM_WORKPAD
128         bool "Support for IBM WorkPad z50"
129         depends on MACH_VR41XX
130         select CPU_LITTLE_ENDIAN
131         select DMA_NONCOHERENT
132         select IRQ_CPU
133         select ISA
134
135 config TANBAC_TB022X
136         bool "Support for TANBAC VR4131 multichip module and TANBAC VR4131DIMM"
137         depends on MACH_VR41XX
138         select CPU_LITTLE_ENDIAN
139         select DMA_NONCOHERENT
140         select IRQ_CPU
141         select HW_HAS_PCI
142         help
143           The TANBAC VR4131 multichip module(TB0225) and
144           the TANBAC VR4131DIMM(TB0229) are MIPS-based platforms
145           manufactured by TANBAC.
146           Please refer to <http://www.tanbac.co.jp/>
147           about VR4131 multichip module and VR4131DIMM.
148
149 config TANBAC_TB0226
150         bool "Support for TANBAC Mbase(TB0226)"
151         depends on TANBAC_TB022X
152         select GPIO_VR41XX
153         help
154           The TANBAC Mbase(TB0226) is a MIPS-based platform manufactured by TANBAC.
155           Please refer to <http://www.tanbac.co.jp/> about Mbase.
156
157 config TANBAC_TB0287
158         bool "Support for TANBAC Mini-ITX DIMM base(TB0287)"
159         depends on TANBAC_TB022X
160         help
161           The TANBAC Mini-ITX DIMM base(TB0287) is a MIPS-based platform manufactured by TANBAC.
162           Please refer to <http://www.tanbac.co.jp/> about Mini-ITX DIMM base.
163
164 config VICTOR_MPC30X
165         bool "Support for Victor MP-C303/304"
166         depends on MACH_VR41XX
167         select CPU_LITTLE_ENDIAN
168         select DMA_NONCOHERENT
169         select IRQ_CPU
170         select HW_HAS_PCI
171
172 config ZAO_CAPCELLA
173         bool "Support for ZAO Networks Capcella"
174         depends on MACH_VR41XX
175         select CPU_LITTLE_ENDIAN
176         select DMA_NONCOHERENT
177         select IRQ_CPU
178         select HW_HAS_PCI
179
180 config PCI_VR41XX
181         bool "Add PCI control unit support of NEC VR4100 series"
182         depends on MACH_VR41XX && HW_HAS_PCI
183         default y
184         select PCI
185
186 config VRC4173
187         tristate "Add NEC VRC4173 companion chip support"
188         depends on MACH_VR41XX && PCI_VR41XX
189         ---help---
190           The NEC VRC4173 is a companion chip for NEC VR4122/VR4131.
191
192 config TOSHIBA_JMR3927
193         bool "Support for Toshiba JMR-TX3927 board"
194         select DMA_NONCOHERENT
195         select HW_HAS_PCI
196         select SWAP_IO_SPACE
197         select SYS_SUPPORTS_32BIT_KERNEL
198
199 config MIPS_COBALT
200         bool "Support for Cobalt Server"
201         depends on EXPERIMENTAL
202         select DMA_NONCOHERENT
203         select HW_HAS_PCI
204         select I8259
205         select IRQ_CPU
206         select SYS_SUPPORTS_32BIT_KERNEL
207         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
208
209 config MACH_DECSTATION
210         bool "Support for DECstations"
211         select BOOT_ELF32
212         select DMA_NONCOHERENT
213         select EARLY_PRINTK
214         select IRQ_CPU
215         select SYS_SUPPORTS_32BIT_KERNEL
216         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
217         ---help---
218           This enables support for DEC's MIPS based workstations.  For details
219           see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
220           DECstation porting pages on <http://decstation.unix-ag.org/>.
221
222           If you have one of the following DECstation Models you definitely
223           want to choose R4xx0 for the CPU Type:
224
225                 DECstation 5000/50
226                 DECstation 5000/150
227                 DECstation 5000/260
228                 DECsystem 5900/260
229
230           otherwise choose R3000.
231
232 config MIPS_EV64120
233         bool "Support for Galileo EV64120 Evaluation board (EXPERIMENTAL)"
234         depends on EXPERIMENTAL
235         select DMA_NONCOHERENT
236         select HW_HAS_PCI
237         select MIPS_GT64120
238         select SYS_SUPPORTS_32BIT_KERNEL
239         select SYS_SUPPORTS_64BIT_KERNEL
240         help
241           This is an evaluation board based on the Galileo GT-64120
242           single-chip system controller that contains a MIPS R5000 compatible
243           core running at 75/100MHz.  Their website is located at
244           <http://www.marvell.com/>.  Say Y here if you wish to build a
245           kernel for this platform.
246
247 config EVB_PCI1
248         bool "Enable Second PCI (PCI1)"
249         depends on MIPS_EV64120
250
251 config MIPS_EV96100
252         bool "Support for Galileo EV96100 Evaluation board (EXPERIMENTAL)"
253         depends on EXPERIMENTAL
254         select DMA_NONCOHERENT
255         select HW_HAS_PCI
256         select IRQ_CPU
257         select MIPS_GT96100
258         select RM7000_CPU_SCACHE
259         select SWAP_IO_SPACE
260         select SYS_SUPPORTS_32BIT_KERNEL
261         select SYS_SUPPORTS_64BIT_KERNEL
262         help
263           This is an evaluation board based on the Galileo GT-96100 LAN/WAN
264           communications controllers containing a MIPS R5000 compatible core
265           running at 83MHz. Their website is <http://www.marvell.com/>. Say Y
266           here if you wish to build a kernel for this platform.
267
268 config MIPS_IVR
269         bool "Support for Globespan IVR board"
270         select DMA_NONCOHERENT
271         select HW_HAS_PCI
272         select SYS_SUPPORTS_32BIT_KERNEL
273         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
274         help
275           This is an evaluation board built by Globespan to showcase thir
276           iVR (Internet Video Recorder) design. It utilizes a QED RM5231
277           R5000 MIPS core. More information can be found out their website
278           located at <http://www.globespan.net/>. Say Y here if you wish to
279           build a kernel for this platform.
280
281 config LASAT
282         bool "Support for LASAT Networks platforms"
283         select DMA_NONCOHERENT
284         select HW_HAS_PCI
285         select MIPS_GT64120
286         select R5000_CPU_SCACHE
287         select SYS_SUPPORTS_32BIT_KERNEL
288         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
289
290 config PICVUE
291         tristate "PICVUE LCD display driver"
292         depends on LASAT
293
294 config PICVUE_PROC
295         tristate "PICVUE LCD display driver /proc interface"
296         depends on PICVUE
297
298 config DS1603
299         bool "DS1603 RTC driver"
300         depends on LASAT
301
302 config LASAT_SYSCTL
303         bool "LASAT sysctl interface"
304         depends on LASAT
305
306 config MIPS_ITE8172
307         bool "Support for ITE 8172G board"
308         select DMA_NONCOHERENT
309         select HW_HAS_PCI
310         select SYS_SUPPORTS_32BIT_KERNEL
311         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
312         help
313           Ths is an evaluation board made by ITE <http://www.ite.com.tw/>
314           with ATX form factor that utilizes a MIPS R5000 to work with its
315           ITE8172G companion internet appliance chip. The MIPS core can be
316           either a NEC Vr5432 or QED RM5231. Say Y here if you wish to build
317           a kernel for this platform.
318
319 config IT8172_REVC
320         bool "Support for older IT8172 (Rev C)"
321         depends on MIPS_ITE8172
322         help
323           Say Y here to support the older, Revision C version of the Integrated
324           Technology Express, Inc. ITE8172 SBC.  Vendor page at
325           <http://www.ite.com.tw/ia/brief_it8172bsp.htm>; picture of the
326           board at <http://www.mvista.com/partners/semiconductor/ite.html>.
327
328 config MIPS_ATLAS
329         bool "Support for MIPS Atlas board"
330         select BOOT_ELF32
331         select DMA_NONCOHERENT
332         select HW_HAS_PCI
333         select MIPS_GT64120
334         select RM7000_CPU_SCACHE
335         select SWAP_IO_SPACE
336         select SYS_SUPPORTS_32BIT_KERNEL
337         select SYS_SUPPORTS_64BIT_KERNEL
338         help
339           This enables support for the MIPS Technologies Atlas evaluation
340           board.
341
342 config MIPS_MALTA
343         bool "Support for MIPS Malta board"
344         select BOOT_ELF32
345         select HAVE_STD_PC_SERIAL_PORT
346         select DMA_NONCOHERENT
347         select GENERIC_ISA_DMA
348         select HW_HAS_PCI
349         select I8259
350         select MIPS_GT64120
351         select SWAP_IO_SPACE
352         select SYS_SUPPORTS_32BIT_KERNEL
353         select SYS_SUPPORTS_64BIT_KERNEL
354         help
355           This enables support for the MIPS Technologies Malta evaluation
356           board.
357
358 config MIPS_SEAD
359         bool "Support for MIPS SEAD board (EXPERIMENTAL)"
360         depends on EXPERIMENTAL
361         select IRQ_CPU
362         select DMA_NONCOHERENT
363         select SYS_SUPPORTS_32BIT_KERNEL
364         select SYS_SUPPORTS_64BIT_KERNEL
365         help
366           This enables support for the MIPS Technologies SEAD evaluation
367           board.
368
369 config MOMENCO_OCELOT
370         bool "Support for Momentum Ocelot board"
371         select DMA_NONCOHERENT
372         select HW_HAS_PCI
373         select IRQ_CPU
374         select IRQ_CPU_RM7K
375         select MIPS_GT64120
376         select RM7000_CPU_SCACHE
377         select SWAP_IO_SPACE
378         select SYS_SUPPORTS_32BIT_KERNEL
379         select SYS_SUPPORTS_64BIT_KERNEL
380         help
381           The Ocelot is a MIPS-based Single Board Computer (SBC) made by
382           Momentum Computer <http://www.momenco.com/>.
383
384 config MOMENCO_OCELOT_G
385         bool "Support for Momentum Ocelot-G board"
386         select DMA_NONCOHERENT
387         select HW_HAS_PCI
388         select IRQ_CPU
389         select IRQ_CPU_RM7K
390         select PCI_MARVELL
391         select RM7000_CPU_SCACHE
392         select SWAP_IO_SPACE
393         select SYS_SUPPORTS_32BIT_KERNEL
394         select SYS_SUPPORTS_64BIT_KERNEL
395         help
396           The Ocelot is a MIPS-based Single Board Computer (SBC) made by
397           Momentum Computer <http://www.momenco.com/>.
398
399 config MOMENCO_OCELOT_C
400         bool "Support for Momentum Ocelot-C board"
401         select DMA_NONCOHERENT
402         select HW_HAS_PCI
403         select IRQ_CPU
404         select IRQ_MV64340
405         select PCI_MARVELL
406         select RM7000_CPU_SCACHE
407         select SWAP_IO_SPACE
408         select SYS_SUPPORTS_32BIT_KERNEL
409         select SYS_SUPPORTS_64BIT_KERNEL
410         help
411           The Ocelot is a MIPS-based Single Board Computer (SBC) made by
412           Momentum Computer <http://www.momenco.com/>.
413
414 config MOMENCO_OCELOT_3
415         bool "Support for Momentum Ocelot-3 board"
416         select BOOT_ELF32
417         select DMA_NONCOHERENT
418         select HW_HAS_PCI
419         select IRQ_CPU
420         select IRQ_CPU_RM7K
421         select IRQ_MV64340
422         select PCI_MARVELL
423         select RM7000_CPU_SCACHE
424         select SWAP_IO_SPACE
425         select SYS_SUPPORTS_32BIT_KERNEL
426         select SYS_SUPPORTS_64BIT_KERNEL
427         help
428           The Ocelot-3 is based off Discovery III System Controller and
429           PMC-Sierra Rm79000 core.
430
431 config MOMENCO_JAGUAR_ATX
432         bool "Support for Momentum Jaguar board"
433         select BOOT_ELF32
434         select DMA_NONCOHERENT
435         select HW_HAS_PCI
436         select IRQ_CPU
437         select IRQ_CPU_RM7K
438         select IRQ_MV64340
439         select LIMITED_DMA
440         select PCI_MARVELL
441         select RM7000_CPU_SCACHE
442         select SWAP_IO_SPACE
443         select SYS_SUPPORTS_32BIT_KERNEL
444         select SYS_SUPPORTS_64BIT_KERNEL
445         help
446           The Jaguar ATX is a MIPS-based Single Board Computer (SBC) made by
447           Momentum Computer <http://www.momenco.com/>.
448
449 config JAGUAR_DMALOW
450         bool "Low DMA Mode"
451         depends on MOMENCO_JAGUAR_ATX
452         help
453           Select to Y if jump JP5 is set on your board, N otherwise.  Normally
454           the jumper is set, so if you feel unsafe, just say Y.
455
456 config PMC_YOSEMITE
457         bool "Support for PMC-Sierra Yosemite eval board"
458         select DMA_COHERENT
459         select HW_HAS_PCI
460         select IRQ_CPU
461         select IRQ_CPU_RM7K
462         select IRQ_CPU_RM9K
463         select SWAP_IO_SPACE
464         select SYS_SUPPORTS_32BIT_KERNEL
465         select SYS_SUPPORTS_64BIT_KERNEL
466         help
467           Yosemite is an evaluation board for the RM9000x2 processor
468           manufactured by PMC-Sierra
469
470 config HYPERTRANSPORT
471         bool "Hypertransport Support for PMC-Sierra Yosemite"
472         depends on PMC_YOSEMITE
473
474 config DDB5074
475         bool "Support for NEC DDB Vrc-5074 (EXPERIMENTAL)"
476         depends on EXPERIMENTAL
477         select DMA_NONCOHERENT
478         select HAVE_STD_PC_SERIAL_PORT
479         select HW_HAS_PCI
480         select IRQ_CPU
481         select I8259
482         select ISA
483         select SYS_SUPPORTS_32BIT_KERNEL
484         select SYS_SUPPORTS_64BIT_KERNEL
485         help
486           This enables support for the VR5000-based NEC DDB Vrc-5074
487           evaluation board.
488
489 config DDB5476
490         bool "Support for NEC DDB Vrc-5476"
491         select DMA_NONCOHERENT
492         select HAVE_STD_PC_SERIAL_PORT
493         select HW_HAS_PCI
494         select IRQ_CPU
495         select I8259
496         select ISA
497         select SYS_SUPPORTS_32BIT_KERNEL
498         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
499         help
500           This enables support for the R5432-based NEC DDB Vrc-5476
501           evaluation board.
502
503           Features : kernel debugging, serial terminal, NFS root fs, on-board
504           ether port USB, AC97, PCI, PCI VGA card & framebuffer console,
505           IDE controller, PS2 keyboard, PS2 mouse, etc.
506
507 config DDB5477
508         bool "Support for NEC DDB Vrc-5477"
509         select DMA_NONCOHERENT
510         select HW_HAS_PCI
511         select I8259
512         select IRQ_CPU
513         select SYS_SUPPORTS_32BIT_KERNEL
514         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
515         help
516           This enables support for the R5432-based NEC DDB Vrc-5477,
517           or Rockhopper/SolutionGear boards with R5432/R5500 CPUs.
518
519           Features : kernel debugging, serial terminal, NFS root fs, on-board
520           ether port USB, AC97, PCI, etc.
521
522 config DDB5477_BUS_FREQUENCY
523         int "bus frequency (in kHZ, 0 for auto-detect)"
524         depends on DDB5477
525         default 0
526
527 config QEMU
528         bool "Support for Qemu"
529         select DMA_COHERENT
530         select GENERIC_ISA_DMA
531         select HAVE_STD_PC_SERIAL_PORT
532         select I8259
533         select ISA
534         select SWAP_IO_SPACE
535         select SYS_SUPPORTS_32BIT_KERNEL
536         select SYS_SUPPORTS_BIG_ENDIAN
537         help
538          Qemu is a software emulator which among other architectures also
539          can simulate a MIPS32 4Kc system.  This patch adds support for the
540          system architecture that currently is being simulated by Qemu.  It
541          will eventually be removed again when Qemu has the capability to
542          simulate actual MIPS hardware platforms.  More information on Qemu
543          can be found at http://www.linux-mips.org/wiki/Qemu.
544
545 config SGI_IP22
546         bool "Support for SGI IP22 (Indy/Indigo2)"
547         select ARC
548         select ARC32
549         select BOOT_ELF32
550         select DMA_NONCOHERENT
551         select IP22_CPU_SCACHE
552         select IRQ_CPU
553         select SWAP_IO_SPACE
554         select SYS_SUPPORTS_32BIT_KERNEL
555         select SYS_SUPPORTS_64BIT_KERNEL
556         help
557           This are the SGI Indy, Challenge S and Indigo2, as well as certain
558           OEM variants like the Tandem CMN B006S. To compile a Linux kernel
559           that runs on these, say Y here.
560
561 config SGI_IP27
562         bool "Support for SGI IP27 (Origin200/2000)"
563         select ARC
564         select ARC64
565         select DMA_IP27
566         select HW_HAS_PCI
567         select PCI_DOMAINS
568         select SYS_SUPPORTS_64BIT_KERNEL
569         help
570           This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
571           workstations.  To compile a Linux kernel that runs on these, say Y
572           here.
573
574 #config SGI_SN0_XXL
575 #       bool "IP27 XXL"
576 #       depends on SGI_IP27
577 #         This options adds support for userspace processes upto 16TB size.
578 #         Normally the limit is just .5TB.
579
580 config SGI_SN0_N_MODE
581         bool "IP27 N-Mode"
582         depends on SGI_IP27
583         help
584           The nodes of Origin 200, Origin 2000 and Onyx 2 systems can be
585           configured in either N-Modes which allows for more nodes or M-Mode
586           which allows for more memory.  Your system is most probably
587           running in M-Mode, so you should say N here.
588
589 config ARCH_DISCONTIGMEM_ENABLE
590         bool
591         default y if SGI_IP27
592         help
593           Say Y to upport efficient handling of discontiguous physical memory,
594           for architectures which are either NUMA (Non-Uniform Memory Access)
595           or have huge holes in the physical address space for other reasons.
596           See <file:Documentation/vm/numa> for more.
597
598 config NUMA
599         bool "NUMA Support"
600         depends on SGI_IP27
601         help
602           Say Y to compile the kernel to support NUMA (Non-Uniform Memory
603           Access).  This option is for configuring high-end multiprocessor
604           server machines.  If in doubt, say N.
605
606 config MAPPED_KERNEL
607         bool "Mapped kernel support"
608         depends on SGI_IP27
609         help
610           Change the way a Linux kernel is loaded into memory on a MIPS64
611           machine.  This is required in order to support text replication and
612           NUMA.  If you need to understand it, read the source code.
613
614 config REPLICATE_KTEXT
615         bool "Kernel text replication support"
616         depends on SGI_IP27
617         help
618           Say Y here to enable replicating the kernel text across multiple
619           nodes in a NUMA cluster.  This trades memory for speed.
620
621 config REPLICATE_EXHANDLERS
622         bool "Exception handler replication support"
623         depends on SGI_IP27
624         help
625           Say Y here to enable replicating the kernel exception handlers
626           across multiple nodes in a NUMA cluster. This trades memory for
627           speed.
628
629 config SGI_IP32
630         bool "Support for SGI IP32 (O2) (EXPERIMENTAL)"
631         depends on EXPERIMENTAL
632         select ARC
633         select ARC32
634         select BOOT_ELF32
635         select OWN_DMA
636         select DMA_IP32
637         select DMA_NONCOHERENT
638         select HAS_TXX9_SERIAL
639         select HW_HAS_PCI
640         select R5000_CPU_SCACHE
641         select RM7000_CPU_SCACHE
642         select SYS_SUPPORTS_64BIT_KERNEL
643         help
644           If you want this kernel to run on SGI O2 workstation, say Y here.
645
646 config SOC_AU1200
647         bool
648         select SOC_AU1X00
649
650 config SOC_AU1X00
651         bool "Support for AMD/Alchemy Au1X00 SOCs"
652         select SYS_SUPPORTS_32BIT_KERNEL
653
654 choice
655         prompt "Au1X00 SOC Type"
656         depends on SOC_AU1X00
657         help
658           Say Y here to enable support for one of three AMD/Alchemy
659           SOCs. For additional documentation see www.amd.com.
660
661 config SOC_AU1000
662         bool "SOC_AU1000"
663 config SOC_AU1100
664         bool "SOC_AU1100"
665 config SOC_AU1500
666         bool "SOC_AU1500"
667 config SOC_AU1550
668         bool "SOC_AU1550"
669
670 endchoice
671
672 choice
673         prompt "AMD/Alchemy Au1x00 board support"
674         depends on SOC_AU1X00
675         help
676           These are evaluation boards built by AMD/Alchemy to
677           showcase their Au1X00 Internet Edge Processors. The SOC design
678           is based on the MIPS32 architecture running at 266/400/500MHz
679           with many integrated peripherals. Further information can be
680           found at their website, <http://www.amd.com/>. Say Y here if you
681           wish to build a kernel for this platform.
682
683 config MIPS_PB1000
684         bool "PB1000 board"
685         depends on SOC_AU1000
686         select DMA_NONCOHERENT
687         select HW_HAS_PCI
688         select SWAP_IO_SPACE
689
690 config MIPS_PB1100
691         bool "PB1100 board"
692         depends on SOC_AU1100
693         select DMA_NONCOHERENT
694         select HW_HAS_PCI
695         select SWAP_IO_SPACE
696
697 config MIPS_PB1500
698         bool "PB1500 board"
699         depends on SOC_AU1500
700         select DMA_NONCOHERENT
701         select HW_HAS_PCI
702
703 config MIPS_PB1550
704         bool "PB1550 board"
705         depends on SOC_AU1550
706         select DMA_COHERENT
707         select HW_HAS_PCI
708         select MIPS_DISABLE_OBSOLETE_IDE
709
710 config MIPS_PB1200
711         bool "AMD Alchemy PB1200 board"
712         select SOC_AU1200
713         select DMA_NONCOHERENT
714         select MIPS_DISABLE_OBSOLETE_IDE
715         select SYS_SUPPORTS_LITTLE_ENDIAN
716
717 config MIPS_DB1000
718         bool "DB1000 board"
719         depends on SOC_AU1000
720         select DMA_NONCOHERENT
721         select HW_HAS_PCI
722
723 config MIPS_DB1100
724         bool "DB1100 board"
725         depends on SOC_AU1100
726         select DMA_NONCOHERENT
727
728 config MIPS_DB1500
729         bool "DB1500 board"
730         depends on SOC_AU1500
731         select DMA_NONCOHERENT
732         select HW_HAS_PCI
733         select MIPS_DISABLE_OBSOLETE_IDE
734
735 config MIPS_DB1550
736         bool "DB1550 board"
737         depends on SOC_AU1550
738         select HW_HAS_PCI
739         select DMA_NONCOHERENT
740         select MIPS_DISABLE_OBSOLETE_IDE
741
742 config MIPS_BOSPORUS
743         bool "Bosporus board"
744         depends on SOC_AU1500
745         select DMA_NONCOHERENT
746
747 config MIPS_DB1200
748         bool "AMD Alchemy DB1200 board"
749         select SOC_AU1200
750         select DMA_NONCOHERENT
751         select MIPS_DISABLE_OBSOLETE_IDE
752         select SYS_SUPPORTS_LITTLE_ENDIAN
753
754 config MIPS_MIRAGE
755         bool "Mirage board"
756         depends on SOC_AU1500
757         select DMA_NONCOHERENT
758
759 config MIPS_XXS1500
760         bool "MyCable XXS1500 board"
761         depends on SOC_AU1500
762         select DMA_NONCOHERENT
763
764 config MIPS_MTX1
765         bool "4G Systems MTX-1 board"
766         depends on SOC_AU1500
767         select HW_HAS_PCI
768         select DMA_NONCOHERENT
769
770 endchoice
771
772 config SNI_RM200_PCI
773         bool "Support for SNI RM200 PCI"
774         select ARC
775         select ARC32
776         select BOOT_ELF32
777         select DMA_NONCOHERENT
778         select GENERIC_ISA_DMA
779         select HAVE_STD_PC_SERIAL_PORT
780         select HW_HAS_PCI
781         select I8259
782         select ISA
783         select SYS_SUPPORTS_32BIT_KERNEL
784         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
785         help
786           The SNI RM200 PCI was a MIPS-based platform manufactured by Siemens
787           Nixdorf Informationssysteme (SNI), parent company of Pyramid
788           Technology and now in turn merged with Fujitsu.  Say Y here to
789           support this machine type.
790
791 config TOSHIBA_RBTX4927
792         bool "Support for Toshiba TBTX49[23]7 board"
793         select DMA_NONCOHERENT
794         select HAS_TXX9_SERIAL
795         select HW_HAS_PCI
796         select I8259
797         select ISA
798         select SWAP_IO_SPACE
799         select SYS_SUPPORTS_32BIT_KERNEL
800         select SYS_SUPPORTS_64BIT_KERNEL
801         help
802           This Toshiba board is based on the TX4927 processor. Say Y here to
803           support this machine type
804
805 config TOSHIBA_FPCIB0
806         bool "FPCIB0 Backplane Support"
807         depends on TOSHIBA_RBTX4927
808
809 source "arch/mips/sgi-ip27/Kconfig"
810 source "arch/mips/sibyte/Kconfig"
811
812 config RWSEM_GENERIC_SPINLOCK
813         bool
814         default y
815
816 config RWSEM_XCHGADD_ALGORITHM
817         bool
818         select HAS_TXX9_SERIAL
819
820 config GENERIC_CALIBRATE_DELAY
821         bool
822         default y
823
824 #
825 # Select some configuration options automatically based on user selections.
826 #
827 config ARC
828         bool
829         depends on SNI_RM200_PCI || SGI_IP32 || SGI_IP27 || SGI_IP22 || MIPS_MAGNUM_4000 || OLIVETTI_M700 || ACER_PICA_61
830         default y
831
832 config DMA_COHERENT
833         bool
834
835 config DMA_IP27
836         bool
837
838 config DMA_IP32
839         bool
840         select DMA_NEED_PCI_MAP_STATE
841
842 config DMA_NONCOHERENT
843         bool
844         select DMA_NEED_PCI_MAP_STATE
845
846 config DMA_NEED_PCI_MAP_STATE
847         bool
848
849 config EARLY_PRINTK
850         bool
851         depends on MACH_DECSTATION
852         default y
853
854 config GENERIC_ISA_DMA
855         bool
856         depends on SNI_RM200_PCI || MIPS_MAGNUM_4000 || OLIVETTI_M700 || ACER_PICA_61 || MIPS_MALTA
857         default y
858
859 config I8259
860         bool
861         depends on SNI_RM200_PCI || DDB5477 || DDB5476 || DDB5074 || MACH_JAZZ || MIPS_MALTA || MIPS_COBALT
862         default y
863
864 config LIMITED_DMA
865         bool
866         select HIGHMEM
867
868 config MIPS_BONITO64
869         bool
870         depends on MIPS_ATLAS || MIPS_MALTA
871         default y
872
873 config MIPS_MSC
874         bool
875         depends on MIPS_ATLAS || MIPS_MALTA
876         default y
877
878 config MIPS_NILE4
879         bool
880         depends on LASAT
881         default y
882
883 config MIPS_DISABLE_OBSOLETE_IDE
884         bool
885
886 config CPU_LITTLE_ENDIAN
887         bool "Generate little endian code"
888         default y if ACER_PICA_61 || CASIO_E55 || DDB5074 || DDB5476 || DDB5477 || MACH_DECSTATION || IBM_WORKPAD || LASAT || MIPS_COBALT || MIPS_ITE8172 || MIPS_IVR || SOC_AU1X00 || OLIVETTI_M700 || SNI_RM200_PCI || VICTOR_MPC30X || ZAO_CAPCELLA
889         default n if MIPS_EV64120 || MIPS_EV96100 || MOMENCO_OCELOT || MOMENCO_OCELOT_G || SGI_IP22 || SGI_IP27 || SGI_IP32 || TOSHIBA_JMR3927
890         help
891           Some MIPS machines can be configured for either little or big endian
892           byte order. These modes require different kernels. Say Y if your
893           machine is little endian, N if it's a big endian machine.
894
895 config IRQ_CPU
896         bool
897
898 config IRQ_CPU_RM7K
899         bool
900
901 config IRQ_MV64340
902         bool
903
904 config DDB5XXX_COMMON
905         bool
906         depends on DDB5074 || DDB5476 || DDB5477
907         default y
908
909 config MIPS_BOARDS_GEN
910         bool
911         depends on MIPS_ATLAS || MIPS_MALTA || MIPS_SEAD
912         default y
913
914 config MIPS_GT64111
915         bool
916         depends on MIPS_COBALT
917         default y
918
919 config MIPS_GT64120
920         bool
921         depends on MIPS_EV64120 || MIPS_EV96100 || LASAT || MIPS_ATLAS || MIPS_MALTA || MOMENCO_OCELOT
922         default y
923
924 config MIPS_TX3927
925         bool
926         depends on TOSHIBA_JMR3927
927         select HAS_TXX9_SERIAL
928         default y
929
930 config PCI_MARVELL
931         bool
932
933 config ITE_BOARD_GEN
934         bool
935         depends on MIPS_IVR || MIPS_ITE8172
936         default y
937
938 config SWAP_IO_SPACE
939         bool
940
941 #
942 # Unfortunately not all GT64120 systems run the chip at the same clock.
943 # As the user for the clock rate and try to minimize the available options.
944 #
945 choice
946         prompt "Galileo Chip Clock"
947         #default SYSCLK_83 if MIPS_EV64120
948         depends on MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
949         default SYSCLK_83 if MIPS_EV64120
950         default SYSCLK_100 if MOMENCO_OCELOT || MOMENCO_OCELOT_G
951
952 config SYSCLK_75
953         bool "75" if MIPS_EV64120
954
955 config SYSCLK_83
956         bool "83.3" if MIPS_EV64120
957
958 config SYSCLK_100
959         bool "100" if MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
960
961 endchoice
962
963 config AU1X00_USB_DEVICE
964         bool
965         depends on MIPS_PB1500 || MIPS_PB1100 || MIPS_PB1000
966         default n
967
968 config MIPS_GT96100
969         bool
970         depends on MIPS_EV96100
971         default y
972         help
973           Say Y here to support the Galileo Technology GT96100 communications
974           controller card.  There is a web page at <http://www.galileot.com/>.
975
976 config IT8172_CIR
977         bool
978         depends on MIPS_ITE8172 || MIPS_IVR
979         default y
980
981 config IT8712
982         bool
983         depends on MIPS_ITE8172
984         default y
985
986 config BOOT_ELF32
987         bool
988         depends on MACH_DECSTATION || MIPS_ATLAS || MIPS_MALTA || MOMENCO_JAGUAR_ATX || MOMENCO_OCELOT_3 || SIBYTE_SB1xxx_SOC || SGI_IP32 || SGI_IP22 || SNI_RM200_PCI
989         default y
990
991 config MIPS_L1_CACHE_SHIFT
992         int
993         default "4" if MACH_DECSTATION
994         default "7" if SGI_IP27
995         default "5"
996
997 config ARC32
998         bool
999         depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP22 || SGI_IP32
1000         default y
1001
1002 config HAVE_STD_PC_SERIAL_PORT
1003         bool
1004
1005 config ARC_CONSOLE
1006         bool "ARC console support"
1007         depends on SGI_IP22 || SNI_RM200_PCI
1008
1009 config ARC_MEMORY
1010         bool
1011         depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP32
1012         default y
1013
1014 config ARC_PROMLIB
1015         bool
1016         depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP22 || SGI_IP32
1017         default y
1018
1019 config ARC64
1020         bool
1021         depends on SGI_IP27
1022         default y
1023
1024 config BOOT_ELF64
1025         bool
1026         depends on SGI_IP27
1027         default y
1028
1029 #config MAPPED_PCI_IO y
1030 #       bool
1031 #       depends on SGI_IP27
1032 #       default y
1033
1034 config QL_ISP_A64
1035         bool
1036         depends on SGI_IP27
1037         default y
1038
1039 config TOSHIBA_BOARDS
1040         bool
1041         depends on TOSHIBA_JMR3927 || TOSHIBA_RBTX4927
1042         default y
1043
1044 endmenu
1045
1046 menu "CPU selection"
1047
1048 choice
1049         prompt "CPU type"
1050         default CPU_R4X00
1051
1052 config CPU_MIPS32
1053         bool "MIPS32"
1054         select CPU_SUPPORTS_32BIT_KERNEL
1055
1056 config CPU_MIPS64
1057         bool "MIPS64"
1058         select CPU_SUPPORTS_32BIT_KERNEL
1059         select CPU_SUPPORTS_64BIT_KERNEL
1060
1061 config CPU_R3000
1062         bool "R3000"
1063         select CPU_SUPPORTS_32BIT_KERNEL
1064         help
1065           Please make sure to pick the right CPU type. Linux/MIPS is not
1066           designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1067           *not* work on R4000 machines and vice versa.  However, since most
1068           of the supported machines have an R4000 (or similar) CPU, R4x00
1069           might be a safe bet.  If the resulting kernel does not work,
1070           try to recompile with R3000.
1071
1072 config CPU_TX39XX
1073         bool "R39XX"
1074         select CPU_SUPPORTS_32BIT_KERNEL
1075
1076 config CPU_VR41XX
1077         bool "R41xx"
1078         select CPU_SUPPORTS_32BIT_KERNEL
1079         select CPU_SUPPORTS_64BIT_KERNEL
1080         help
1081           The options selects support for the NEC VR41xx series of processors.
1082           Only choose this option if you have one of these processors as a
1083           kernel built with this option will not run on any other type of
1084           processor or vice versa.
1085
1086 config CPU_R4300
1087         bool "R4300"
1088         select CPU_SUPPORTS_32BIT_KERNEL
1089         select CPU_SUPPORTS_64BIT_KERNEL
1090         help
1091           MIPS Technologies R4300-series processors.
1092
1093 config CPU_R4X00
1094         bool "R4x00"
1095         select CPU_SUPPORTS_32BIT_KERNEL
1096         select CPU_SUPPORTS_64BIT_KERNEL
1097         help
1098           MIPS Technologies R4000-series processors other than 4300, including
1099           the R4000, R4400, R4600, and 4700.
1100
1101 config CPU_TX49XX
1102         bool "R49XX"
1103         select CPU_SUPPORTS_32BIT_KERNEL
1104         select CPU_SUPPORTS_64BIT_KERNEL
1105
1106 config CPU_R5000
1107         bool "R5000"
1108         select CPU_SUPPORTS_32BIT_KERNEL
1109         select CPU_SUPPORTS_64BIT_KERNEL
1110         help
1111           MIPS Technologies R5000-series processors other than the Nevada.
1112
1113 config CPU_R5432
1114         bool "R5432"
1115
1116 config CPU_R6000
1117         bool "R6000"
1118         depends on EXPERIMENTAL
1119         select CPU_SUPPORTS_32BIT_KERNEL
1120         help
1121           MIPS Technologies R6000 and R6000A series processors.  Note these
1122           processors are extremly rare and the support for them is incomplete.
1123
1124 config CPU_NEVADA
1125         bool "RM52xx"
1126         select CPU_SUPPORTS_32BIT_KERNEL
1127         select CPU_SUPPORTS_64BIT_KERNEL
1128         help
1129           QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1130
1131 config CPU_R8000
1132         bool "R8000"
1133         depends on EXPERIMENTAL
1134         select CPU_SUPPORTS_64BIT_KERNEL
1135         help
1136           MIPS Technologies R8000 processors.  Note these processors are
1137           uncommon and the support for them is incomplete.
1138
1139 config CPU_R10000
1140         bool "R10000"
1141         select CPU_SUPPORTS_32BIT_KERNEL
1142         select CPU_SUPPORTS_64BIT_KERNEL
1143         help
1144           MIPS Technologies R10000-series processors.
1145
1146 config CPU_RM7000
1147         bool "RM7000"
1148         select CPU_SUPPORTS_32BIT_KERNEL
1149         select CPU_SUPPORTS_64BIT_KERNEL
1150
1151 config CPU_RM9000
1152         bool "RM9000"
1153         select CPU_SUPPORTS_32BIT_KERNEL
1154         select CPU_SUPPORTS_64BIT_KERNEL
1155
1156 config CPU_SB1
1157         bool "SB1"
1158         select CPU_SUPPORTS_32BIT_KERNEL
1159         select CPU_SUPPORTS_64BIT_KERNEL
1160
1161 endchoice
1162
1163 choice
1164         prompt "Kernel page size"
1165         default PAGE_SIZE_4KB
1166
1167 config PAGE_SIZE_4KB
1168         bool "4kB"
1169         help
1170          This option select the standard 4kB Linux page size.  On some
1171          R3000-family processors this is the only available page size.  Using
1172          4kB page size will minimize memory consumption and is therefore
1173          recommended for low memory systems.
1174
1175 config PAGE_SIZE_8KB
1176         bool "8kB"
1177         depends on EXPERIMENTAL && CPU_R8000
1178         help
1179           Using 8kB page size will result in higher performance kernel at
1180           the price of higher memory consumption.  This option is available
1181           only on the R8000 processor.  Not that at the time of this writing
1182           this option is still high experimental; there are also issues with
1183           compatibility of user applications.
1184
1185 config PAGE_SIZE_16KB
1186         bool "16kB"
1187         depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1188         help
1189           Using 16kB page size will result in higher performance kernel at
1190           the price of higher memory consumption.  This option is available on
1191           all non-R3000 family processor.  Not that at the time of this
1192           writing this option is still high experimental; there are also
1193           issues with compatibility of user applications.
1194
1195 config PAGE_SIZE_64KB
1196         bool "64kB"
1197         depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1198         help
1199           Using 64kB page size will result in higher performance kernel at
1200           the price of higher memory consumption.  This option is available on
1201           all non-R3000 family processor.  Not that at the time of this
1202           writing this option is still high experimental; there are also
1203           issues with compatibility of user applications.
1204
1205 endchoice
1206
1207 config BOARD_SCACHE
1208         bool
1209
1210 config IP22_CPU_SCACHE
1211         bool
1212         select BOARD_SCACHE
1213
1214 config R5000_CPU_SCACHE
1215         bool
1216         select BOARD_SCACHE
1217
1218 config RM7000_CPU_SCACHE
1219         bool
1220         select BOARD_SCACHE
1221
1222 config SIBYTE_DMA_PAGEOPS
1223         bool "Use DMA to clear/copy pages"
1224         depends on CPU_SB1
1225         help
1226           Instead of using the CPU to zero and copy pages, use a Data Mover
1227           channel.  These DMA channels are otherwise unused by the standard
1228           SiByte Linux port.  Seems to give a small performance benefit.
1229
1230 config CPU_HAS_PREFETCH
1231         bool "Enable prefetches" if CPU_SB1 && !CPU_SB1_PASS_2
1232         default y if CPU_MIPS32 || CPU_MIPS64 || CPU_RM7000 || CPU_RM9000 || CPU_R10000
1233
1234 config VTAG_ICACHE
1235         bool "Support for Virtual Tagged I-cache" if CPU_MIPS64 || CPU_MIPS32
1236         default y if CPU_SB1
1237
1238 config SB1_PASS_1_WORKAROUNDS
1239         bool
1240         depends on CPU_SB1_PASS_1
1241         default y
1242
1243 config SB1_PASS_2_WORKAROUNDS
1244         bool
1245         depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1246         default y
1247
1248 config SB1_PASS_2_1_WORKAROUNDS
1249         bool
1250         depends on CPU_SB1 && CPU_SB1_PASS_2
1251         default y
1252
1253 config 64BIT_PHYS_ADDR
1254         bool "Support for 64-bit physical address space"
1255         depends on (CPU_R4X00 || CPU_R5000 || CPU_RM7000 || CPU_RM9000 || CPU_R10000 || CPU_SB1 || CPU_MIPS32 || CPU_MIPS64) && 32BIT
1256
1257 config CPU_ADVANCED
1258         bool "Override CPU Options"
1259         depends on 32BIT
1260         help
1261           Saying yes here allows you to select support for various features
1262           your CPU may or may not have.  Most people should say N here.
1263
1264 config CPU_HAS_LLSC
1265         bool "ll/sc Instructions available" if CPU_ADVANCED
1266         default y if !CPU_ADVANCED && !CPU_R3000 && !CPU_VR41XX && !CPU_TX39XX
1267         help
1268           MIPS R4000 series and later provide the Load Linked (ll)
1269           and Store Conditional (sc) instructions. More information is
1270           available at <http://www.go-ecs.com/mips/miptek1.htm>.
1271
1272           Say Y here if your CPU has the ll and sc instructions.  Say Y here
1273           for better performance, N if you don't know.  You must say Y here
1274           for multiprocessor machines.
1275
1276 config CPU_HAS_LLDSCD
1277         bool "lld/scd Instructions available" if CPU_ADVANCED
1278         default y if !CPU_ADVANCED && !CPU_R3000 && !CPU_VR41XX && !CPU_TX39XX && !CPU_MIPS32
1279         help
1280           Say Y here if your CPU has the lld and scd instructions, the 64-bit
1281           equivalents of ll and sc.  Say Y here for better performance, N if
1282           you don't know.  You must say Y here for multiprocessor machines.
1283
1284 config CPU_HAS_WB
1285         bool "Writeback Buffer available" if CPU_ADVANCED
1286         default y if !CPU_ADVANCED && CPU_R3000 && MACH_DECSTATION
1287         help
1288           Say N here for slightly better performance.  You must say Y here for
1289           machines which require flushing of write buffers in software.  Saying
1290           Y is the safe option; N may result in kernel malfunction and crashes.
1291
1292 config CPU_HAS_SYNC
1293         bool
1294         depends on !CPU_R3000
1295         default y
1296
1297 #
1298 # - Highmem only makes sense for the 32-bit kernel.
1299 # - The current highmem code will only work properly on physically indexed
1300 #   caches such as R3000, SB1, R7000 or those that look like they're virtually
1301 #   indexed such as R4000/R4400 SC and MC versions or R10000.  So for the
1302 #   moment we protect the user and offer the highmem option only on machines
1303 #   where it's known to be safe.  This will not offer highmem on a few systems
1304 #   such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1305 #   indexed CPUs but we're playing safe.
1306 # - We should not offer highmem for system of which we already know that they
1307 #   don't have memory configurations that could gain from highmem support in
1308 #   the kernel because they don't support configurations with RAM at physical
1309 #   addresses > 0x20000000.
1310 #
1311 config HIGHMEM
1312         bool "High Memory Support"
1313         depends on 32BIT && (CPU_R3000 || CPU_SB1 || CPU_R7000 || CPU_RM9000 || CPU_R10000) && !(MACH_DECSTATION || MOMENCO_JAGUAR_ATX)
1314
1315 config ARCH_FLATMEM_ENABLE
1316         def_bool y
1317         depends on !NUMA
1318
1319 source "mm/Kconfig"
1320
1321 config SMP
1322         bool "Multi-Processing support"
1323         depends on CPU_RM9000 || (SIBYTE_SB1250 && !SIBYTE_STANDALONE) || SGI_IP27
1324         ---help---
1325           This enables support for systems with more than one CPU. If you have
1326           a system with only one CPU, like most personal computers, say N. If
1327           you have a system with more than one CPU, say Y.
1328
1329           If you say N here, the kernel will run on single and multiprocessor
1330           machines, but will use only one CPU of a multiprocessor machine. If
1331           you say Y here, the kernel will run on many, but not all,
1332           singleprocessor machines. On a singleprocessor machine, the kernel
1333           will run faster if you say N here.
1334
1335           People using multiprocessor machines who say Y here should also say
1336           Y to "Enhanced Real Time Clock Support", below.
1337
1338           See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1339           available at <http://www.tldp.org/docs.html#howto>.
1340
1341           If you don't know what to do here, say N.
1342
1343 config NR_CPUS
1344         int "Maximum number of CPUs (2-64)"
1345         range 2 64
1346         depends on SMP
1347         default "64" if SGI_IP27
1348         default "2"
1349         help
1350           This allows you to specify the maximum number of CPUs which this
1351           kernel will support.  The maximum supported value is 32 for 32-bit
1352           kernel and 64 for 64-bit kernels; the minimum value which makes
1353           sense is 2.
1354
1355           This is purely to save memory - each supported CPU adds
1356           approximately eight kilobytes to the kernel image.
1357
1358 config PREEMPT
1359         bool "Preemptible Kernel"
1360         help
1361           This option reduces the latency of the kernel when reacting to
1362           real-time or interactive events by allowing a low priority process to
1363           be preempted even if it is in kernel mode executing a system call.
1364           This allows applications to run more reliably even when the system is
1365           under load.
1366
1367 config RTC_DS1742
1368         bool "DS1742 BRAM/RTC support"
1369         depends on TOSHIBA_JMR3927 || TOSHIBA_RBTX4927
1370
1371 config MIPS_INSANE_LARGE
1372         bool "Support for large 64-bit configurations"
1373         depends on CPU_R10000 && 64BIT
1374         help
1375           MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1376           previous 64-bit processors which only supported 40 bit / 1TB. If you
1377           need processes of more than 1TB virtual address space, say Y here.
1378           This will result in additional memory usage, so it is not
1379           recommended for normal users.
1380
1381 config RWSEM_GENERIC_SPINLOCK
1382         bool
1383         default y
1384
1385 endmenu
1386
1387 menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1388
1389 config HW_HAS_PCI
1390         bool
1391
1392 config PCI
1393         bool "Support for PCI controller"
1394         depends on HW_HAS_PCI
1395         help
1396           Find out whether you have a PCI motherboard. PCI is the name of a
1397           bus system, i.e. the way the CPU talks to the other stuff inside
1398           your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1399           say Y, otherwise N.
1400
1401           The PCI-HOWTO, available from
1402           <http://www.tldp.org/docs.html#howto>, contains valuable
1403           information about which PCI hardware does work under Linux and which
1404           doesn't.
1405
1406 config PCI_DOMAINS
1407         bool
1408         depends on PCI
1409
1410 source "drivers/pci/Kconfig"
1411
1412 #
1413 # ISA support is now enabled via select.  Too many systems still have the one
1414 # or other ISA chip on the board that users don't know about so don't expect
1415 # users to choose the right thing ...
1416 #
1417 config ISA
1418         bool
1419
1420 config EISA
1421         bool "EISA support"
1422         depends on SGI_IP22 || SNI_RM200_PCI
1423         select ISA
1424         ---help---
1425           The Extended Industry Standard Architecture (EISA) bus was
1426           developed as an open alternative to the IBM MicroChannel bus.
1427
1428           The EISA bus provided some of the features of the IBM MicroChannel
1429           bus while maintaining backward compatibility with cards made for
1430           the older ISA bus.  The EISA bus saw limited use between 1988 and
1431           1995 when it was made obsolete by the PCI bus.
1432
1433           Say Y here if you are building a kernel for an EISA-based machine.
1434
1435           Otherwise, say N.
1436
1437 source "drivers/eisa/Kconfig"
1438
1439 config TC
1440         bool "TURBOchannel support"
1441         depends on MACH_DECSTATION
1442         help
1443           TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1444           processors.  Documentation on writing device drivers for TurboChannel
1445           is available at:
1446           <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1447
1448 #config ACCESSBUS
1449 #       bool "Access.Bus support"
1450 #       depends on TC
1451
1452 config MMU
1453         bool
1454         default y
1455
1456 config MCA
1457         bool
1458
1459 config SBUS
1460         bool
1461
1462 source "drivers/pcmcia/Kconfig"
1463
1464 source "drivers/pci/hotplug/Kconfig"
1465
1466 endmenu
1467
1468 menu "Executable file formats"
1469
1470 source "fs/Kconfig.binfmt"
1471
1472 config TRAD_SIGNALS
1473         bool
1474         default y if 32BIT
1475
1476 config BUILD_ELF64
1477         bool "Use 64-bit ELF format for building"
1478         depends on 64BIT
1479         help
1480           A 64-bit kernel is usually built using the 64-bit ELF binary object
1481           format as it's one that allows arbitrary 64-bit constructs.  For
1482           kernels that are loaded within the KSEG compatibility segments the
1483           32-bit ELF format can optionally be used resulting in a somewhat
1484           smaller binary, but this option is not explicitly supported by the
1485           toolchain and since binutils 2.14 it does not even work at all.
1486
1487           Say Y to use the 64-bit format or N to use the 32-bit one.
1488
1489           If unsure say Y.
1490
1491 config BINFMT_IRIX
1492         bool "Include IRIX binary compatibility"
1493         depends on !CPU_LITTLE_ENDIAN && 32BIT && BROKEN
1494
1495 config MIPS32_COMPAT
1496         bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
1497         depends on 64BIT
1498         help
1499           Select this option if you want Linux/MIPS 32-bit binary
1500           compatibility. Since all software available for Linux/MIPS is
1501           currently 32-bit you should say Y here.
1502
1503 config COMPAT
1504         bool
1505         depends on MIPS32_COMPAT
1506         default y
1507
1508 config MIPS32_O32
1509         bool "Kernel support for o32 binaries"
1510         depends on MIPS32_COMPAT
1511         help
1512           Select this option if you want to run o32 binaries.  These are pure
1513           32-bit binaries as used by the 32-bit Linux/MIPS port.  Most of
1514           existing binaries are in this format.
1515
1516           If unsure, say Y.
1517
1518 config MIPS32_N32
1519         bool "Kernel support for n32 binaries"
1520         depends on MIPS32_COMPAT
1521         help
1522           Select this option if you want to run n32 binaries.  These are
1523           64-bit binaries using 32-bit quantities for addressing and certain
1524           data that would normally be 64-bit.  They are used in special
1525           cases.
1526
1527           If unsure, say N.
1528
1529 config BINFMT_ELF32
1530         bool
1531         default y if MIPS32_O32 || MIPS32_N32
1532
1533 config SECCOMP
1534         bool "Enable seccomp to safely compute untrusted bytecode"
1535         depends on PROC_FS && BROKEN
1536         default y
1537         help
1538           This kernel feature is useful for number crunching applications
1539           that may need to compute untrusted bytecode during their
1540           execution. By using pipes or other transports made available to
1541           the process as file descriptors supporting the read/write
1542           syscalls, it's possible to isolate those applications in
1543           their own address space using seccomp. Once seccomp is
1544           enabled via /proc/<pid>/seccomp, it cannot be disabled
1545           and the task is only allowed to execute a few safe syscalls
1546           defined by each seccomp mode.
1547
1548           If unsure, say Y. Only embedded should say N here.
1549
1550 config PM
1551         bool "Power Management support (EXPERIMENTAL)"
1552         depends on EXPERIMENTAL && MACH_AU1X00
1553
1554 endmenu
1555
1556 source "net/Kconfig"
1557
1558 source "drivers/Kconfig"
1559
1560 source "fs/Kconfig"
1561
1562 source "arch/mips/Kconfig.debug"
1563
1564 source "security/Kconfig"
1565
1566 source "crypto/Kconfig"
1567
1568 source "lib/Kconfig"
1569
1570 #
1571 # Use the generic interrupt handling code in kernel/irq/:
1572 #
1573 config GENERIC_HARDIRQS
1574         bool
1575         default y
1576
1577 config GENERIC_IRQ_PROBE
1578         bool
1579         default y
1580
1581 config ISA_DMA_API
1582         bool
1583         default y