Move Sibyte Kconfig stuff into it's own Kconfig.
[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 SWAP_IO_SPACE
335         select SYS_SUPPORTS_32BIT_KERNEL
336         select SYS_SUPPORTS_64BIT_KERNEL
337         help
338           This enables support for the MIPS Technologies Atlas evaluation
339           board.
340
341 config MIPS_MALTA
342         bool "Support for MIPS Malta board"
343         select BOOT_ELF32
344         select HAVE_STD_PC_SERIAL_PORT
345         select DMA_NONCOHERENT
346         select GENERIC_ISA_DMA
347         select HW_HAS_PCI
348         select I8259
349         select MIPS_GT64120
350         select SWAP_IO_SPACE
351         select SYS_SUPPORTS_32BIT_KERNEL
352         select SYS_SUPPORTS_64BIT_KERNEL
353         help
354           This enables support for the MIPS Technologies Malta evaluation
355           board.
356
357 config MIPS_SEAD
358         bool "Support for MIPS SEAD board (EXPERIMENTAL)"
359         depends on EXPERIMENTAL
360         select IRQ_CPU
361         select DMA_NONCOHERENT
362         select SYS_SUPPORTS_32BIT_KERNEL
363         select SYS_SUPPORTS_64BIT_KERNEL
364         help
365           This enables support for the MIPS Technologies SEAD evaluation
366           board.
367
368 config MOMENCO_OCELOT
369         bool "Support for Momentum Ocelot board"
370         select DMA_NONCOHERENT
371         select HW_HAS_PCI
372         select IRQ_CPU
373         select IRQ_CPU_RM7K
374         select MIPS_GT64120
375         select RM7000_CPU_SCACHE
376         select SWAP_IO_SPACE
377         select SYS_SUPPORTS_32BIT_KERNEL
378         select SYS_SUPPORTS_64BIT_KERNEL
379         help
380           The Ocelot is a MIPS-based Single Board Computer (SBC) made by
381           Momentum Computer <http://www.momenco.com/>.
382
383 config MOMENCO_OCELOT_G
384         bool "Support for Momentum Ocelot-G board"
385         select DMA_NONCOHERENT
386         select HW_HAS_PCI
387         select IRQ_CPU
388         select IRQ_CPU_RM7K
389         select PCI_MARVELL
390         select RM7000_CPU_SCACHE
391         select SWAP_IO_SPACE
392         select SYS_SUPPORTS_32BIT_KERNEL
393         select SYS_SUPPORTS_64BIT_KERNEL
394         help
395           The Ocelot is a MIPS-based Single Board Computer (SBC) made by
396           Momentum Computer <http://www.momenco.com/>.
397
398 config MOMENCO_OCELOT_C
399         bool "Support for Momentum Ocelot-C board"
400         select DMA_NONCOHERENT
401         select HW_HAS_PCI
402         select IRQ_CPU
403         select IRQ_MV64340
404         select PCI_MARVELL
405         select RM7000_CPU_SCACHE
406         select SWAP_IO_SPACE
407         select SYS_SUPPORTS_32BIT_KERNEL
408         select SYS_SUPPORTS_64BIT_KERNEL
409         help
410           The Ocelot is a MIPS-based Single Board Computer (SBC) made by
411           Momentum Computer <http://www.momenco.com/>.
412
413 config MOMENCO_OCELOT_3
414         bool "Support for Momentum Ocelot-3 board"
415         select BOOT_ELF32
416         select DMA_NONCOHERENT
417         select HW_HAS_PCI
418         select IRQ_CPU
419         select IRQ_CPU_RM7K
420         select IRQ_MV64340
421         select PCI_MARVELL
422         select RM7000_CPU_SCACHE
423         select SWAP_IO_SPACE
424         select SYS_SUPPORTS_32BIT_KERNEL
425         select SYS_SUPPORTS_64BIT_KERNEL
426         help
427           The Ocelot-3 is based off Discovery III System Controller and
428           PMC-Sierra Rm79000 core.
429
430 config MOMENCO_JAGUAR_ATX
431         bool "Support for Momentum Jaguar board"
432         select BOOT_ELF32
433         select DMA_NONCOHERENT
434         select HW_HAS_PCI
435         select IRQ_CPU
436         select IRQ_CPU_RM7K
437         select IRQ_MV64340
438         select LIMITED_DMA
439         select PCI_MARVELL
440         select RM7000_CPU_SCACHE
441         select SWAP_IO_SPACE
442         select SYS_SUPPORTS_32BIT_KERNEL
443         select SYS_SUPPORTS_64BIT_KERNEL
444         help
445           The Jaguar ATX is a MIPS-based Single Board Computer (SBC) made by
446           Momentum Computer <http://www.momenco.com/>.
447
448 config JAGUAR_DMALOW
449         bool "Low DMA Mode"
450         depends on MOMENCO_JAGUAR_ATX
451         help
452           Select to Y if jump JP5 is set on your board, N otherwise.  Normally
453           the jumper is set, so if you feel unsafe, just say Y.
454
455 config PMC_YOSEMITE
456         bool "Support for PMC-Sierra Yosemite eval board"
457         select DMA_COHERENT
458         select HW_HAS_PCI
459         select IRQ_CPU
460         select IRQ_CPU_RM7K
461         select IRQ_CPU_RM9K
462         select SWAP_IO_SPACE
463         select SYS_SUPPORTS_32BIT_KERNEL
464         select SYS_SUPPORTS_64BIT_KERNEL
465         help
466           Yosemite is an evaluation board for the RM9000x2 processor
467           manufactured by PMC-Sierra
468
469 config HYPERTRANSPORT
470         bool "Hypertransport Support for PMC-Sierra Yosemite"
471         depends on PMC_YOSEMITE
472
473 config DDB5074
474         bool "Support for NEC DDB Vrc-5074 (EXPERIMENTAL)"
475         depends on EXPERIMENTAL
476         select DMA_NONCOHERENT
477         select HAVE_STD_PC_SERIAL_PORT
478         select HW_HAS_PCI
479         select IRQ_CPU
480         select I8259
481         select ISA
482         select SYS_SUPPORTS_32BIT_KERNEL
483         select SYS_SUPPORTS_64BIT_KERNEL
484         help
485           This enables support for the VR5000-based NEC DDB Vrc-5074
486           evaluation board.
487
488 config DDB5476
489         bool "Support for NEC DDB Vrc-5476"
490         select DMA_NONCOHERENT
491         select HAVE_STD_PC_SERIAL_PORT
492         select HW_HAS_PCI
493         select IRQ_CPU
494         select I8259
495         select ISA
496         select SYS_SUPPORTS_32BIT_KERNEL
497         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
498         help
499           This enables support for the R5432-based NEC DDB Vrc-5476
500           evaluation board.
501
502           Features : kernel debugging, serial terminal, NFS root fs, on-board
503           ether port USB, AC97, PCI, PCI VGA card & framebuffer console,
504           IDE controller, PS2 keyboard, PS2 mouse, etc.
505
506 config DDB5477
507         bool "Support for NEC DDB Vrc-5477"
508         select DMA_NONCOHERENT
509         select HW_HAS_PCI
510         select I8259
511         select IRQ_CPU
512         select SYS_SUPPORTS_32BIT_KERNEL
513         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
514         help
515           This enables support for the R5432-based NEC DDB Vrc-5477,
516           or Rockhopper/SolutionGear boards with R5432/R5500 CPUs.
517
518           Features : kernel debugging, serial terminal, NFS root fs, on-board
519           ether port USB, AC97, PCI, etc.
520
521 config DDB5477_BUS_FREQUENCY
522         int "bus frequency (in kHZ, 0 for auto-detect)"
523         depends on DDB5477
524         default 0
525
526 config QEMU
527         bool "Support for Qemu"
528         select DMA_COHERENT
529         select GENERIC_ISA_DMA
530         select HAVE_STD_PC_SERIAL_PORT
531         select I8259
532         select ISA
533         select SWAP_IO_SPACE
534         select SYS_SUPPORTS_32BIT_KERNEL
535         select SYS_SUPPORTS_BIG_ENDIAN
536         help
537          Qemu is a software emulator which among other architectures also
538          can simulate a MIPS32 4Kc system.  This patch adds support for the
539          system architecture that currently is being simulated by Qemu.  It
540          will eventually be removed again when Qemu has the capability to
541          simulate actual MIPS hardware platforms.  More information on Qemu
542          can be found at http://www.linux-mips.org/wiki/Qemu.
543
544 config SGI_IP22
545         bool "Support for SGI IP22 (Indy/Indigo2)"
546         select ARC
547         select ARC32
548         select BOOT_ELF32
549         select DMA_NONCOHERENT
550         select IP22_CPU_SCACHE
551         select IRQ_CPU
552         select SWAP_IO_SPACE
553         select SYS_SUPPORTS_32BIT_KERNEL
554         select SYS_SUPPORTS_64BIT_KERNEL
555         help
556           This are the SGI Indy, Challenge S and Indigo2, as well as certain
557           OEM variants like the Tandem CMN B006S. To compile a Linux kernel
558           that runs on these, say Y here.
559
560 config SGI_IP27
561         bool "Support for SGI IP27 (Origin200/2000)"
562         select ARC
563         select ARC64
564         select DMA_IP27
565         select HW_HAS_PCI
566         select PCI_DOMAINS
567         select SYS_SUPPORTS_64BIT_KERNEL
568         help
569           This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
570           workstations.  To compile a Linux kernel that runs on these, say Y
571           here.
572
573 #config SGI_SN0_XXL
574 #       bool "IP27 XXL"
575 #       depends on SGI_IP27
576 #         This options adds support for userspace processes upto 16TB size.
577 #         Normally the limit is just .5TB.
578
579 config SGI_SN0_N_MODE
580         bool "IP27 N-Mode"
581         depends on SGI_IP27
582         help
583           The nodes of Origin 200, Origin 2000 and Onyx 2 systems can be
584           configured in either N-Modes which allows for more nodes or M-Mode
585           which allows for more memory.  Your system is most probably
586           running in M-Mode, so you should say N here.
587
588 config ARCH_DISCONTIGMEM_ENABLE
589         bool
590         default y if SGI_IP27
591         help
592           Say Y to upport efficient handling of discontiguous physical memory,
593           for architectures which are either NUMA (Non-Uniform Memory Access)
594           or have huge holes in the physical address space for other reasons.
595           See <file:Documentation/vm/numa> for more.
596
597 config NUMA
598         bool "NUMA Support"
599         depends on SGI_IP27
600         help
601           Say Y to compile the kernel to support NUMA (Non-Uniform Memory
602           Access).  This option is for configuring high-end multiprocessor
603           server machines.  If in doubt, say N.
604
605 config MAPPED_KERNEL
606         bool "Mapped kernel support"
607         depends on SGI_IP27
608         help
609           Change the way a Linux kernel is loaded into memory on a MIPS64
610           machine.  This is required in order to support text replication and
611           NUMA.  If you need to understand it, read the source code.
612
613 config REPLICATE_KTEXT
614         bool "Kernel text replication support"
615         depends on SGI_IP27
616         help
617           Say Y here to enable replicating the kernel text across multiple
618           nodes in a NUMA cluster.  This trades memory for speed.
619
620 config REPLICATE_EXHANDLERS
621         bool "Exception handler replication support"
622         depends on SGI_IP27
623         help
624           Say Y here to enable replicating the kernel exception handlers
625           across multiple nodes in a NUMA cluster. This trades memory for
626           speed.
627
628 config SGI_IP32
629         bool "Support for SGI IP32 (O2) (EXPERIMENTAL)"
630         depends on EXPERIMENTAL
631         select ARC
632         select ARC32
633         select BOOT_ELF32
634         select OWN_DMA
635         select DMA_IP32
636         select DMA_NONCOHERENT
637         select HW_HAS_PCI
638         select R5000_CPU_SCACHE
639         select RM7000_CPU_SCACHE
640         select SYS_SUPPORTS_64BIT_KERNEL
641         help
642           If you want this kernel to run on SGI O2 workstation, say Y here.
643
644 config SOC_AU1X00
645         bool "Support for AMD/Alchemy Au1X00 SOCs"
646         select SYS_SUPPORTS_32BIT_KERNEL
647
648 choice
649         prompt "Au1X00 SOC Type"
650         depends on SOC_AU1X00
651         help
652           Say Y here to enable support for one of three AMD/Alchemy
653           SOCs. For additional documentation see www.amd.com.
654
655 config SOC_AU1000
656         bool "SOC_AU1000"
657 config SOC_AU1100
658         bool "SOC_AU1100"
659 config SOC_AU1500
660         bool "SOC_AU1500"
661 config SOC_AU1550
662         bool "SOC_AU1550"
663
664 endchoice
665
666 choice
667         prompt "AMD/Alchemy Au1x00 board support"
668         depends on SOC_AU1X00
669         help
670           These are evaluation boards built by AMD/Alchemy to
671           showcase their Au1X00 Internet Edge Processors. The SOC design
672           is based on the MIPS32 architecture running at 266/400/500MHz
673           with many integrated peripherals. Further information can be
674           found at their website, <http://www.amd.com/>. Say Y here if you
675           wish to build a kernel for this platform.
676
677 config MIPS_PB1000
678         bool "PB1000 board"
679         depends on SOC_AU1000
680         select DMA_NONCOHERENT
681         select HW_HAS_PCI
682         select SWAP_IO_SPACE
683
684 config MIPS_PB1100
685         bool "PB1100 board"
686         depends on SOC_AU1100
687         select DMA_NONCOHERENT
688         select HW_HAS_PCI
689         select SWAP_IO_SPACE
690
691 config MIPS_PB1500
692         bool "PB1500 board"
693         depends on SOC_AU1500
694         select DMA_COHERENT
695         select HW_HAS_PCI
696
697 config MIPS_PB1550
698         bool "PB1550 board"
699         depends on SOC_AU1550
700         select DMA_COHERENT
701         select HW_HAS_PCI
702         select MIPS_DISABLE_OBSOLETE_IDE
703
704 config MIPS_DB1000
705         bool "DB1000 board"
706         depends on SOC_AU1000
707         select DMA_NONCOHERENT
708         select HW_HAS_PCI
709
710 config MIPS_DB1100
711         bool "DB1100 board"
712         depends on SOC_AU1100
713         select DMA_NONCOHERENT
714
715 config MIPS_DB1500
716         bool "DB1500 board"
717         depends on SOC_AU1500
718         select DMA_COHERENT
719         select HW_HAS_PCI
720         select MIPS_DISABLE_OBSOLETE_IDE
721
722 config MIPS_DB1550
723         bool "DB1550 board"
724         depends on SOC_AU1550
725         select HW_HAS_PCI
726         select DMA_COHERENT
727         select MIPS_DISABLE_OBSOLETE_IDE
728
729 config MIPS_BOSPORUS
730         bool "Bosporus board"
731         depends on SOC_AU1500
732         select DMA_NONCOHERENT
733
734 config MIPS_MIRAGE
735         bool "Mirage board"
736         depends on SOC_AU1500
737         select DMA_NONCOHERENT
738
739 config MIPS_XXS1500
740         bool "MyCable XXS1500 board"
741         depends on SOC_AU1500
742         select DMA_NONCOHERENT
743
744 config MIPS_MTX1
745         bool "4G Systems MTX-1 board"
746         depends on SOC_AU1500
747         select HW_HAS_PCI
748         select DMA_NONCOHERENT
749
750 endchoice
751
752 config SNI_RM200_PCI
753         bool "Support for SNI RM200 PCI"
754         select ARC
755         select ARC32
756         select BOOT_ELF32
757         select DMA_NONCOHERENT
758         select GENERIC_ISA_DMA
759         select HAVE_STD_PC_SERIAL_PORT
760         select HW_HAS_PCI
761         select I8259
762         select ISA
763         select SYS_SUPPORTS_32BIT_KERNEL
764         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
765         help
766           The SNI RM200 PCI was a MIPS-based platform manufactured by Siemens
767           Nixdorf Informationssysteme (SNI), parent company of Pyramid
768           Technology and now in turn merged with Fujitsu.  Say Y here to
769           support this machine type.
770
771 config TOSHIBA_RBTX4927
772         bool "Support for Toshiba TBTX49[23]7 board"
773         select DMA_NONCOHERENT
774         select HAS_TXX9_SERIAL
775         select HW_HAS_PCI
776         select I8259
777         select ISA
778         select SWAP_IO_SPACE
779         select SYS_SUPPORTS_32BIT_KERNEL
780         select SYS_SUPPORTS_64BIT_KERNEL
781         help
782           This Toshiba board is based on the TX4927 processor. Say Y here to
783           support this machine type
784
785 config TOSHIBA_FPCIB0
786         bool "FPCIB0 Backplane Support"
787         depends on TOSHIBA_RBTX4927
788
789 source "arch/mips/sibyte/Kconfig"
790
791 config RWSEM_GENERIC_SPINLOCK
792         bool
793         default y
794
795 config RWSEM_XCHGADD_ALGORITHM
796         bool
797
798 config GENERIC_CALIBRATE_DELAY
799         bool
800         default y
801
802 #
803 # Select some configuration options automatically based on user selections.
804 #
805 config ARC
806         bool
807         depends on SNI_RM200_PCI || SGI_IP32 || SGI_IP27 || SGI_IP22 || MIPS_MAGNUM_4000 || OLIVETTI_M700 || ACER_PICA_61
808         default y
809
810 config DMA_COHERENT
811         bool
812
813 config DMA_IP27
814         bool
815
816 config DMA_IP32
817         bool
818         select DMA_NEED_PCI_MAP_STATE
819
820 config DMA_NONCOHERENT
821         bool
822         select DMA_NEED_PCI_MAP_STATE
823
824 config DMA_NEED_PCI_MAP_STATE
825         bool
826
827 config EARLY_PRINTK
828         bool
829         depends on MACH_DECSTATION
830         default y
831
832 config GENERIC_ISA_DMA
833         bool
834         depends on SNI_RM200_PCI || MIPS_MAGNUM_4000 || OLIVETTI_M700 || ACER_PICA_61 || MIPS_MALTA
835         default y
836
837 config I8259
838         bool
839         depends on SNI_RM200_PCI || DDB5477 || DDB5476 || DDB5074 || MACH_JAZZ || MIPS_MALTA || MIPS_COBALT
840         default y
841
842 config LIMITED_DMA
843         bool
844         select HIGHMEM
845
846 config MIPS_BONITO64
847         bool
848         depends on MIPS_ATLAS || MIPS_MALTA
849         default y
850
851 config MIPS_MSC
852         bool
853         depends on MIPS_ATLAS || MIPS_MALTA
854         default y
855
856 config MIPS_NILE4
857         bool
858         depends on LASAT
859         default y
860
861 config MIPS_DISABLE_OBSOLETE_IDE
862         bool
863
864 config CPU_LITTLE_ENDIAN
865         bool "Generate little endian code"
866         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
867         default n if MIPS_EV64120 || MIPS_EV96100 || MOMENCO_OCELOT || MOMENCO_OCELOT_G || SGI_IP22 || SGI_IP27 || SGI_IP32 || TOSHIBA_JMR3927
868         help
869           Some MIPS machines can be configured for either little or big endian
870           byte order. These modes require different kernels. Say Y if your
871           machine is little endian, N if it's a big endian machine.
872
873 config IRQ_CPU
874         bool
875
876 config IRQ_CPU_RM7K
877         bool
878
879 config IRQ_MV64340
880         bool
881
882 config DDB5XXX_COMMON
883         bool
884         depends on DDB5074 || DDB5476 || DDB5477
885         default y
886
887 config MIPS_BOARDS_GEN
888         bool
889         depends on MIPS_ATLAS || MIPS_MALTA || MIPS_SEAD
890         default y
891
892 config MIPS_GT64111
893         bool
894         depends on MIPS_COBALT
895         default y
896
897 config MIPS_GT64120
898         bool
899         depends on MIPS_EV64120 || MIPS_EV96100 || LASAT || MIPS_ATLAS || MIPS_MALTA || MOMENCO_OCELOT
900         default y
901
902 config MIPS_TX3927
903         bool
904         depends on TOSHIBA_JMR3927
905         select HAS_TXX9_SERIAL
906         default y
907
908 config PCI_MARVELL
909         bool
910
911 config ITE_BOARD_GEN
912         bool
913         depends on MIPS_IVR || MIPS_ITE8172
914         default y
915
916 config SWAP_IO_SPACE
917         bool
918
919 #
920 # Unfortunately not all GT64120 systems run the chip at the same clock.
921 # As the user for the clock rate and try to minimize the available options.
922 #
923 choice
924         prompt "Galileo Chip Clock"
925         #default SYSCLK_83 if MIPS_EV64120
926         depends on MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
927         default SYSCLK_83 if MIPS_EV64120
928         default SYSCLK_100 if MOMENCO_OCELOT || MOMENCO_OCELOT_G
929
930 config SYSCLK_75
931         bool "75" if MIPS_EV64120
932
933 config SYSCLK_83
934         bool "83.3" if MIPS_EV64120
935
936 config SYSCLK_100
937         bool "100" if MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
938
939 endchoice
940
941 config AU1X00_USB_DEVICE
942         bool
943         depends on MIPS_PB1500 || MIPS_PB1100 || MIPS_PB1000
944         default n
945
946 config MIPS_GT96100
947         bool
948         depends on MIPS_EV96100
949         default y
950         help
951           Say Y here to support the Galileo Technology GT96100 communications
952           controller card.  There is a web page at <http://www.galileot.com/>.
953
954 config IT8172_CIR
955         bool
956         depends on MIPS_ITE8172 || MIPS_IVR
957         default y
958
959 config IT8712
960         bool
961         depends on MIPS_ITE8172
962         default y
963
964 config BOOT_ELF32
965         bool
966         depends on MACH_DECSTATION || MIPS_ATLAS || MIPS_MALTA || MOMENCO_JAGUAR_ATX || MOMENCO_OCELOT_3 || SIBYTE_SB1xxx_SOC || SGI_IP32 || SGI_IP22 || SNI_RM200_PCI
967         default y
968
969 config MIPS_L1_CACHE_SHIFT
970         int
971         default "4" if MACH_DECSTATION
972         default "7" if SGI_IP27
973         default "5"
974
975 config ARC32
976         bool
977         depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP22 || SGI_IP32
978         default y
979
980 config HAVE_STD_PC_SERIAL_PORT
981         bool
982
983 config ARC_CONSOLE
984         bool "ARC console support"
985         depends on SGI_IP22 || SNI_RM200_PCI
986
987 config ARC_MEMORY
988         bool
989         depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP32
990         default y
991
992 config ARC_PROMLIB
993         bool
994         depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP22 || SGI_IP32
995         default y
996
997 config ARC64
998         bool
999         depends on SGI_IP27
1000         default y
1001
1002 config BOOT_ELF64
1003         bool
1004         depends on SGI_IP27
1005         default y
1006
1007 #config MAPPED_PCI_IO y
1008 #       bool
1009 #       depends on SGI_IP27
1010 #       default y
1011
1012 config QL_ISP_A64
1013         bool
1014         depends on SGI_IP27
1015         default y
1016
1017 config TOSHIBA_BOARDS
1018         bool
1019         depends on TOSHIBA_JMR3927 || TOSHIBA_RBTX4927
1020         default y
1021
1022 endmenu
1023
1024 menu "CPU selection"
1025
1026 choice
1027         prompt "CPU type"
1028         default CPU_R4X00
1029
1030 config CPU_MIPS32
1031         bool "MIPS32"
1032         select CPU_SUPPORTS_32BIT_KERNEL
1033
1034 config CPU_MIPS64
1035         bool "MIPS64"
1036         select CPU_SUPPORTS_32BIT_KERNEL
1037         select CPU_SUPPORTS_64BIT_KERNEL
1038
1039 config CPU_R3000
1040         bool "R3000"
1041         select CPU_SUPPORTS_32BIT_KERNEL
1042         help
1043           Please make sure to pick the right CPU type. Linux/MIPS is not
1044           designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1045           *not* work on R4000 machines and vice versa.  However, since most
1046           of the supported machines have an R4000 (or similar) CPU, R4x00
1047           might be a safe bet.  If the resulting kernel does not work,
1048           try to recompile with R3000.
1049
1050 config CPU_TX39XX
1051         bool "R39XX"
1052         select CPU_SUPPORTS_32BIT_KERNEL
1053
1054 config CPU_VR41XX
1055         bool "R41xx"
1056         select CPU_SUPPORTS_32BIT_KERNEL
1057         select CPU_SUPPORTS_64BIT_KERNEL
1058         help
1059           The options selects support for the NEC VR41xx series of processors.
1060           Only choose this option if you have one of these processors as a
1061           kernel built with this option will not run on any other type of
1062           processor or vice versa.
1063
1064 config CPU_R4300
1065         bool "R4300"
1066         select CPU_SUPPORTS_32BIT_KERNEL
1067         select CPU_SUPPORTS_64BIT_KERNEL
1068         help
1069           MIPS Technologies R4300-series processors.
1070
1071 config CPU_R4X00
1072         bool "R4x00"
1073         select CPU_SUPPORTS_32BIT_KERNEL
1074         select CPU_SUPPORTS_64BIT_KERNEL
1075         help
1076           MIPS Technologies R4000-series processors other than 4300, including
1077           the R4000, R4400, R4600, and 4700.
1078
1079 config CPU_TX49XX
1080         bool "R49XX"
1081         select CPU_SUPPORTS_32BIT_KERNEL
1082         select CPU_SUPPORTS_64BIT_KERNEL
1083
1084 config CPU_R5000
1085         bool "R5000"
1086         select CPU_SUPPORTS_32BIT_KERNEL
1087         select CPU_SUPPORTS_64BIT_KERNEL
1088         help
1089           MIPS Technologies R5000-series processors other than the Nevada.
1090
1091 config CPU_R5432
1092         bool "R5432"
1093
1094 config CPU_R6000
1095         bool "R6000"
1096         depends on EXPERIMENTAL
1097         select CPU_SUPPORTS_32BIT_KERNEL
1098         help
1099           MIPS Technologies R6000 and R6000A series processors.  Note these
1100           processors are extremly rare and the support for them is incomplete.
1101
1102 config CPU_NEVADA
1103         bool "RM52xx"
1104         select CPU_SUPPORTS_32BIT_KERNEL
1105         select CPU_SUPPORTS_64BIT_KERNEL
1106         help
1107           QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1108
1109 config CPU_R8000
1110         bool "R8000"
1111         depends on EXPERIMENTAL
1112         select CPU_SUPPORTS_64BIT_KERNEL
1113         help
1114           MIPS Technologies R8000 processors.  Note these processors are
1115           uncommon and the support for them is incomplete.
1116
1117 config CPU_R10000
1118         bool "R10000"
1119         select CPU_SUPPORTS_32BIT_KERNEL
1120         select CPU_SUPPORTS_64BIT_KERNEL
1121         help
1122           MIPS Technologies R10000-series processors.
1123
1124 config CPU_RM7000
1125         bool "RM7000"
1126         select CPU_SUPPORTS_32BIT_KERNEL
1127         select CPU_SUPPORTS_64BIT_KERNEL
1128
1129 config CPU_RM9000
1130         bool "RM9000"
1131         select CPU_SUPPORTS_32BIT_KERNEL
1132         select CPU_SUPPORTS_64BIT_KERNEL
1133
1134 config CPU_SB1
1135         bool "SB1"
1136         select CPU_SUPPORTS_32BIT_KERNEL
1137         select CPU_SUPPORTS_64BIT_KERNEL
1138
1139 endchoice
1140
1141 choice
1142         prompt "Kernel page size"
1143         default PAGE_SIZE_4KB
1144
1145 config PAGE_SIZE_4KB
1146         bool "4kB"
1147         help
1148          This option select the standard 4kB Linux page size.  On some
1149          R3000-family processors this is the only available page size.  Using
1150          4kB page size will minimize memory consumption and is therefore
1151          recommended for low memory systems.
1152
1153 config PAGE_SIZE_8KB
1154         bool "8kB"
1155         depends on EXPERIMENTAL && CPU_R8000
1156         help
1157           Using 8kB page size will result in higher performance kernel at
1158           the price of higher memory consumption.  This option is available
1159           only on the R8000 processor.  Not that at the time of this writing
1160           this option is still high experimental; there are also issues with
1161           compatibility of user applications.
1162
1163 config PAGE_SIZE_16KB
1164         bool "16kB"
1165         depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1166         help
1167           Using 16kB page size will result in higher performance kernel at
1168           the price of higher memory consumption.  This option is available on
1169           all non-R3000 family processor.  Not that at the time of this
1170           writing this option is still high experimental; there are also
1171           issues with compatibility of user applications.
1172
1173 config PAGE_SIZE_64KB
1174         bool "64kB"
1175         depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1176         help
1177           Using 64kB page size will result in higher performance kernel at
1178           the price of higher memory consumption.  This option is available on
1179           all non-R3000 family processor.  Not that at the time of this
1180           writing this option is still high experimental; there are also
1181           issues with compatibility of user applications.
1182
1183 endchoice
1184
1185 config BOARD_SCACHE
1186         bool
1187
1188 config IP22_CPU_SCACHE
1189         bool
1190         select BOARD_SCACHE
1191
1192 config R5000_CPU_SCACHE
1193         bool
1194         select BOARD_SCACHE
1195
1196 config RM7000_CPU_SCACHE
1197         bool
1198         select BOARD_SCACHE
1199
1200 config SIBYTE_DMA_PAGEOPS
1201         bool "Use DMA to clear/copy pages"
1202         depends on CPU_SB1
1203         help
1204           Instead of using the CPU to zero and copy pages, use a Data Mover
1205           channel.  These DMA channels are otherwise unused by the standard
1206           SiByte Linux port.  Seems to give a small performance benefit.
1207
1208 config CPU_HAS_PREFETCH
1209         bool "Enable prefetches" if CPU_SB1 && !CPU_SB1_PASS_2
1210         default y if CPU_MIPS32 || CPU_MIPS64 || CPU_RM7000 || CPU_RM9000 || CPU_R10000
1211
1212 config VTAG_ICACHE
1213         bool "Support for Virtual Tagged I-cache" if CPU_MIPS64 || CPU_MIPS32
1214         default y if CPU_SB1
1215
1216 config SB1_PASS_1_WORKAROUNDS
1217         bool
1218         depends on CPU_SB1_PASS_1
1219         default y
1220
1221 config SB1_PASS_2_WORKAROUNDS
1222         bool
1223         depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1224         default y
1225
1226 config SB1_PASS_2_1_WORKAROUNDS
1227         bool
1228         depends on CPU_SB1 && CPU_SB1_PASS_2
1229         default y
1230
1231 config 64BIT_PHYS_ADDR
1232         bool "Support for 64-bit physical address space"
1233         depends on (CPU_R4X00 || CPU_R5000 || CPU_RM7000 || CPU_RM9000 || CPU_R10000 || CPU_SB1 || CPU_MIPS32 || CPU_MIPS64) && 32BIT
1234
1235 config CPU_ADVANCED
1236         bool "Override CPU Options"
1237         depends on 32BIT
1238         help
1239           Saying yes here allows you to select support for various features
1240           your CPU may or may not have.  Most people should say N here.
1241
1242 config CPU_HAS_LLSC
1243         bool "ll/sc Instructions available" if CPU_ADVANCED
1244         default y if !CPU_ADVANCED && !CPU_R3000 && !CPU_VR41XX && !CPU_TX39XX
1245         help
1246           MIPS R4000 series and later provide the Load Linked (ll)
1247           and Store Conditional (sc) instructions. More information is
1248           available at <http://www.go-ecs.com/mips/miptek1.htm>.
1249
1250           Say Y here if your CPU has the ll and sc instructions.  Say Y here
1251           for better performance, N if you don't know.  You must say Y here
1252           for multiprocessor machines.
1253
1254 config CPU_HAS_LLDSCD
1255         bool "lld/scd Instructions available" if CPU_ADVANCED
1256         default y if !CPU_ADVANCED && !CPU_R3000 && !CPU_VR41XX && !CPU_TX39XX && !CPU_MIPS32
1257         help
1258           Say Y here if your CPU has the lld and scd instructions, the 64-bit
1259           equivalents of ll and sc.  Say Y here for better performance, N if
1260           you don't know.  You must say Y here for multiprocessor machines.
1261
1262 config CPU_HAS_WB
1263         bool "Writeback Buffer available" if CPU_ADVANCED
1264         default y if !CPU_ADVANCED && CPU_R3000 && MACH_DECSTATION
1265         help
1266           Say N here for slightly better performance.  You must say Y here for
1267           machines which require flushing of write buffers in software.  Saying
1268           Y is the safe option; N may result in kernel malfunction and crashes.
1269
1270 config CPU_HAS_SYNC
1271         bool
1272         depends on !CPU_R3000
1273         default y
1274
1275 #
1276 # - Highmem only makes sense for the 32-bit kernel.
1277 # - The current highmem code will only work properly on physically indexed
1278 #   caches such as R3000, SB1, R7000 or those that look like they're virtually
1279 #   indexed such as R4000/R4400 SC and MC versions or R10000.  So for the
1280 #   moment we protect the user and offer the highmem option only on machines
1281 #   where it's known to be safe.  This will not offer highmem on a few systems
1282 #   such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1283 #   indexed CPUs but we're playing safe.
1284 # - We should not offer highmem for system of which we already know that they
1285 #   don't have memory configurations that could gain from highmem support in
1286 #   the kernel because they don't support configurations with RAM at physical
1287 #   addresses > 0x20000000.
1288 #
1289 config HIGHMEM
1290         bool "High Memory Support"
1291         depends on 32BIT && (CPU_R3000 || CPU_SB1 || CPU_R7000 || CPU_RM9000 || CPU_R10000) && !(MACH_DECSTATION || MOMENCO_JAGUAR_ATX)
1292
1293 config ARCH_FLATMEM_ENABLE
1294         def_bool y
1295         depends on !NUMA
1296
1297 source "mm/Kconfig"
1298
1299 config SMP
1300         bool "Multi-Processing support"
1301         depends on CPU_RM9000 || (SIBYTE_SB1250 && !SIBYTE_STANDALONE) || SGI_IP27
1302         ---help---
1303           This enables support for systems with more than one CPU. If you have
1304           a system with only one CPU, like most personal computers, say N. If
1305           you have a system with more than one CPU, say Y.
1306
1307           If you say N here, the kernel will run on single and multiprocessor
1308           machines, but will use only one CPU of a multiprocessor machine. If
1309           you say Y here, the kernel will run on many, but not all,
1310           singleprocessor machines. On a singleprocessor machine, the kernel
1311           will run faster if you say N here.
1312
1313           People using multiprocessor machines who say Y here should also say
1314           Y to "Enhanced Real Time Clock Support", below.
1315
1316           See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1317           available at <http://www.tldp.org/docs.html#howto>.
1318
1319           If you don't know what to do here, say N.
1320
1321 config NR_CPUS
1322         int "Maximum number of CPUs (2-64)"
1323         range 2 64
1324         depends on SMP
1325         default "64" if SGI_IP27
1326         default "2"
1327         help
1328           This allows you to specify the maximum number of CPUs which this
1329           kernel will support.  The maximum supported value is 32 for 32-bit
1330           kernel and 64 for 64-bit kernels; the minimum value which makes
1331           sense is 2.
1332
1333           This is purely to save memory - each supported CPU adds
1334           approximately eight kilobytes to the kernel image.
1335
1336 config PREEMPT
1337         bool "Preemptible Kernel"
1338         help
1339           This option reduces the latency of the kernel when reacting to
1340           real-time or interactive events by allowing a low priority process to
1341           be preempted even if it is in kernel mode executing a system call.
1342           This allows applications to run more reliably even when the system is
1343           under load.
1344
1345 config RTC_DS1742
1346         bool "DS1742 BRAM/RTC support"
1347         depends on TOSHIBA_JMR3927 || TOSHIBA_RBTX4927
1348
1349 config MIPS_INSANE_LARGE
1350         bool "Support for large 64-bit configurations"
1351         depends on CPU_R10000 && 64BIT
1352         help
1353           MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1354           previous 64-bit processors which only supported 40 bit / 1TB. If you
1355           need processes of more than 1TB virtual address space, say Y here.
1356           This will result in additional memory usage, so it is not
1357           recommended for normal users.
1358
1359 config RWSEM_GENERIC_SPINLOCK
1360         bool
1361         default y
1362
1363 endmenu
1364
1365 menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1366
1367 config HW_HAS_PCI
1368         bool
1369
1370 config PCI
1371         bool "Support for PCI controller"
1372         depends on HW_HAS_PCI
1373         help
1374           Find out whether you have a PCI motherboard. PCI is the name of a
1375           bus system, i.e. the way the CPU talks to the other stuff inside
1376           your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1377           say Y, otherwise N.
1378
1379           The PCI-HOWTO, available from
1380           <http://www.tldp.org/docs.html#howto>, contains valuable
1381           information about which PCI hardware does work under Linux and which
1382           doesn't.
1383
1384 config PCI_DOMAINS
1385         bool
1386         depends on PCI
1387
1388 source "drivers/pci/Kconfig"
1389
1390 #
1391 # ISA support is now enabled via select.  Too many systems still have the one
1392 # or other ISA chip on the board that users don't know about so don't expect
1393 # users to choose the right thing ...
1394 #
1395 config ISA
1396         bool
1397
1398 config EISA
1399         bool "EISA support"
1400         depends on SGI_IP22 || SNI_RM200_PCI
1401         select ISA
1402         ---help---
1403           The Extended Industry Standard Architecture (EISA) bus was
1404           developed as an open alternative to the IBM MicroChannel bus.
1405
1406           The EISA bus provided some of the features of the IBM MicroChannel
1407           bus while maintaining backward compatibility with cards made for
1408           the older ISA bus.  The EISA bus saw limited use between 1988 and
1409           1995 when it was made obsolete by the PCI bus.
1410
1411           Say Y here if you are building a kernel for an EISA-based machine.
1412
1413           Otherwise, say N.
1414
1415 source "drivers/eisa/Kconfig"
1416
1417 config TC
1418         bool "TURBOchannel support"
1419         depends on MACH_DECSTATION
1420         help
1421           TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1422           processors.  Documentation on writing device drivers for TurboChannel
1423           is available at:
1424           <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1425
1426 #config ACCESSBUS
1427 #       bool "Access.Bus support"
1428 #       depends on TC
1429
1430 config MMU
1431         bool
1432         default y
1433
1434 config MCA
1435         bool
1436
1437 config SBUS
1438         bool
1439
1440 source "drivers/pcmcia/Kconfig"
1441
1442 source "drivers/pci/hotplug/Kconfig"
1443
1444 endmenu
1445
1446 menu "Executable file formats"
1447
1448 source "fs/Kconfig.binfmt"
1449
1450 config TRAD_SIGNALS
1451         bool
1452         default y if 32BIT
1453
1454 config BUILD_ELF64
1455         bool "Use 64-bit ELF format for building"
1456         depends on 64BIT
1457         help
1458           A 64-bit kernel is usually built using the 64-bit ELF binary object
1459           format as it's one that allows arbitrary 64-bit constructs.  For
1460           kernels that are loaded within the KSEG compatibility segments the
1461           32-bit ELF format can optionally be used resulting in a somewhat
1462           smaller binary, but this option is not explicitly supported by the
1463           toolchain and since binutils 2.14 it does not even work at all.
1464
1465           Say Y to use the 64-bit format or N to use the 32-bit one.
1466
1467           If unsure say Y.
1468
1469 config BINFMT_IRIX
1470         bool "Include IRIX binary compatibility"
1471         depends on !CPU_LITTLE_ENDIAN && 32BIT && BROKEN
1472
1473 config MIPS32_COMPAT
1474         bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
1475         depends on 64BIT
1476         help
1477           Select this option if you want Linux/MIPS 32-bit binary
1478           compatibility. Since all software available for Linux/MIPS is
1479           currently 32-bit you should say Y here.
1480
1481 config COMPAT
1482         bool
1483         depends on MIPS32_COMPAT
1484         default y
1485
1486 config MIPS32_O32
1487         bool "Kernel support for o32 binaries"
1488         depends on MIPS32_COMPAT
1489         help
1490           Select this option if you want to run o32 binaries.  These are pure
1491           32-bit binaries as used by the 32-bit Linux/MIPS port.  Most of
1492           existing binaries are in this format.
1493
1494           If unsure, say Y.
1495
1496 config MIPS32_N32
1497         bool "Kernel support for n32 binaries"
1498         depends on MIPS32_COMPAT
1499         help
1500           Select this option if you want to run n32 binaries.  These are
1501           64-bit binaries using 32-bit quantities for addressing and certain
1502           data that would normally be 64-bit.  They are used in special
1503           cases.
1504
1505           If unsure, say N.
1506
1507 config BINFMT_ELF32
1508         bool
1509         default y if MIPS32_O32 || MIPS32_N32
1510
1511 config PM
1512         bool "Power Management support (EXPERIMENTAL)"
1513         depends on EXPERIMENTAL && MACH_AU1X00
1514
1515 endmenu
1516
1517 source "net/Kconfig"
1518
1519 source "drivers/Kconfig"
1520
1521 source "fs/Kconfig"
1522
1523 source "arch/mips/Kconfig.debug"
1524
1525 source "security/Kconfig"
1526
1527 source "crypto/Kconfig"
1528
1529 source "lib/Kconfig"
1530
1531 #
1532 # Use the generic interrupt handling code in kernel/irq/:
1533 #
1534 config GENERIC_HARDIRQS
1535         bool
1536         default y
1537
1538 config GENERIC_IRQ_PROBE
1539         bool
1540         default y
1541
1542 config ISA_DMA_API
1543         bool
1544         default y