Base Au1200 2.6 support.
[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 HW_HAS_PCI
639         select R5000_CPU_SCACHE
640         select RM7000_CPU_SCACHE
641         select SYS_SUPPORTS_64BIT_KERNEL
642         help
643           If you want this kernel to run on SGI O2 workstation, say Y here.
644
645 config SOC_AU1200
646         bool
647         select SOC_AU1X00
648
649 config SOC_AU1X00
650         bool "Support for AMD/Alchemy Au1X00 SOCs"
651         select SYS_SUPPORTS_32BIT_KERNEL
652
653 choice
654         prompt "Au1X00 SOC Type"
655         depends on SOC_AU1X00
656         help
657           Say Y here to enable support for one of three AMD/Alchemy
658           SOCs. For additional documentation see www.amd.com.
659
660 config SOC_AU1000
661         bool "SOC_AU1000"
662 config SOC_AU1100
663         bool "SOC_AU1100"
664 config SOC_AU1500
665         bool "SOC_AU1500"
666 config SOC_AU1550
667         bool "SOC_AU1550"
668
669 endchoice
670
671 choice
672         prompt "AMD/Alchemy Au1x00 board support"
673         depends on SOC_AU1X00
674         help
675           These are evaluation boards built by AMD/Alchemy to
676           showcase their Au1X00 Internet Edge Processors. The SOC design
677           is based on the MIPS32 architecture running at 266/400/500MHz
678           with many integrated peripherals. Further information can be
679           found at their website, <http://www.amd.com/>. Say Y here if you
680           wish to build a kernel for this platform.
681
682 config MIPS_PB1000
683         bool "PB1000 board"
684         depends on SOC_AU1000
685         select DMA_NONCOHERENT
686         select HW_HAS_PCI
687         select SWAP_IO_SPACE
688
689 config MIPS_PB1100
690         bool "PB1100 board"
691         depends on SOC_AU1100
692         select DMA_NONCOHERENT
693         select HW_HAS_PCI
694         select SWAP_IO_SPACE
695
696 config MIPS_PB1500
697         bool "PB1500 board"
698         depends on SOC_AU1500
699         select DMA_NONCOHERENT
700         select HW_HAS_PCI
701
702 config MIPS_PB1550
703         bool "PB1550 board"
704         depends on SOC_AU1550
705         select DMA_COHERENT
706         select HW_HAS_PCI
707         select MIPS_DISABLE_OBSOLETE_IDE
708
709 config MIPS_PB1200
710         bool "AMD Alchemy PB1200 board"
711         select SOC_AU1200
712         select DMA_NONCOHERENT
713         select MIPS_DISABLE_OBSOLETE_IDE
714         select SYS_SUPPORTS_LITTLE_ENDIAN
715
716 config MIPS_DB1000
717         bool "DB1000 board"
718         depends on SOC_AU1000
719         select DMA_NONCOHERENT
720         select HW_HAS_PCI
721
722 config MIPS_DB1100
723         bool "DB1100 board"
724         depends on SOC_AU1100
725         select DMA_NONCOHERENT
726
727 config MIPS_DB1500
728         bool "DB1500 board"
729         depends on SOC_AU1500
730         select DMA_NONCOHERENT
731         select HW_HAS_PCI
732         select MIPS_DISABLE_OBSOLETE_IDE
733
734 config MIPS_DB1550
735         bool "DB1550 board"
736         depends on SOC_AU1550
737         select HW_HAS_PCI
738         select DMA_NONCOHERENT
739         select MIPS_DISABLE_OBSOLETE_IDE
740
741 config MIPS_BOSPORUS
742         bool "Bosporus board"
743         depends on SOC_AU1500
744         select DMA_NONCOHERENT
745
746 config MIPS_DB1200
747         bool "AMD Alchemy DB1200 board"
748         select SOC_AU1200
749         select DMA_NONCOHERENT
750         select MIPS_DISABLE_OBSOLETE_IDE
751         select SYS_SUPPORTS_LITTLE_ENDIAN
752
753 config MIPS_MIRAGE
754         bool "Mirage board"
755         depends on SOC_AU1500
756         select DMA_NONCOHERENT
757
758 config MIPS_XXS1500
759         bool "MyCable XXS1500 board"
760         depends on SOC_AU1500
761         select DMA_NONCOHERENT
762
763 config MIPS_MTX1
764         bool "4G Systems MTX-1 board"
765         depends on SOC_AU1500
766         select HW_HAS_PCI
767         select DMA_NONCOHERENT
768
769 endchoice
770
771 config SNI_RM200_PCI
772         bool "Support for SNI RM200 PCI"
773         select ARC
774         select ARC32
775         select BOOT_ELF32
776         select DMA_NONCOHERENT
777         select GENERIC_ISA_DMA
778         select HAVE_STD_PC_SERIAL_PORT
779         select HW_HAS_PCI
780         select I8259
781         select ISA
782         select SYS_SUPPORTS_32BIT_KERNEL
783         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
784         help
785           The SNI RM200 PCI was a MIPS-based platform manufactured by Siemens
786           Nixdorf Informationssysteme (SNI), parent company of Pyramid
787           Technology and now in turn merged with Fujitsu.  Say Y here to
788           support this machine type.
789
790 config TOSHIBA_RBTX4927
791         bool "Support for Toshiba TBTX49[23]7 board"
792         select DMA_NONCOHERENT
793         select HAS_TXX9_SERIAL
794         select HW_HAS_PCI
795         select I8259
796         select ISA
797         select SWAP_IO_SPACE
798         select SYS_SUPPORTS_32BIT_KERNEL
799         select SYS_SUPPORTS_64BIT_KERNEL
800         help
801           This Toshiba board is based on the TX4927 processor. Say Y here to
802           support this machine type
803
804 config TOSHIBA_FPCIB0
805         bool "FPCIB0 Backplane Support"
806         depends on TOSHIBA_RBTX4927
807
808 source "arch/mips/sgi-ip27/Kconfig"
809 source "arch/mips/sibyte/Kconfig"
810
811 config RWSEM_GENERIC_SPINLOCK
812         bool
813         default y
814
815 config RWSEM_XCHGADD_ALGORITHM
816         bool
817
818 config GENERIC_CALIBRATE_DELAY
819         bool
820         default y
821
822 #
823 # Select some configuration options automatically based on user selections.
824 #
825 config ARC
826         bool
827         depends on SNI_RM200_PCI || SGI_IP32 || SGI_IP27 || SGI_IP22 || MIPS_MAGNUM_4000 || OLIVETTI_M700 || ACER_PICA_61
828         default y
829
830 config DMA_COHERENT
831         bool
832
833 config DMA_IP27
834         bool
835
836 config DMA_IP32
837         bool
838         select DMA_NEED_PCI_MAP_STATE
839
840 config DMA_NONCOHERENT
841         bool
842         select DMA_NEED_PCI_MAP_STATE
843
844 config DMA_NEED_PCI_MAP_STATE
845         bool
846
847 config EARLY_PRINTK
848         bool
849         depends on MACH_DECSTATION
850         default y
851
852 config GENERIC_ISA_DMA
853         bool
854         depends on SNI_RM200_PCI || MIPS_MAGNUM_4000 || OLIVETTI_M700 || ACER_PICA_61 || MIPS_MALTA
855         default y
856
857 config I8259
858         bool
859         depends on SNI_RM200_PCI || DDB5477 || DDB5476 || DDB5074 || MACH_JAZZ || MIPS_MALTA || MIPS_COBALT
860         default y
861
862 config LIMITED_DMA
863         bool
864         select HIGHMEM
865
866 config MIPS_BONITO64
867         bool
868         depends on MIPS_ATLAS || MIPS_MALTA
869         default y
870
871 config MIPS_MSC
872         bool
873         depends on MIPS_ATLAS || MIPS_MALTA
874         default y
875
876 config MIPS_NILE4
877         bool
878         depends on LASAT
879         default y
880
881 config MIPS_DISABLE_OBSOLETE_IDE
882         bool
883
884 config CPU_LITTLE_ENDIAN
885         bool "Generate little endian code"
886         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
887         default n if MIPS_EV64120 || MIPS_EV96100 || MOMENCO_OCELOT || MOMENCO_OCELOT_G || SGI_IP22 || SGI_IP27 || SGI_IP32 || TOSHIBA_JMR3927
888         help
889           Some MIPS machines can be configured for either little or big endian
890           byte order. These modes require different kernels. Say Y if your
891           machine is little endian, N if it's a big endian machine.
892
893 config IRQ_CPU
894         bool
895
896 config IRQ_CPU_RM7K
897         bool
898
899 config IRQ_MV64340
900         bool
901
902 config DDB5XXX_COMMON
903         bool
904         depends on DDB5074 || DDB5476 || DDB5477
905         default y
906
907 config MIPS_BOARDS_GEN
908         bool
909         depends on MIPS_ATLAS || MIPS_MALTA || MIPS_SEAD
910         default y
911
912 config MIPS_GT64111
913         bool
914         depends on MIPS_COBALT
915         default y
916
917 config MIPS_GT64120
918         bool
919         depends on MIPS_EV64120 || MIPS_EV96100 || LASAT || MIPS_ATLAS || MIPS_MALTA || MOMENCO_OCELOT
920         default y
921
922 config MIPS_TX3927
923         bool
924         depends on TOSHIBA_JMR3927
925         select HAS_TXX9_SERIAL
926         default y
927
928 config PCI_MARVELL
929         bool
930
931 config ITE_BOARD_GEN
932         bool
933         depends on MIPS_IVR || MIPS_ITE8172
934         default y
935
936 config SWAP_IO_SPACE
937         bool
938
939 #
940 # Unfortunately not all GT64120 systems run the chip at the same clock.
941 # As the user for the clock rate and try to minimize the available options.
942 #
943 choice
944         prompt "Galileo Chip Clock"
945         #default SYSCLK_83 if MIPS_EV64120
946         depends on MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
947         default SYSCLK_83 if MIPS_EV64120
948         default SYSCLK_100 if MOMENCO_OCELOT || MOMENCO_OCELOT_G
949
950 config SYSCLK_75
951         bool "75" if MIPS_EV64120
952
953 config SYSCLK_83
954         bool "83.3" if MIPS_EV64120
955
956 config SYSCLK_100
957         bool "100" if MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
958
959 endchoice
960
961 config AU1X00_USB_DEVICE
962         bool
963         depends on MIPS_PB1500 || MIPS_PB1100 || MIPS_PB1000
964         default n
965
966 config MIPS_GT96100
967         bool
968         depends on MIPS_EV96100
969         default y
970         help
971           Say Y here to support the Galileo Technology GT96100 communications
972           controller card.  There is a web page at <http://www.galileot.com/>.
973
974 config IT8172_CIR
975         bool
976         depends on MIPS_ITE8172 || MIPS_IVR
977         default y
978
979 config IT8712
980         bool
981         depends on MIPS_ITE8172
982         default y
983
984 config BOOT_ELF32
985         bool
986         depends on MACH_DECSTATION || MIPS_ATLAS || MIPS_MALTA || MOMENCO_JAGUAR_ATX || MOMENCO_OCELOT_3 || SIBYTE_SB1xxx_SOC || SGI_IP32 || SGI_IP22 || SNI_RM200_PCI
987         default y
988
989 config MIPS_L1_CACHE_SHIFT
990         int
991         default "4" if MACH_DECSTATION
992         default "7" if SGI_IP27
993         default "5"
994
995 config ARC32
996         bool
997         depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP22 || SGI_IP32
998         default y
999
1000 config HAVE_STD_PC_SERIAL_PORT
1001         bool
1002
1003 config ARC_CONSOLE
1004         bool "ARC console support"
1005         depends on SGI_IP22 || SNI_RM200_PCI
1006
1007 config ARC_MEMORY
1008         bool
1009         depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP32
1010         default y
1011
1012 config ARC_PROMLIB
1013         bool
1014         depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP22 || SGI_IP32
1015         default y
1016
1017 config ARC64
1018         bool
1019         depends on SGI_IP27
1020         default y
1021
1022 config BOOT_ELF64
1023         bool
1024         depends on SGI_IP27
1025         default y
1026
1027 #config MAPPED_PCI_IO y
1028 #       bool
1029 #       depends on SGI_IP27
1030 #       default y
1031
1032 config QL_ISP_A64
1033         bool
1034         depends on SGI_IP27
1035         default y
1036
1037 config TOSHIBA_BOARDS
1038         bool
1039         depends on TOSHIBA_JMR3927 || TOSHIBA_RBTX4927
1040         default y
1041
1042 endmenu
1043
1044 menu "CPU selection"
1045
1046 choice
1047         prompt "CPU type"
1048         default CPU_R4X00
1049
1050 config CPU_MIPS32
1051         bool "MIPS32"
1052         select CPU_SUPPORTS_32BIT_KERNEL
1053
1054 config CPU_MIPS64
1055         bool "MIPS64"
1056         select CPU_SUPPORTS_32BIT_KERNEL
1057         select CPU_SUPPORTS_64BIT_KERNEL
1058
1059 config CPU_R3000
1060         bool "R3000"
1061         select CPU_SUPPORTS_32BIT_KERNEL
1062         help
1063           Please make sure to pick the right CPU type. Linux/MIPS is not
1064           designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1065           *not* work on R4000 machines and vice versa.  However, since most
1066           of the supported machines have an R4000 (or similar) CPU, R4x00
1067           might be a safe bet.  If the resulting kernel does not work,
1068           try to recompile with R3000.
1069
1070 config CPU_TX39XX
1071         bool "R39XX"
1072         select CPU_SUPPORTS_32BIT_KERNEL
1073
1074 config CPU_VR41XX
1075         bool "R41xx"
1076         select CPU_SUPPORTS_32BIT_KERNEL
1077         select CPU_SUPPORTS_64BIT_KERNEL
1078         help
1079           The options selects support for the NEC VR41xx series of processors.
1080           Only choose this option if you have one of these processors as a
1081           kernel built with this option will not run on any other type of
1082           processor or vice versa.
1083
1084 config CPU_R4300
1085         bool "R4300"
1086         select CPU_SUPPORTS_32BIT_KERNEL
1087         select CPU_SUPPORTS_64BIT_KERNEL
1088         help
1089           MIPS Technologies R4300-series processors.
1090
1091 config CPU_R4X00
1092         bool "R4x00"
1093         select CPU_SUPPORTS_32BIT_KERNEL
1094         select CPU_SUPPORTS_64BIT_KERNEL
1095         help
1096           MIPS Technologies R4000-series processors other than 4300, including
1097           the R4000, R4400, R4600, and 4700.
1098
1099 config CPU_TX49XX
1100         bool "R49XX"
1101         select CPU_SUPPORTS_32BIT_KERNEL
1102         select CPU_SUPPORTS_64BIT_KERNEL
1103
1104 config CPU_R5000
1105         bool "R5000"
1106         select CPU_SUPPORTS_32BIT_KERNEL
1107         select CPU_SUPPORTS_64BIT_KERNEL
1108         help
1109           MIPS Technologies R5000-series processors other than the Nevada.
1110
1111 config CPU_R5432
1112         bool "R5432"
1113
1114 config CPU_R6000
1115         bool "R6000"
1116         depends on EXPERIMENTAL
1117         select CPU_SUPPORTS_32BIT_KERNEL
1118         help
1119           MIPS Technologies R6000 and R6000A series processors.  Note these
1120           processors are extremly rare and the support for them is incomplete.
1121
1122 config CPU_NEVADA
1123         bool "RM52xx"
1124         select CPU_SUPPORTS_32BIT_KERNEL
1125         select CPU_SUPPORTS_64BIT_KERNEL
1126         help
1127           QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1128
1129 config CPU_R8000
1130         bool "R8000"
1131         depends on EXPERIMENTAL
1132         select CPU_SUPPORTS_64BIT_KERNEL
1133         help
1134           MIPS Technologies R8000 processors.  Note these processors are
1135           uncommon and the support for them is incomplete.
1136
1137 config CPU_R10000
1138         bool "R10000"
1139         select CPU_SUPPORTS_32BIT_KERNEL
1140         select CPU_SUPPORTS_64BIT_KERNEL
1141         help
1142           MIPS Technologies R10000-series processors.
1143
1144 config CPU_RM7000
1145         bool "RM7000"
1146         select CPU_SUPPORTS_32BIT_KERNEL
1147         select CPU_SUPPORTS_64BIT_KERNEL
1148
1149 config CPU_RM9000
1150         bool "RM9000"
1151         select CPU_SUPPORTS_32BIT_KERNEL
1152         select CPU_SUPPORTS_64BIT_KERNEL
1153
1154 config CPU_SB1
1155         bool "SB1"
1156         select CPU_SUPPORTS_32BIT_KERNEL
1157         select CPU_SUPPORTS_64BIT_KERNEL
1158
1159 endchoice
1160
1161 choice
1162         prompt "Kernel page size"
1163         default PAGE_SIZE_4KB
1164
1165 config PAGE_SIZE_4KB
1166         bool "4kB"
1167         help
1168          This option select the standard 4kB Linux page size.  On some
1169          R3000-family processors this is the only available page size.  Using
1170          4kB page size will minimize memory consumption and is therefore
1171          recommended for low memory systems.
1172
1173 config PAGE_SIZE_8KB
1174         bool "8kB"
1175         depends on EXPERIMENTAL && CPU_R8000
1176         help
1177           Using 8kB page size will result in higher performance kernel at
1178           the price of higher memory consumption.  This option is available
1179           only on the R8000 processor.  Not that at the time of this writing
1180           this option is still high experimental; there are also issues with
1181           compatibility of user applications.
1182
1183 config PAGE_SIZE_16KB
1184         bool "16kB"
1185         depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1186         help
1187           Using 16kB page size will result in higher performance kernel at
1188           the price of higher memory consumption.  This option is available on
1189           all non-R3000 family processor.  Not that at the time of this
1190           writing this option is still high experimental; there are also
1191           issues with compatibility of user applications.
1192
1193 config PAGE_SIZE_64KB
1194         bool "64kB"
1195         depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1196         help
1197           Using 64kB page size will result in higher performance kernel at
1198           the price of higher memory consumption.  This option is available on
1199           all non-R3000 family processor.  Not that at the time of this
1200           writing this option is still high experimental; there are also
1201           issues with compatibility of user applications.
1202
1203 endchoice
1204
1205 config BOARD_SCACHE
1206         bool
1207
1208 config IP22_CPU_SCACHE
1209         bool
1210         select BOARD_SCACHE
1211
1212 config R5000_CPU_SCACHE
1213         bool
1214         select BOARD_SCACHE
1215
1216 config RM7000_CPU_SCACHE
1217         bool
1218         select BOARD_SCACHE
1219
1220 config SIBYTE_DMA_PAGEOPS
1221         bool "Use DMA to clear/copy pages"
1222         depends on CPU_SB1
1223         help
1224           Instead of using the CPU to zero and copy pages, use a Data Mover
1225           channel.  These DMA channels are otherwise unused by the standard
1226           SiByte Linux port.  Seems to give a small performance benefit.
1227
1228 config CPU_HAS_PREFETCH
1229         bool "Enable prefetches" if CPU_SB1 && !CPU_SB1_PASS_2
1230         default y if CPU_MIPS32 || CPU_MIPS64 || CPU_RM7000 || CPU_RM9000 || CPU_R10000
1231
1232 config VTAG_ICACHE
1233         bool "Support for Virtual Tagged I-cache" if CPU_MIPS64 || CPU_MIPS32
1234         default y if CPU_SB1
1235
1236 config SB1_PASS_1_WORKAROUNDS
1237         bool
1238         depends on CPU_SB1_PASS_1
1239         default y
1240
1241 config SB1_PASS_2_WORKAROUNDS
1242         bool
1243         depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1244         default y
1245
1246 config SB1_PASS_2_1_WORKAROUNDS
1247         bool
1248         depends on CPU_SB1 && CPU_SB1_PASS_2
1249         default y
1250
1251 config 64BIT_PHYS_ADDR
1252         bool "Support for 64-bit physical address space"
1253         depends on (CPU_R4X00 || CPU_R5000 || CPU_RM7000 || CPU_RM9000 || CPU_R10000 || CPU_SB1 || CPU_MIPS32 || CPU_MIPS64) && 32BIT
1254
1255 config CPU_ADVANCED
1256         bool "Override CPU Options"
1257         depends on 32BIT
1258         help
1259           Saying yes here allows you to select support for various features
1260           your CPU may or may not have.  Most people should say N here.
1261
1262 config CPU_HAS_LLSC
1263         bool "ll/sc Instructions available" if CPU_ADVANCED
1264         default y if !CPU_ADVANCED && !CPU_R3000 && !CPU_VR41XX && !CPU_TX39XX
1265         help
1266           MIPS R4000 series and later provide the Load Linked (ll)
1267           and Store Conditional (sc) instructions. More information is
1268           available at <http://www.go-ecs.com/mips/miptek1.htm>.
1269
1270           Say Y here if your CPU has the ll and sc instructions.  Say Y here
1271           for better performance, N if you don't know.  You must say Y here
1272           for multiprocessor machines.
1273
1274 config CPU_HAS_LLDSCD
1275         bool "lld/scd Instructions available" if CPU_ADVANCED
1276         default y if !CPU_ADVANCED && !CPU_R3000 && !CPU_VR41XX && !CPU_TX39XX && !CPU_MIPS32
1277         help
1278           Say Y here if your CPU has the lld and scd instructions, the 64-bit
1279           equivalents of ll and sc.  Say Y here for better performance, N if
1280           you don't know.  You must say Y here for multiprocessor machines.
1281
1282 config CPU_HAS_WB
1283         bool "Writeback Buffer available" if CPU_ADVANCED
1284         default y if !CPU_ADVANCED && CPU_R3000 && MACH_DECSTATION
1285         help
1286           Say N here for slightly better performance.  You must say Y here for
1287           machines which require flushing of write buffers in software.  Saying
1288           Y is the safe option; N may result in kernel malfunction and crashes.
1289
1290 config CPU_HAS_SYNC
1291         bool
1292         depends on !CPU_R3000
1293         default y
1294
1295 #
1296 # - Highmem only makes sense for the 32-bit kernel.
1297 # - The current highmem code will only work properly on physically indexed
1298 #   caches such as R3000, SB1, R7000 or those that look like they're virtually
1299 #   indexed such as R4000/R4400 SC and MC versions or R10000.  So for the
1300 #   moment we protect the user and offer the highmem option only on machines
1301 #   where it's known to be safe.  This will not offer highmem on a few systems
1302 #   such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1303 #   indexed CPUs but we're playing safe.
1304 # - We should not offer highmem for system of which we already know that they
1305 #   don't have memory configurations that could gain from highmem support in
1306 #   the kernel because they don't support configurations with RAM at physical
1307 #   addresses > 0x20000000.
1308 #
1309 config HIGHMEM
1310         bool "High Memory Support"
1311         depends on 32BIT && (CPU_R3000 || CPU_SB1 || CPU_R7000 || CPU_RM9000 || CPU_R10000) && !(MACH_DECSTATION || MOMENCO_JAGUAR_ATX)
1312
1313 config ARCH_FLATMEM_ENABLE
1314         def_bool y
1315         depends on !NUMA
1316
1317 source "mm/Kconfig"
1318
1319 config SMP
1320         bool "Multi-Processing support"
1321         depends on CPU_RM9000 || (SIBYTE_SB1250 && !SIBYTE_STANDALONE) || SGI_IP27
1322         ---help---
1323           This enables support for systems with more than one CPU. If you have
1324           a system with only one CPU, like most personal computers, say N. If
1325           you have a system with more than one CPU, say Y.
1326
1327           If you say N here, the kernel will run on single and multiprocessor
1328           machines, but will use only one CPU of a multiprocessor machine. If
1329           you say Y here, the kernel will run on many, but not all,
1330           singleprocessor machines. On a singleprocessor machine, the kernel
1331           will run faster if you say N here.
1332
1333           People using multiprocessor machines who say Y here should also say
1334           Y to "Enhanced Real Time Clock Support", below.
1335
1336           See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1337           available at <http://www.tldp.org/docs.html#howto>.
1338
1339           If you don't know what to do here, say N.
1340
1341 config NR_CPUS
1342         int "Maximum number of CPUs (2-64)"
1343         range 2 64
1344         depends on SMP
1345         default "64" if SGI_IP27
1346         default "2"
1347         help
1348           This allows you to specify the maximum number of CPUs which this
1349           kernel will support.  The maximum supported value is 32 for 32-bit
1350           kernel and 64 for 64-bit kernels; the minimum value which makes
1351           sense is 2.
1352
1353           This is purely to save memory - each supported CPU adds
1354           approximately eight kilobytes to the kernel image.
1355
1356 config PREEMPT
1357         bool "Preemptible Kernel"
1358         help
1359           This option reduces the latency of the kernel when reacting to
1360           real-time or interactive events by allowing a low priority process to
1361           be preempted even if it is in kernel mode executing a system call.
1362           This allows applications to run more reliably even when the system is
1363           under load.
1364
1365 config RTC_DS1742
1366         bool "DS1742 BRAM/RTC support"
1367         depends on TOSHIBA_JMR3927 || TOSHIBA_RBTX4927
1368
1369 config MIPS_INSANE_LARGE
1370         bool "Support for large 64-bit configurations"
1371         depends on CPU_R10000 && 64BIT
1372         help
1373           MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1374           previous 64-bit processors which only supported 40 bit / 1TB. If you
1375           need processes of more than 1TB virtual address space, say Y here.
1376           This will result in additional memory usage, so it is not
1377           recommended for normal users.
1378
1379 config RWSEM_GENERIC_SPINLOCK
1380         bool
1381         default y
1382
1383 endmenu
1384
1385 menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1386
1387 config HW_HAS_PCI
1388         bool
1389
1390 config PCI
1391         bool "Support for PCI controller"
1392         depends on HW_HAS_PCI
1393         help
1394           Find out whether you have a PCI motherboard. PCI is the name of a
1395           bus system, i.e. the way the CPU talks to the other stuff inside
1396           your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1397           say Y, otherwise N.
1398
1399           The PCI-HOWTO, available from
1400           <http://www.tldp.org/docs.html#howto>, contains valuable
1401           information about which PCI hardware does work under Linux and which
1402           doesn't.
1403
1404 config PCI_DOMAINS
1405         bool
1406         depends on PCI
1407
1408 source "drivers/pci/Kconfig"
1409
1410 #
1411 # ISA support is now enabled via select.  Too many systems still have the one
1412 # or other ISA chip on the board that users don't know about so don't expect
1413 # users to choose the right thing ...
1414 #
1415 config ISA
1416         bool
1417
1418 config EISA
1419         bool "EISA support"
1420         depends on SGI_IP22 || SNI_RM200_PCI
1421         select ISA
1422         ---help---
1423           The Extended Industry Standard Architecture (EISA) bus was
1424           developed as an open alternative to the IBM MicroChannel bus.
1425
1426           The EISA bus provided some of the features of the IBM MicroChannel
1427           bus while maintaining backward compatibility with cards made for
1428           the older ISA bus.  The EISA bus saw limited use between 1988 and
1429           1995 when it was made obsolete by the PCI bus.
1430
1431           Say Y here if you are building a kernel for an EISA-based machine.
1432
1433           Otherwise, say N.
1434
1435 source "drivers/eisa/Kconfig"
1436
1437 config TC
1438         bool "TURBOchannel support"
1439         depends on MACH_DECSTATION
1440         help
1441           TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1442           processors.  Documentation on writing device drivers for TurboChannel
1443           is available at:
1444           <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1445
1446 #config ACCESSBUS
1447 #       bool "Access.Bus support"
1448 #       depends on TC
1449
1450 config MMU
1451         bool
1452         default y
1453
1454 config MCA
1455         bool
1456
1457 config SBUS
1458         bool
1459
1460 source "drivers/pcmcia/Kconfig"
1461
1462 source "drivers/pci/hotplug/Kconfig"
1463
1464 endmenu
1465
1466 menu "Executable file formats"
1467
1468 source "fs/Kconfig.binfmt"
1469
1470 config TRAD_SIGNALS
1471         bool
1472         default y if 32BIT
1473
1474 config BUILD_ELF64
1475         bool "Use 64-bit ELF format for building"
1476         depends on 64BIT
1477         help
1478           A 64-bit kernel is usually built using the 64-bit ELF binary object
1479           format as it's one that allows arbitrary 64-bit constructs.  For
1480           kernels that are loaded within the KSEG compatibility segments the
1481           32-bit ELF format can optionally be used resulting in a somewhat
1482           smaller binary, but this option is not explicitly supported by the
1483           toolchain and since binutils 2.14 it does not even work at all.
1484
1485           Say Y to use the 64-bit format or N to use the 32-bit one.
1486
1487           If unsure say Y.
1488
1489 config BINFMT_IRIX
1490         bool "Include IRIX binary compatibility"
1491         depends on !CPU_LITTLE_ENDIAN && 32BIT && BROKEN
1492
1493 config MIPS32_COMPAT
1494         bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
1495         depends on 64BIT
1496         help
1497           Select this option if you want Linux/MIPS 32-bit binary
1498           compatibility. Since all software available for Linux/MIPS is
1499           currently 32-bit you should say Y here.
1500
1501 config COMPAT
1502         bool
1503         depends on MIPS32_COMPAT
1504         default y
1505
1506 config MIPS32_O32
1507         bool "Kernel support for o32 binaries"
1508         depends on MIPS32_COMPAT
1509         help
1510           Select this option if you want to run o32 binaries.  These are pure
1511           32-bit binaries as used by the 32-bit Linux/MIPS port.  Most of
1512           existing binaries are in this format.
1513
1514           If unsure, say Y.
1515
1516 config MIPS32_N32
1517         bool "Kernel support for n32 binaries"
1518         depends on MIPS32_COMPAT
1519         help
1520           Select this option if you want to run n32 binaries.  These are
1521           64-bit binaries using 32-bit quantities for addressing and certain
1522           data that would normally be 64-bit.  They are used in special
1523           cases.
1524
1525           If unsure, say N.
1526
1527 config BINFMT_ELF32
1528         bool
1529         default y if MIPS32_O32 || MIPS32_N32
1530
1531 config PM
1532         bool "Power Management support (EXPERIMENTAL)"
1533         depends on EXPERIMENTAL && MACH_AU1X00
1534
1535 endmenu
1536
1537 source "net/Kconfig"
1538
1539 source "drivers/Kconfig"
1540
1541 source "fs/Kconfig"
1542
1543 source "arch/mips/Kconfig.debug"
1544
1545 source "security/Kconfig"
1546
1547 source "crypto/Kconfig"
1548
1549 source "lib/Kconfig"
1550
1551 #
1552 # Use the generic interrupt handling code in kernel/irq/:
1553 #
1554 config GENERIC_HARDIRQS
1555         bool
1556         default y
1557
1558 config GENERIC_IRQ_PROBE
1559         bool
1560         default y
1561
1562 config ISA_DMA_API
1563         bool
1564         default y