[MIPS] RM: Collected changes
[linux-2.6.git] / arch / mips / Kconfig
1 config MIPS
2         bool
3         default y
4         # Horrible source of confusion.  Die, die, die ...
5         select EMBEDDED
6         select RTC_LIB
7
8 mainmenu "Linux/MIPS Kernel Configuration"
9
10 menu "Machine selection"
11
12 config ZONE_DMA
13         bool
14
15 choice
16         prompt "System type"
17         default SGI_IP22
18
19 config MACH_ALCHEMY
20         bool "Alchemy processor based machines"
21
22 config BASLER_EXCITE
23         bool "Basler eXcite smart camera"
24         select CEVT_R4K
25         select CSRC_R4K
26         select DMA_COHERENT
27         select HW_HAS_PCI
28         select IRQ_CPU
29         select IRQ_CPU_RM7K
30         select IRQ_CPU_RM9K
31         select MIPS_RM9122
32         select SYS_HAS_CPU_RM9000
33         select SYS_SUPPORTS_32BIT_KERNEL
34         select SYS_SUPPORTS_BIG_ENDIAN
35         select SYS_SUPPORTS_KGDB
36         help
37           The eXcite is a smart camera platform manufactured by
38           Basler Vision Technologies AG.
39
40 config BASLER_EXCITE_PROTOTYPE
41         bool "Support for pre-release units"
42         depends on BASLER_EXCITE
43         default n
44         help
45           Pre-series (prototype) units are different from later ones in
46           some ways. Select this option if you have one of these. Please
47           note that a kernel built with this option selected will not be
48           able to run on normal units.
49
50 config BCM47XX
51         bool "BCM47XX based boards"
52         select CEVT_R4K
53         select CSRC_R4K
54         select DMA_NONCOHERENT
55         select HW_HAS_PCI
56         select IRQ_CPU
57         select SYS_HAS_CPU_MIPS32_R1
58         select SYS_SUPPORTS_32BIT_KERNEL
59         select SYS_SUPPORTS_LITTLE_ENDIAN
60         select SSB
61         select SSB_DRIVER_MIPS
62         select SSB_DRIVER_EXTIF
63         select SSB_PCICORE_HOSTMODE if PCI
64         select GENERIC_GPIO
65         select SYS_HAS_EARLY_PRINTK
66         select CFE
67         help
68          Support for BCM47XX based boards
69
70 config MIPS_COBALT
71         bool "Cobalt Server"
72         select CEVT_R4K
73         select CSRC_R4K
74         select CEVT_GT641XX
75         select DMA_NONCOHERENT
76         select HW_HAS_PCI
77         select I8253
78         select I8259
79         select IRQ_CPU
80         select IRQ_GT641XX
81         select PCI_GT64XXX_PCI0
82         select SYS_HAS_CPU_NEVADA
83         select SYS_HAS_EARLY_PRINTK
84         select SYS_SUPPORTS_32BIT_KERNEL
85         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
86         select SYS_SUPPORTS_LITTLE_ENDIAN
87         select GENERIC_HARDIRQS_NO__DO_IRQ
88
89 config MACH_DECSTATION
90         bool "DECstations"
91         select BOOT_ELF32
92         select CEVT_R4K
93         select CSRC_R4K
94         select CPU_DADDI_WORKAROUNDS if 64BIT
95         select CPU_R4000_WORKAROUNDS if 64BIT
96         select CPU_R4400_WORKAROUNDS if 64BIT
97         select DMA_NONCOHERENT
98         select NO_IOPORT
99         select IRQ_CPU
100         select SYS_HAS_CPU_R3000
101         select SYS_HAS_CPU_R4X00
102         select SYS_SUPPORTS_32BIT_KERNEL
103         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
104         select SYS_SUPPORTS_LITTLE_ENDIAN
105         select SYS_SUPPORTS_128HZ
106         select SYS_SUPPORTS_256HZ
107         select SYS_SUPPORTS_1024HZ
108         help
109           This enables support for DEC's MIPS based workstations.  For details
110           see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
111           DECstation porting pages on <http://decstation.unix-ag.org/>.
112
113           If you have one of the following DECstation Models you definitely
114           want to choose R4xx0 for the CPU Type:
115
116                 DECstation 5000/50
117                 DECstation 5000/150
118                 DECstation 5000/260
119                 DECsystem 5900/260
120
121           otherwise choose R3000.
122
123 config MACH_JAZZ
124         bool "Jazz family of machines"
125         select ARC
126         select ARC32
127         select ARCH_MAY_HAVE_PC_FDC
128         select CEVT_R4K
129         select CSRC_R4K
130         select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
131         select GENERIC_ISA_DMA
132         select IRQ_CPU
133         select I8253
134         select I8259
135         select ISA
136         select SYS_HAS_CPU_R4X00
137         select SYS_SUPPORTS_32BIT_KERNEL
138         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
139         select SYS_SUPPORTS_100HZ
140         select GENERIC_HARDIRQS_NO__DO_IRQ
141         help
142          This a family of machines based on the MIPS R4030 chipset which was
143          used by several vendors to build RISC/os and Windows NT workstations.
144          Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
145          Olivetti M700-10 workstations.
146
147 config LASAT
148         bool "LASAT Networks platforms"
149         select CEVT_R4K
150         select CSRC_R4K
151         select DMA_NONCOHERENT
152         select SYS_HAS_EARLY_PRINTK
153         select HW_HAS_PCI
154         select IRQ_CPU
155         select PCI_GT64XXX_PCI0
156         select MIPS_NILE4
157         select R5000_CPU_SCACHE
158         select SYS_HAS_CPU_R5000
159         select SYS_SUPPORTS_32BIT_KERNEL
160         select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
161         select SYS_SUPPORTS_LITTLE_ENDIAN
162         select GENERIC_HARDIRQS_NO__DO_IRQ
163
164 config LEMOTE_FULONG
165         bool "Lemote Fulong mini-PC"
166         select ARCH_SPARSEMEM_ENABLE
167         select CEVT_R4K
168         select CSRC_R4K
169         select SYS_HAS_CPU_LOONGSON2
170         select DMA_NONCOHERENT
171         select BOOT_ELF32
172         select BOARD_SCACHE
173         select HAVE_STD_PC_SERIAL_PORT
174         select HW_HAS_PCI
175         select I8259
176         select ISA
177         select IRQ_CPU
178         select SYS_SUPPORTS_32BIT_KERNEL
179         select SYS_SUPPORTS_64BIT_KERNEL
180         select SYS_SUPPORTS_LITTLE_ENDIAN
181         select SYS_SUPPORTS_HIGHMEM
182         select SYS_HAS_EARLY_PRINTK
183         select GENERIC_HARDIRQS_NO__DO_IRQ
184         select GENERIC_ISA_DMA_SUPPORT_BROKEN
185         select CPU_HAS_WB
186         help
187           Lemote Fulong mini-PC board based on the Chinese Loongson-2E CPU and
188           an FPGA northbridge
189
190 config MIPS_ATLAS
191         bool "MIPS Atlas board"
192         select BOOT_ELF32
193         select CEVT_R4K
194         select CSRC_R4K
195         select DMA_NONCOHERENT
196         select SYS_HAS_EARLY_PRINTK
197         select IRQ_CPU
198         select HW_HAS_PCI
199         select MIPS_BOARDS_GEN
200         select MIPS_BONITO64
201         select PCI_GT64XXX_PCI0
202         select MIPS_MSC
203         select RM7000_CPU_SCACHE
204         select SWAP_IO_SPACE
205         select SYS_HAS_CPU_MIPS32_R1
206         select SYS_HAS_CPU_MIPS32_R2
207         select SYS_HAS_CPU_MIPS64_R1
208         select SYS_HAS_CPU_NEVADA
209         select SYS_HAS_CPU_RM7000
210         select SYS_SUPPORTS_32BIT_KERNEL
211         select SYS_SUPPORTS_64BIT_KERNEL
212         select SYS_SUPPORTS_BIG_ENDIAN
213         select SYS_SUPPORTS_LITTLE_ENDIAN
214         select SYS_SUPPORTS_MULTITHREADING if EXPERIMENTAL
215         select SYS_SUPPORTS_SMARTMIPS
216         select GENERIC_HARDIRQS_NO__DO_IRQ
217         help
218           This enables support for the MIPS Technologies Atlas evaluation
219           board.
220
221 config MIPS_MALTA
222         bool "MIPS Malta board"
223         select ARCH_MAY_HAVE_PC_FDC
224         select BOOT_ELF32
225         select CEVT_R4K
226         select CSRC_R4K
227         select DMA_NONCOHERENT
228         select GENERIC_ISA_DMA
229         select IRQ_CPU
230         select HW_HAS_PCI
231         select I8253
232         select I8259
233         select MIPS_BOARDS_GEN
234         select MIPS_BONITO64
235         select MIPS_CPU_SCACHE
236         select PCI_GT64XXX_PCI0
237         select MIPS_MSC
238         select SWAP_IO_SPACE
239         select SYS_HAS_CPU_MIPS32_R1
240         select SYS_HAS_CPU_MIPS32_R2
241         select SYS_HAS_CPU_MIPS64_R1
242         select SYS_HAS_CPU_NEVADA
243         select SYS_HAS_CPU_RM7000
244         select SYS_HAS_EARLY_PRINTK
245         select SYS_SUPPORTS_32BIT_KERNEL
246         select SYS_SUPPORTS_64BIT_KERNEL
247         select SYS_SUPPORTS_BIG_ENDIAN
248         select SYS_SUPPORTS_LITTLE_ENDIAN
249         select SYS_SUPPORTS_MULTITHREADING
250         select SYS_SUPPORTS_SMARTMIPS
251         help
252           This enables support for the MIPS Technologies Malta evaluation
253           board.
254
255 config MIPS_SEAD
256         bool "MIPS SEAD board"
257         select CEVT_R4K
258         select CSRC_R4K
259         select IRQ_CPU
260         select DMA_NONCOHERENT
261         select SYS_HAS_EARLY_PRINTK
262         select MIPS_BOARDS_GEN
263         select SYS_HAS_CPU_MIPS32_R1
264         select SYS_HAS_CPU_MIPS32_R2
265         select SYS_HAS_CPU_MIPS64_R1
266         select SYS_SUPPORTS_32BIT_KERNEL
267         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
268         select SYS_SUPPORTS_BIG_ENDIAN
269         select SYS_SUPPORTS_LITTLE_ENDIAN
270         select SYS_SUPPORTS_SMARTMIPS
271         help
272           This enables support for the MIPS Technologies SEAD evaluation
273           board.
274
275 config MIPS_SIM
276         bool 'MIPS simulator (MIPSsim)'
277         select CEVT_R4K
278         select CSRC_R4K
279         select DMA_NONCOHERENT
280         select SYS_HAS_EARLY_PRINTK
281         select IRQ_CPU
282         select BOOT_RAW
283         select SYS_HAS_CPU_MIPS32_R1
284         select SYS_HAS_CPU_MIPS32_R2
285         select SYS_HAS_EARLY_PRINTK
286         select SYS_SUPPORTS_32BIT_KERNEL
287         select SYS_SUPPORTS_BIG_ENDIAN
288         select SYS_SUPPORTS_MULTITHREADING
289         select SYS_SUPPORTS_LITTLE_ENDIAN
290         help
291           This option enables support for MIPS Technologies MIPSsim software
292           emulator.
293
294 config MARKEINS
295         bool "NEC EMMA2RH Mark-eins"
296         select CEVT_R4K
297         select CSRC_R4K
298         select DMA_NONCOHERENT
299         select HW_HAS_PCI
300         select IRQ_CPU
301         select SWAP_IO_SPACE
302         select SYS_SUPPORTS_32BIT_KERNEL
303         select SYS_SUPPORTS_BIG_ENDIAN
304         select SYS_SUPPORTS_LITTLE_ENDIAN
305         select SYS_HAS_CPU_R5000
306         help
307           This enables support for the R5432-based NEC Mark-eins
308           boards with R5500 CPU.
309
310 config MACH_VR41XX
311         bool "NEC VR4100 series based machines"
312         select CEVT_R4K
313         select CSRC_R4K
314         select SYS_HAS_CPU_VR41XX
315         select GENERIC_HARDIRQS_NO__DO_IRQ
316
317 config PNX8550_JBS
318         bool "Philips PNX8550 based JBS board"
319         select PNX8550
320         select SYS_SUPPORTS_LITTLE_ENDIAN
321
322 config PNX8550_STB810
323         bool "Philips PNX8550 based STB810 board"
324         select PNX8550
325         select SYS_SUPPORTS_LITTLE_ENDIAN
326
327 config PMC_MSP
328         bool "PMC-Sierra MSP chipsets"
329         depends on EXPERIMENTAL
330         select DMA_NONCOHERENT
331         select SWAP_IO_SPACE
332         select NO_EXCEPT_FILL
333         select BOOT_RAW
334         select SYS_HAS_CPU_MIPS32_R1
335         select SYS_HAS_CPU_MIPS32_R2
336         select SYS_SUPPORTS_32BIT_KERNEL
337         select SYS_SUPPORTS_BIG_ENDIAN
338         select SYS_SUPPORTS_KGDB
339         select IRQ_CPU
340         select SERIAL_8250
341         select SERIAL_8250_CONSOLE
342         help
343           This adds support for the PMC-Sierra family of Multi-Service
344           Processor System-On-A-Chips.  These parts include a number
345           of integrated peripherals, interfaces and DSPs in addition to
346           a variety of MIPS cores.
347
348 config PMC_YOSEMITE
349         bool "PMC-Sierra Yosemite eval board"
350         select CEVT_R4K
351         select CSRC_R4K
352         select DMA_COHERENT
353         select HW_HAS_PCI
354         select IRQ_CPU
355         select IRQ_CPU_RM7K
356         select IRQ_CPU_RM9K
357         select SWAP_IO_SPACE
358         select SYS_HAS_CPU_RM9000
359         select SYS_HAS_EARLY_PRINTK
360         select SYS_SUPPORTS_32BIT_KERNEL
361         select SYS_SUPPORTS_64BIT_KERNEL
362         select SYS_SUPPORTS_BIG_ENDIAN
363         select SYS_SUPPORTS_HIGHMEM
364         select SYS_SUPPORTS_KGDB
365         select SYS_SUPPORTS_SMP
366         help
367           Yosemite is an evaluation board for the RM9000x2 processor
368           manufactured by PMC-Sierra.
369
370 config QEMU
371         bool "Qemu"
372         select CEVT_R4K
373         select CSRC_R4K
374         select DMA_COHERENT
375         select GENERIC_ISA_DMA
376         select HAVE_STD_PC_SERIAL_PORT
377         select I8253
378         select I8259
379         select IRQ_CPU
380         select ISA
381         select SWAP_IO_SPACE
382         select SYS_HAS_CPU_MIPS32_R1
383         select SYS_HAS_EARLY_PRINTK
384         select SYS_SUPPORTS_32BIT_KERNEL
385         select SYS_SUPPORTS_BIG_ENDIAN
386         select SYS_SUPPORTS_LITTLE_ENDIAN
387         select GENERIC_HARDIRQS_NO__DO_IRQ
388         select NR_CPUS_DEFAULT_1
389         select SYS_SUPPORTS_SMP
390         help
391           Qemu is a software emulator which among other architectures also
392           can simulate a MIPS32 4Kc system.  This patch adds support for the
393           system architecture that currently is being simulated by Qemu.  It
394           will eventually be removed again when Qemu has the capability to
395           simulate actual MIPS hardware platforms.  More information on Qemu
396           can be found at http://www.linux-mips.org/wiki/Qemu.
397
398 config SGI_IP22
399         bool "SGI IP22 (Indy/Indigo2)"
400         select ARC
401         select ARC32
402         select BOOT_ELF32
403         select CEVT_R4K
404         select CSRC_R4K
405         select DEFAULT_SGI_PARTITION
406         select DMA_NONCOHERENT
407         select HW_HAS_EISA
408         select I8253
409         select I8259
410         select IP22_CPU_SCACHE
411         select IRQ_CPU
412         select GENERIC_ISA_DMA_SUPPORT_BROKEN
413         select SGI_HAS_DS1286
414         select SGI_HAS_I8042
415         select SGI_HAS_INDYDOG
416         select SGI_HAS_SEEQ
417         select SGI_HAS_WD93
418         select SGI_HAS_ZILOG
419         select SWAP_IO_SPACE
420         select SYS_HAS_CPU_R4X00
421         select SYS_HAS_CPU_R5000
422         select SYS_HAS_EARLY_PRINTK
423         select SYS_SUPPORTS_32BIT_KERNEL
424         select SYS_SUPPORTS_64BIT_KERNEL
425         select SYS_SUPPORTS_BIG_ENDIAN
426         help
427           This are the SGI Indy, Challenge S and Indigo2, as well as certain
428           OEM variants like the Tandem CMN B006S. To compile a Linux kernel
429           that runs on these, say Y here.
430
431 config SGI_IP27
432         bool "SGI IP27 (Origin200/2000)"
433         select ARC
434         select ARC64
435         select BOOT_ELF64
436         select DEFAULT_SGI_PARTITION
437         select DMA_IP27
438         select SYS_HAS_EARLY_PRINTK
439         select HW_HAS_PCI
440         select NR_CPUS_DEFAULT_64
441         select SYS_HAS_CPU_R10000
442         select SYS_SUPPORTS_64BIT_KERNEL
443         select SYS_SUPPORTS_BIG_ENDIAN
444         select SYS_SUPPORTS_KGDB
445         select SYS_SUPPORTS_NUMA
446         select SYS_SUPPORTS_SMP
447         select GENERIC_HARDIRQS_NO__DO_IRQ
448         help
449           This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
450           workstations.  To compile a Linux kernel that runs on these, say Y
451           here.
452
453 config SGI_IP28
454         bool "SGI IP28 (Indigo2 R10k) (EXPERIMENTAL)"
455         depends on EXPERIMENTAL
456         select ARC
457         select ARC64
458         select BOOT_ELF64
459         select CEVT_R4K
460         select CSRC_R4K
461         select DEFAULT_SGI_PARTITION
462         select DMA_NONCOHERENT
463         select GENERIC_ISA_DMA_SUPPORT_BROKEN
464         select IRQ_CPU
465         select HW_HAS_EISA
466         select I8253
467         select I8259
468         select SGI_HAS_DS1286
469         select SGI_HAS_I8042
470         select SGI_HAS_INDYDOG
471         select SGI_HAS_SEEQ
472         select SGI_HAS_WD93
473         select SGI_HAS_ZILOG
474         select SWAP_IO_SPACE
475         select SYS_HAS_CPU_R10000
476         select SYS_HAS_EARLY_PRINTK
477         select SYS_SUPPORTS_64BIT_KERNEL
478         select SYS_SUPPORTS_BIG_ENDIAN
479       help
480         This is the SGI Indigo2 with R10000 processor.  To compile a Linux
481         kernel that runs on these, say Y here.
482
483 config SGI_IP32
484         bool "SGI IP32 (O2)"
485         select ARC
486         select ARC32
487         select BOOT_ELF32
488         select CEVT_R4K
489         select CSRC_R4K
490         select DMA_NONCOHERENT
491         select HW_HAS_PCI
492         select IRQ_CPU
493         select R5000_CPU_SCACHE
494         select RM7000_CPU_SCACHE
495         select SYS_HAS_CPU_R5000
496         select SYS_HAS_CPU_R10000 if BROKEN
497         select SYS_HAS_CPU_RM7000
498         select SYS_HAS_CPU_NEVADA
499         select SYS_SUPPORTS_64BIT_KERNEL
500         select SYS_SUPPORTS_BIG_ENDIAN
501         help
502           If you want this kernel to run on SGI O2 workstation, say Y here.
503
504 config SIBYTE_CRHINE
505         bool "Sibyte BCM91120C-CRhine"
506         depends on EXPERIMENTAL
507         select BOOT_ELF32
508         select DMA_COHERENT
509         select SIBYTE_BCM1120
510         select SWAP_IO_SPACE
511         select SYS_HAS_CPU_SB1
512         select SYS_SUPPORTS_BIG_ENDIAN
513         select SYS_SUPPORTS_LITTLE_ENDIAN
514
515 config SIBYTE_CARMEL
516         bool "Sibyte BCM91120x-Carmel"
517         depends on EXPERIMENTAL
518         select BOOT_ELF32
519         select DMA_COHERENT
520         select SIBYTE_BCM1120
521         select SWAP_IO_SPACE
522         select SYS_HAS_CPU_SB1
523         select SYS_SUPPORTS_BIG_ENDIAN
524         select SYS_SUPPORTS_LITTLE_ENDIAN
525
526 config SIBYTE_CRHONE
527         bool "Sibyte BCM91125C-CRhone"
528         depends on EXPERIMENTAL
529         select BOOT_ELF32
530         select DMA_COHERENT
531         select SIBYTE_BCM1125
532         select SWAP_IO_SPACE
533         select SYS_HAS_CPU_SB1
534         select SYS_SUPPORTS_BIG_ENDIAN
535         select SYS_SUPPORTS_HIGHMEM
536         select SYS_SUPPORTS_LITTLE_ENDIAN
537
538 config SIBYTE_RHONE
539         bool "Sibyte BCM91125E-Rhone"
540         depends on EXPERIMENTAL
541         select BOOT_ELF32
542         select DMA_COHERENT
543         select SIBYTE_BCM1125H
544         select SWAP_IO_SPACE
545         select SYS_HAS_CPU_SB1
546         select SYS_SUPPORTS_BIG_ENDIAN
547         select SYS_SUPPORTS_LITTLE_ENDIAN
548
549 config SIBYTE_SWARM
550         bool "Sibyte BCM91250A-SWARM"
551         select BOOT_ELF32
552         select DMA_COHERENT
553         select NR_CPUS_DEFAULT_2
554         select SIBYTE_SB1250
555         select SWAP_IO_SPACE
556         select SYS_HAS_CPU_SB1
557         select SYS_SUPPORTS_BIG_ENDIAN
558         select SYS_SUPPORTS_HIGHMEM
559         select SYS_SUPPORTS_KGDB
560         select SYS_SUPPORTS_LITTLE_ENDIAN
561         select ZONE_DMA32 if 64BIT
562
563 config SIBYTE_LITTLESUR
564         bool "Sibyte BCM91250C2-LittleSur"
565         depends on EXPERIMENTAL
566         select BOOT_ELF32
567         select DMA_COHERENT
568         select NR_CPUS_DEFAULT_2
569         select SIBYTE_SB1250
570         select SWAP_IO_SPACE
571         select SYS_HAS_CPU_SB1
572         select SYS_SUPPORTS_BIG_ENDIAN
573         select SYS_SUPPORTS_HIGHMEM
574         select SYS_SUPPORTS_LITTLE_ENDIAN
575
576 config SIBYTE_SENTOSA
577         bool "Sibyte BCM91250E-Sentosa"
578         depends on EXPERIMENTAL
579         select BOOT_ELF32
580         select DMA_COHERENT
581         select NR_CPUS_DEFAULT_2
582         select SIBYTE_SB1250
583         select SWAP_IO_SPACE
584         select SYS_HAS_CPU_SB1
585         select SYS_SUPPORTS_BIG_ENDIAN
586         select SYS_SUPPORTS_LITTLE_ENDIAN
587
588 config SIBYTE_BIGSUR
589         bool "Sibyte BCM91480B-BigSur"
590         select BOOT_ELF32
591         select DMA_COHERENT
592         select NR_CPUS_DEFAULT_4
593         select SIBYTE_BCM1x80
594         select SWAP_IO_SPACE
595         select SYS_HAS_CPU_SB1
596         select SYS_SUPPORTS_BIG_ENDIAN
597         select SYS_SUPPORTS_HIGHMEM
598         select SYS_SUPPORTS_LITTLE_ENDIAN
599         select ZONE_DMA32 if 64BIT
600
601 config SNI_RM
602         bool "SNI RM200/300/400"
603         select ARC if CPU_LITTLE_ENDIAN
604         select ARC32 if CPU_LITTLE_ENDIAN
605         select SNIPROM if CPU_BIG_ENDIAN
606         select ARCH_MAY_HAVE_PC_FDC
607         select BOOT_ELF32
608         select CEVT_R4K
609         select CSRC_R4K
610         select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
611         select DMA_NONCOHERENT
612         select GENERIC_ISA_DMA
613         select HW_HAS_EISA
614         select HW_HAS_PCI
615         select IRQ_CPU
616         select I8253
617         select I8259
618         select ISA
619         select SWAP_IO_SPACE if CPU_BIG_ENDIAN
620         select SYS_HAS_CPU_R4X00
621         select SYS_HAS_CPU_R5000
622         select SYS_HAS_CPU_R10000
623         select R5000_CPU_SCACHE
624         select SYS_HAS_EARLY_PRINTK
625         select SYS_SUPPORTS_32BIT_KERNEL
626         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
627         select SYS_SUPPORTS_BIG_ENDIAN
628         select SYS_SUPPORTS_HIGHMEM
629         select SYS_SUPPORTS_LITTLE_ENDIAN
630         help
631           The SNI RM200/300/400 are MIPS-based machines manufactured by
632           Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
633           Technology and now in turn merged with Fujitsu.  Say Y here to
634           support this machine type.
635
636 config TOSHIBA_JMR3927
637         bool "Toshiba JMR-TX3927 board"
638         select CEVT_TXX9
639         select DMA_NONCOHERENT
640         select HW_HAS_PCI
641         select MIPS_TX3927
642         select IRQ_TXX9
643         select SWAP_IO_SPACE
644         select SYS_HAS_CPU_TX39XX
645         select SYS_SUPPORTS_32BIT_KERNEL
646         select SYS_SUPPORTS_LITTLE_ENDIAN
647         select SYS_SUPPORTS_BIG_ENDIAN
648         select GENERIC_HARDIRQS_NO__DO_IRQ
649
650 config TOSHIBA_RBTX4927
651         bool "Toshiba RBTX49[23]7 board"
652         select CEVT_R4K
653         select CSRC_R4K
654         select CEVT_TXX9
655         select DMA_NONCOHERENT
656         select HAS_TXX9_SERIAL
657         select HW_HAS_PCI
658         select IRQ_CPU
659         select IRQ_TXX9
660         select I8259 if TOSHIBA_FPCIB0
661         select SWAP_IO_SPACE
662         select SYS_HAS_CPU_TX49XX
663         select SYS_SUPPORTS_32BIT_KERNEL
664         select SYS_SUPPORTS_64BIT_KERNEL
665         select SYS_SUPPORTS_LITTLE_ENDIAN
666         select SYS_SUPPORTS_BIG_ENDIAN
667         select SYS_SUPPORTS_KGDB
668         select GENERIC_HARDIRQS_NO__DO_IRQ
669         help
670           This Toshiba board is based on the TX4927 processor. Say Y here to
671           support this machine type
672
673 config TOSHIBA_RBTX4938
674         bool "Toshiba RBTX4938 board"
675         select CEVT_R4K
676         select CSRC_R4K
677         select CEVT_TXX9
678         select DMA_NONCOHERENT
679         select HAS_TXX9_SERIAL
680         select HW_HAS_PCI
681         select IRQ_CPU
682         select IRQ_TXX9
683         select SWAP_IO_SPACE
684         select SYS_HAS_CPU_TX49XX
685         select SYS_SUPPORTS_32BIT_KERNEL
686         select SYS_SUPPORTS_LITTLE_ENDIAN
687         select SYS_SUPPORTS_BIG_ENDIAN
688         select SYS_SUPPORTS_KGDB
689         select GENERIC_HARDIRQS_NO__DO_IRQ
690         select GENERIC_GPIO
691         help
692           This Toshiba board is based on the TX4938 processor. Say Y here to
693           support this machine type
694
695 config WR_PPMC
696         bool "Wind River PPMC board"
697         select CEVT_R4K
698         select CSRC_R4K
699         select IRQ_CPU
700         select BOOT_ELF32
701         select DMA_NONCOHERENT
702         select HW_HAS_PCI
703         select PCI_GT64XXX_PCI0
704         select SWAP_IO_SPACE
705         select SYS_HAS_CPU_MIPS32_R1
706         select SYS_HAS_CPU_MIPS32_R2
707         select SYS_HAS_CPU_MIPS64_R1
708         select SYS_HAS_CPU_NEVADA
709         select SYS_HAS_CPU_RM7000
710         select SYS_SUPPORTS_32BIT_KERNEL
711         select SYS_SUPPORTS_64BIT_KERNEL
712         select SYS_SUPPORTS_BIG_ENDIAN
713         select SYS_SUPPORTS_LITTLE_ENDIAN
714         help
715           This enables support for the Wind River MIPS32 4KC PPMC evaluation
716           board, which is based on GT64120 bridge chip.
717
718 endchoice
719
720 source "arch/mips/au1000/Kconfig"
721 source "arch/mips/jazz/Kconfig"
722 source "arch/mips/lasat/Kconfig"
723 source "arch/mips/pmc-sierra/Kconfig"
724 source "arch/mips/sgi-ip27/Kconfig"
725 source "arch/mips/sibyte/Kconfig"
726 source "arch/mips/tx4927/Kconfig"
727 source "arch/mips/tx4938/Kconfig"
728 source "arch/mips/vr41xx/Kconfig"
729
730 endmenu
731
732 config RWSEM_GENERIC_SPINLOCK
733         bool
734         default y
735
736 config RWSEM_XCHGADD_ALGORITHM
737         bool
738
739 config ARCH_HAS_ILOG2_U32
740         bool
741         default n
742
743 config ARCH_HAS_ILOG2_U64
744         bool
745         default n
746
747 config ARCH_SUPPORTS_OPROFILE
748         bool
749         default y if !MIPS_MT_SMTC
750
751 config GENERIC_FIND_NEXT_BIT
752         bool
753         default y
754
755 config GENERIC_HWEIGHT
756         bool
757         default y
758
759 config GENERIC_CALIBRATE_DELAY
760         bool
761         default y
762
763 config GENERIC_CLOCKEVENTS
764         bool
765         default y
766
767 config GENERIC_TIME
768         bool
769         default y
770
771 config GENERIC_CMOS_UPDATE
772         bool
773         default y
774
775 config SCHED_NO_NO_OMIT_FRAME_POINTER
776         bool
777         default y
778
779 config GENERIC_HARDIRQS_NO__DO_IRQ
780         bool
781         default n
782
783 #
784 # Select some configuration options automatically based on user selections.
785 #
786 config ARC
787         bool
788
789 config ARCH_MAY_HAVE_PC_FDC
790         bool
791
792 config BOOT_RAW
793         bool
794
795 config CEVT_BCM1480
796         bool
797
798 config CEVT_GT641XX
799         bool
800
801 config CEVT_R4K
802         bool
803
804 config CEVT_SB1250
805         bool
806
807 config CEVT_TXX9
808         bool
809
810 config CSRC_BCM1480
811         bool
812
813 config CSRC_R4K
814         bool
815
816 config CSRC_SB1250
817         bool
818
819 config CFE
820         bool
821
822 config DMA_COHERENT
823         bool
824
825 config DMA_IP27
826         bool
827
828 config DMA_NONCOHERENT
829         bool
830         select DMA_NEED_PCI_MAP_STATE
831
832 config DMA_NEED_PCI_MAP_STATE
833         bool
834
835 config EARLY_PRINTK
836         bool "Early printk" if EMBEDDED && DEBUG_KERNEL
837         depends on SYS_HAS_EARLY_PRINTK
838         default y
839         help
840           This option enables special console drivers which allow the kernel
841           to print messages very early in the bootup process.
842
843           This is useful for kernel debugging when your machine crashes very
844           early before the console code is initialized. For normal operation,
845           it is not recommended because it looks ugly on some machines and
846           doesn't cooperate with an X server. You should normally say N here,
847           unless you want to debug such a crash.
848
849 config SYS_HAS_EARLY_PRINTK
850         bool
851
852 config HOTPLUG_CPU
853         bool
854         default n
855
856 config I8259
857         bool
858
859 config MIPS_BONITO64
860         bool
861
862 config MIPS_MSC
863         bool
864
865 config MIPS_NILE4
866         bool
867
868 config MIPS_DISABLE_OBSOLETE_IDE
869         bool
870
871 config NO_IOPORT
872         def_bool n
873
874 config GENERIC_ISA_DMA
875         bool
876         select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
877
878 config GENERIC_ISA_DMA_SUPPORT_BROKEN
879         bool
880         select GENERIC_ISA_DMA
881
882 config GENERIC_GPIO
883         bool
884
885 #
886 # Endianess selection.  Sufficiently obscure so many users don't know what to
887 # answer,so we try hard to limit the available choices.  Also the use of a
888 # choice statement should be more obvious to the user.
889 #
890 choice
891         prompt "Endianess selection"
892         help
893           Some MIPS machines can be configured for either little or big endian
894           byte order. These modes require different kernels and a different
895           Linux distribution.  In general there is one preferred byteorder for a
896           particular system but some systems are just as commonly used in the
897           one or the other endianness.
898
899 config CPU_BIG_ENDIAN
900         bool "Big endian"
901         depends on SYS_SUPPORTS_BIG_ENDIAN
902
903 config CPU_LITTLE_ENDIAN
904         bool "Little endian"
905         depends on SYS_SUPPORTS_LITTLE_ENDIAN
906         help
907
908 endchoice
909
910 config SYS_SUPPORTS_APM_EMULATION
911         bool
912
913 config SYS_SUPPORTS_BIG_ENDIAN
914         bool
915
916 config SYS_SUPPORTS_LITTLE_ENDIAN
917         bool
918
919 config IRQ_CPU
920         bool
921
922 config IRQ_CPU_RM7K
923         bool
924
925 config IRQ_CPU_RM9K
926         bool
927
928 config IRQ_MSP_SLP
929         bool
930
931 config IRQ_MSP_CIC
932         bool
933
934 config IRQ_TXX9
935         bool
936
937 config IRQ_GT641XX
938         bool
939
940 config MIPS_BOARDS_GEN
941         bool
942
943 config PCI_GT64XXX_PCI0
944         bool
945
946 config NO_EXCEPT_FILL
947         bool
948
949 config MIPS_TX3927
950         bool
951         select HAS_TXX9_SERIAL
952
953 config MIPS_RM9122
954         bool
955         select SERIAL_RM9000
956
957 config PNX8550
958         bool
959         select SOC_PNX8550
960
961 config SOC_PNX8550
962         bool
963         select DMA_NONCOHERENT
964         select HW_HAS_PCI
965         select SYS_HAS_CPU_MIPS32_R1
966         select SYS_HAS_EARLY_PRINTK
967         select SYS_SUPPORTS_32BIT_KERNEL
968         select GENERIC_HARDIRQS_NO__DO_IRQ
969         select SYS_SUPPORTS_KGDB
970         select GENERIC_GPIO
971
972 config SWAP_IO_SPACE
973         bool
974
975 config EMMA2RH
976         bool
977         depends on MARKEINS
978         default y
979
980 config SERIAL_RM9000
981         bool
982
983 config SGI_HAS_DS1286
984         bool
985
986 config SGI_HAS_INDYDOG
987         bool
988
989 config SGI_HAS_SEEQ
990         bool
991
992 config SGI_HAS_WD93
993         bool
994
995 config SGI_HAS_ZILOG
996         bool
997
998 config SGI_HAS_I8042
999         bool
1000
1001 config DEFAULT_SGI_PARTITION
1002         bool
1003
1004 config ARC32
1005         bool
1006
1007 config SNIPROM
1008         bool
1009
1010 config BOOT_ELF32
1011         bool
1012
1013 config MIPS_L1_CACHE_SHIFT
1014         int
1015         default "4" if MACH_DECSTATION
1016         default "7" if SGI_IP27 || SGI_IP28 || SNI_RM
1017         default "4" if PMC_MSP4200_EVAL
1018         default "5"
1019
1020 config HAVE_STD_PC_SERIAL_PORT
1021         bool
1022
1023 config ARC_CONSOLE
1024         bool "ARC console support"
1025         depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN)
1026
1027 config ARC_MEMORY
1028         bool
1029         depends on MACH_JAZZ || SNI_RM || SGI_IP32
1030         default y
1031
1032 config ARC_PROMLIB
1033         bool
1034         depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP28 || SGI_IP32
1035         default y
1036
1037 config ARC64
1038         bool
1039
1040 config BOOT_ELF64
1041         bool
1042
1043 menu "CPU selection"
1044
1045 choice
1046         prompt "CPU type"
1047         default CPU_R4X00
1048
1049 config CPU_LOONGSON2
1050         bool "Loongson 2"
1051         depends on SYS_HAS_CPU_LOONGSON2
1052         select CPU_SUPPORTS_32BIT_KERNEL
1053         select CPU_SUPPORTS_64BIT_KERNEL
1054         select CPU_SUPPORTS_HIGHMEM
1055         help
1056           The Loongson 2E processor implements the MIPS III instruction set
1057           with many extensions.
1058
1059 config CPU_MIPS32_R1
1060         bool "MIPS32 Release 1"
1061         depends on SYS_HAS_CPU_MIPS32_R1
1062         select CPU_HAS_LLSC
1063         select CPU_HAS_PREFETCH
1064         select CPU_SUPPORTS_32BIT_KERNEL
1065         select CPU_SUPPORTS_HIGHMEM
1066         help
1067           Choose this option to build a kernel for release 1 or later of the
1068           MIPS32 architecture.  Most modern embedded systems with a 32-bit
1069           MIPS processor are based on a MIPS32 processor.  If you know the
1070           specific type of processor in your system, choose those that one
1071           otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1072           Release 2 of the MIPS32 architecture is available since several
1073           years so chances are you even have a MIPS32 Release 2 processor
1074           in which case you should choose CPU_MIPS32_R2 instead for better
1075           performance.
1076
1077 config CPU_MIPS32_R2
1078         bool "MIPS32 Release 2"
1079         depends on SYS_HAS_CPU_MIPS32_R2
1080         select CPU_HAS_LLSC
1081         select CPU_HAS_PREFETCH
1082         select CPU_SUPPORTS_32BIT_KERNEL
1083         select CPU_SUPPORTS_HIGHMEM
1084         help
1085           Choose this option to build a kernel for release 2 or later of the
1086           MIPS32 architecture.  Most modern embedded systems with a 32-bit
1087           MIPS processor are based on a MIPS32 processor.  If you know the
1088           specific type of processor in your system, choose those that one
1089           otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1090
1091 config CPU_MIPS64_R1
1092         bool "MIPS64 Release 1"
1093         depends on SYS_HAS_CPU_MIPS64_R1
1094         select CPU_HAS_LLSC
1095         select CPU_HAS_PREFETCH
1096         select CPU_SUPPORTS_32BIT_KERNEL
1097         select CPU_SUPPORTS_64BIT_KERNEL
1098         select CPU_SUPPORTS_HIGHMEM
1099         help
1100           Choose this option to build a kernel for release 1 or later of the
1101           MIPS64 architecture.  Many modern embedded systems with a 64-bit
1102           MIPS processor are based on a MIPS64 processor.  If you know the
1103           specific type of processor in your system, choose those that one
1104           otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1105           Release 2 of the MIPS64 architecture is available since several
1106           years so chances are you even have a MIPS64 Release 2 processor
1107           in which case you should choose CPU_MIPS64_R2 instead for better
1108           performance.
1109
1110 config CPU_MIPS64_R2
1111         bool "MIPS64 Release 2"
1112         depends on SYS_HAS_CPU_MIPS64_R2
1113         select CPU_HAS_LLSC
1114         select CPU_HAS_PREFETCH
1115         select CPU_SUPPORTS_32BIT_KERNEL
1116         select CPU_SUPPORTS_64BIT_KERNEL
1117         select CPU_SUPPORTS_HIGHMEM
1118         help
1119           Choose this option to build a kernel for release 2 or later of the
1120           MIPS64 architecture.  Many modern embedded systems with a 64-bit
1121           MIPS processor are based on a MIPS64 processor.  If you know the
1122           specific type of processor in your system, choose those that one
1123           otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1124
1125 config CPU_R3000
1126         bool "R3000"
1127         depends on SYS_HAS_CPU_R3000
1128         select CPU_HAS_WB
1129         select CPU_SUPPORTS_32BIT_KERNEL
1130         select CPU_SUPPORTS_HIGHMEM
1131         help
1132           Please make sure to pick the right CPU type. Linux/MIPS is not
1133           designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1134           *not* work on R4000 machines and vice versa.  However, since most
1135           of the supported machines have an R4000 (or similar) CPU, R4x00
1136           might be a safe bet.  If the resulting kernel does not work,
1137           try to recompile with R3000.
1138
1139 config CPU_TX39XX
1140         bool "R39XX"
1141         depends on SYS_HAS_CPU_TX39XX
1142         select CPU_SUPPORTS_32BIT_KERNEL
1143
1144 config CPU_VR41XX
1145         bool "R41xx"
1146         depends on SYS_HAS_CPU_VR41XX
1147         select CPU_SUPPORTS_32BIT_KERNEL
1148         select CPU_SUPPORTS_64BIT_KERNEL
1149         help
1150           The options selects support for the NEC VR4100 series of processors.
1151           Only choose this option if you have one of these processors as a
1152           kernel built with this option will not run on any other type of
1153           processor or vice versa.
1154
1155 config CPU_R4300
1156         bool "R4300"
1157         depends on SYS_HAS_CPU_R4300
1158         select CPU_HAS_LLSC
1159         select CPU_SUPPORTS_32BIT_KERNEL
1160         select CPU_SUPPORTS_64BIT_KERNEL
1161         help
1162           MIPS Technologies R4300-series processors.
1163
1164 config CPU_R4X00
1165         bool "R4x00"
1166         depends on SYS_HAS_CPU_R4X00
1167         select CPU_HAS_LLSC
1168         select CPU_SUPPORTS_32BIT_KERNEL
1169         select CPU_SUPPORTS_64BIT_KERNEL
1170         help
1171           MIPS Technologies R4000-series processors other than 4300, including
1172           the R4000, R4400, R4600, and 4700.
1173
1174 config CPU_TX49XX
1175         bool "R49XX"
1176         depends on SYS_HAS_CPU_TX49XX
1177         select CPU_HAS_LLSC
1178         select CPU_HAS_PREFETCH
1179         select CPU_SUPPORTS_32BIT_KERNEL
1180         select CPU_SUPPORTS_64BIT_KERNEL
1181
1182 config CPU_R5000
1183         bool "R5000"
1184         depends on SYS_HAS_CPU_R5000
1185         select CPU_HAS_LLSC
1186         select CPU_SUPPORTS_32BIT_KERNEL
1187         select CPU_SUPPORTS_64BIT_KERNEL
1188         help
1189           MIPS Technologies R5000-series processors other than the Nevada.
1190
1191 config CPU_R5432
1192         bool "R5432"
1193         depends on SYS_HAS_CPU_R5432
1194         select CPU_HAS_LLSC
1195         select CPU_SUPPORTS_32BIT_KERNEL
1196         select CPU_SUPPORTS_64BIT_KERNEL
1197
1198 config CPU_R6000
1199         bool "R6000"
1200         depends on EXPERIMENTAL
1201         select CPU_HAS_LLSC
1202         depends on SYS_HAS_CPU_R6000
1203         select CPU_SUPPORTS_32BIT_KERNEL
1204         help
1205           MIPS Technologies R6000 and R6000A series processors.  Note these
1206           processors are extremely rare and the support for them is incomplete.
1207
1208 config CPU_NEVADA
1209         bool "RM52xx"
1210         depends on SYS_HAS_CPU_NEVADA
1211         select CPU_HAS_LLSC
1212         select CPU_SUPPORTS_32BIT_KERNEL
1213         select CPU_SUPPORTS_64BIT_KERNEL
1214         help
1215           QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1216
1217 config CPU_R8000
1218         bool "R8000"
1219         depends on EXPERIMENTAL
1220         depends on SYS_HAS_CPU_R8000
1221         select CPU_HAS_LLSC
1222         select CPU_HAS_PREFETCH
1223         select CPU_SUPPORTS_64BIT_KERNEL
1224         help
1225           MIPS Technologies R8000 processors.  Note these processors are
1226           uncommon and the support for them is incomplete.
1227
1228 config CPU_R10000
1229         bool "R10000"
1230         depends on SYS_HAS_CPU_R10000
1231         select CPU_HAS_LLSC
1232         select CPU_HAS_PREFETCH
1233         select CPU_SUPPORTS_32BIT_KERNEL
1234         select CPU_SUPPORTS_64BIT_KERNEL
1235         select CPU_SUPPORTS_HIGHMEM
1236         help
1237           MIPS Technologies R10000-series processors.
1238
1239 config CPU_RM7000
1240         bool "RM7000"
1241         depends on SYS_HAS_CPU_RM7000
1242         select CPU_HAS_LLSC
1243         select CPU_HAS_PREFETCH
1244         select CPU_SUPPORTS_32BIT_KERNEL
1245         select CPU_SUPPORTS_64BIT_KERNEL
1246         select CPU_SUPPORTS_HIGHMEM
1247
1248 config CPU_RM9000
1249         bool "RM9000"
1250         depends on SYS_HAS_CPU_RM9000
1251         select CPU_HAS_LLSC
1252         select CPU_HAS_PREFETCH
1253         select CPU_SUPPORTS_32BIT_KERNEL
1254         select CPU_SUPPORTS_64BIT_KERNEL
1255         select CPU_SUPPORTS_HIGHMEM
1256         select WEAK_ORDERING
1257
1258 config CPU_SB1
1259         bool "SB1"
1260         depends on SYS_HAS_CPU_SB1
1261         select CPU_HAS_LLSC
1262         select CPU_SUPPORTS_32BIT_KERNEL
1263         select CPU_SUPPORTS_64BIT_KERNEL
1264         select CPU_SUPPORTS_HIGHMEM
1265         select WEAK_ORDERING
1266
1267 endchoice
1268
1269 config SYS_HAS_CPU_LOONGSON2
1270         bool
1271
1272 config SYS_HAS_CPU_MIPS32_R1
1273         bool
1274
1275 config SYS_HAS_CPU_MIPS32_R2
1276         bool
1277
1278 config SYS_HAS_CPU_MIPS64_R1
1279         bool
1280
1281 config SYS_HAS_CPU_MIPS64_R2
1282         bool
1283
1284 config SYS_HAS_CPU_R3000
1285         bool
1286
1287 config SYS_HAS_CPU_TX39XX
1288         bool
1289
1290 config SYS_HAS_CPU_VR41XX
1291         bool
1292
1293 config SYS_HAS_CPU_R4300
1294         bool
1295
1296 config SYS_HAS_CPU_R4X00
1297         bool
1298
1299 config SYS_HAS_CPU_TX49XX
1300         bool
1301
1302 config SYS_HAS_CPU_R5000
1303         bool
1304
1305 config SYS_HAS_CPU_R5432
1306         bool
1307
1308 config SYS_HAS_CPU_R6000
1309         bool
1310
1311 config SYS_HAS_CPU_NEVADA
1312         bool
1313
1314 config SYS_HAS_CPU_R8000
1315         bool
1316
1317 config SYS_HAS_CPU_R10000
1318         bool
1319
1320 config SYS_HAS_CPU_RM7000
1321         bool
1322
1323 config SYS_HAS_CPU_RM9000
1324         bool
1325
1326 config SYS_HAS_CPU_SB1
1327         bool
1328
1329 #
1330 # CPU may reorder R->R, R->W, W->R, W->W
1331 # Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
1332 #
1333 config WEAK_ORDERING
1334         bool
1335
1336 #
1337 # CPU may reorder reads and writes beyond LL/SC
1338 # CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
1339 #
1340 config WEAK_REORDERING_BEYOND_LLSC
1341         bool
1342 endmenu
1343
1344 #
1345 # These two indicate any level of the MIPS32 and MIPS64 architecture
1346 #
1347 config CPU_MIPS32
1348         bool
1349         default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1350
1351 config CPU_MIPS64
1352         bool
1353         default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1354
1355 #
1356 # These two indicate the revision of the architecture, either Release 1 or Release 2
1357 #
1358 config CPU_MIPSR1
1359         bool
1360         default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1361
1362 config CPU_MIPSR2
1363         bool
1364         default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
1365
1366 config SYS_SUPPORTS_32BIT_KERNEL
1367         bool
1368 config SYS_SUPPORTS_64BIT_KERNEL
1369         bool
1370 config CPU_SUPPORTS_32BIT_KERNEL
1371         bool
1372 config CPU_SUPPORTS_64BIT_KERNEL
1373         bool
1374
1375 menu "Kernel type"
1376
1377 choice
1378
1379         prompt "Kernel code model"
1380         help
1381           You should only select this option if you have a workload that
1382           actually benefits from 64-bit processing or if your machine has
1383           large memory.  You will only be presented a single option in this
1384           menu if your system does not support both 32-bit and 64-bit kernels.
1385
1386 config 32BIT
1387         bool "32-bit kernel"
1388         depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1389         select TRAD_SIGNALS
1390         help
1391           Select this option if you want to build a 32-bit kernel.
1392 config 64BIT
1393         bool "64-bit kernel"
1394         depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1395         help
1396           Select this option if you want to build a 64-bit kernel.
1397
1398 endchoice
1399
1400 choice
1401         prompt "Kernel page size"
1402         default PAGE_SIZE_4KB
1403
1404 config PAGE_SIZE_4KB
1405         bool "4kB"
1406         help
1407          This option select the standard 4kB Linux page size.  On some
1408          R3000-family processors this is the only available page size.  Using
1409          4kB page size will minimize memory consumption and is therefore
1410          recommended for low memory systems.
1411
1412 config PAGE_SIZE_8KB
1413         bool "8kB"
1414         depends on EXPERIMENTAL && CPU_R8000
1415         help
1416           Using 8kB page size will result in higher performance kernel at
1417           the price of higher memory consumption.  This option is available
1418           only on the R8000 processor.  Not that at the time of this writing
1419           this option is still high experimental; there are also issues with
1420           compatibility of user applications.
1421
1422 config PAGE_SIZE_16KB
1423         bool "16kB"
1424         depends on !CPU_R3000 && !CPU_TX39XX
1425         help
1426           Using 16kB page size will result in higher performance kernel at
1427           the price of higher memory consumption.  This option is available on
1428           all non-R3000 family processors.  Note that you will need a suitable
1429           Linux distribution to support this.
1430
1431 config PAGE_SIZE_64KB
1432         bool "64kB"
1433         depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1434         help
1435           Using 64kB page size will result in higher performance kernel at
1436           the price of higher memory consumption.  This option is available on
1437           all non-R3000 family processor.  Not that at the time of this
1438           writing this option is still high experimental.
1439
1440 endchoice
1441
1442 config BOARD_SCACHE
1443         bool
1444
1445 config IP22_CPU_SCACHE
1446         bool
1447         select BOARD_SCACHE
1448
1449 #
1450 # Support for a MIPS32 / MIPS64 style S-caches
1451 #
1452 config MIPS_CPU_SCACHE
1453         bool
1454         select BOARD_SCACHE
1455
1456 config R5000_CPU_SCACHE
1457         bool
1458         select BOARD_SCACHE
1459
1460 config RM7000_CPU_SCACHE
1461         bool
1462         select BOARD_SCACHE
1463
1464 config SIBYTE_DMA_PAGEOPS
1465         bool "Use DMA to clear/copy pages"
1466         depends on CPU_SB1
1467         help
1468           Instead of using the CPU to zero and copy pages, use a Data Mover
1469           channel.  These DMA channels are otherwise unused by the standard
1470           SiByte Linux port.  Seems to give a small performance benefit.
1471
1472 config CPU_HAS_PREFETCH
1473         bool
1474
1475 choice
1476         prompt "MIPS MT options"
1477
1478 config MIPS_MT_DISABLED
1479         bool "Disable multithreading support."
1480         help
1481           Use this option if your workload can't take advantage of
1482           MIPS hardware multithreading support.  On systems that don't have
1483           the option of an MT-enabled processor this option will be the only
1484           option in this menu.
1485
1486 config MIPS_MT_SMP
1487         bool "Use 1 TC on each available VPE for SMP"
1488         depends on SYS_SUPPORTS_MULTITHREADING
1489         select CPU_MIPSR2_IRQ_VI
1490         select CPU_MIPSR2_IRQ_EI
1491         select MIPS_MT
1492         select NR_CPUS_DEFAULT_2
1493         select SMP
1494         select SYS_SUPPORTS_SCHED_SMT if SMP
1495         select SYS_SUPPORTS_SMP
1496         select SMP_UP
1497         help
1498           This is a kernel model which is also known a VSMP or lately
1499           has been marketesed into SMVP.
1500
1501 config MIPS_MT_SMTC
1502         bool "SMTC: Use all TCs on all VPEs for SMP"
1503         depends on CPU_MIPS32_R2
1504         #depends on CPU_MIPS64_R2               # once there is hardware ...
1505         depends on SYS_SUPPORTS_MULTITHREADING
1506         select GENERIC_CLOCKEVENTS_BROADCAST
1507         select CPU_MIPSR2_IRQ_VI
1508         select CPU_MIPSR2_IRQ_EI
1509         select MIPS_MT
1510         select NR_CPUS_DEFAULT_8
1511         select SMP
1512         select SYS_SUPPORTS_SMP
1513         select SMP_UP
1514         help
1515           This is a kernel model which is known a SMTC or lately has been
1516           marketesed into SMVP.
1517
1518 endchoice
1519
1520 config MIPS_MT
1521         bool
1522
1523 config SCHED_SMT
1524         bool "SMT (multithreading) scheduler support"
1525         depends on SYS_SUPPORTS_SCHED_SMT
1526         default n
1527         help
1528           SMT scheduler support improves the CPU scheduler's decision making
1529           when dealing with MIPS MT enabled cores at a cost of slightly
1530           increased overhead in some places. If unsure say N here.
1531
1532 config SYS_SUPPORTS_SCHED_SMT
1533         bool
1534
1535
1536 config SYS_SUPPORTS_MULTITHREADING
1537         bool
1538
1539 config MIPS_MT_FPAFF
1540         bool "Dynamic FPU affinity for FP-intensive threads"
1541         default y
1542         depends on MIPS_MT_SMP || MIPS_MT_SMTC
1543
1544 config MIPS_VPE_LOADER
1545         bool "VPE loader support."
1546         depends on SYS_SUPPORTS_MULTITHREADING
1547         select CPU_MIPSR2_IRQ_VI
1548         select CPU_MIPSR2_IRQ_EI
1549         select MIPS_MT
1550         help
1551           Includes a loader for loading an elf relocatable object
1552           onto another VPE and running it.
1553
1554 config MIPS_MT_SMTC_INSTANT_REPLAY
1555         bool "Low-latency Dispatch of Deferred SMTC IPIs"
1556         depends on MIPS_MT_SMTC && !PREEMPT
1557         default y
1558         help
1559           SMTC pseudo-interrupts between TCs are deferred and queued
1560           if the target TC is interrupt-inhibited (IXMT). In the first
1561           SMTC prototypes, these queued IPIs were serviced on return
1562           to user mode, or on entry into the kernel idle loop. The
1563           INSTANT_REPLAY option dispatches them as part of local_irq_restore()
1564           processing, which adds runtime overhead (hence the option to turn
1565           it off), but ensures that IPIs are handled promptly even under
1566           heavy I/O interrupt load.
1567
1568 config MIPS_MT_SMTC_IM_BACKSTOP
1569         bool "Use per-TC register bits as backstop for inhibited IM bits"
1570         depends on MIPS_MT_SMTC
1571         default y
1572         help
1573           To support multiple TC microthreads acting as "CPUs" within
1574           a VPE, VPE-wide interrupt mask bits must be specially manipulated
1575           during interrupt handling. To support legacy drivers and interrupt
1576           controller management code, SMTC has a "backstop" to track and
1577           if necessary restore the interrupt mask. This has some performance
1578           impact on interrupt service overhead. Disable it only if you know
1579           what you are doing.
1580
1581 config MIPS_MT_SMTC_IRQAFF
1582         bool "Support IRQ affinity API"
1583         depends on MIPS_MT_SMTC
1584         default n
1585         help
1586           Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.)
1587           for SMTC Linux kernel. Requires platform support, of which
1588           an example can be found in the MIPS kernel i8259 and Malta
1589           platform code.  It is recommended that MIPS_MT_SMTC_INSTANT_REPLAY
1590           be enabled if MIPS_MT_SMTC_IRQAFF is used. Adds overhead to
1591           interrupt dispatch, and should be used only if you know what
1592           you are doing.
1593
1594 config MIPS_VPE_LOADER_TOM
1595         bool "Load VPE program into memory hidden from linux"
1596         depends on MIPS_VPE_LOADER
1597         default y
1598         help
1599           The loader can use memory that is present but has been hidden from
1600           Linux using the kernel command line option "mem=xxMB". It's up to
1601           you to ensure the amount you put in the option and the space your
1602           program requires is less or equal to the amount physically present.
1603
1604 # this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1605 config MIPS_VPE_APSP_API
1606         bool "Enable support for AP/SP API (RTLX)"
1607         depends on MIPS_VPE_LOADER
1608         help
1609
1610 config MIPS_APSP_KSPD
1611         bool "Enable KSPD"
1612         depends on MIPS_VPE_APSP_API
1613         default y
1614         help
1615           KSPD is a kernel daemon that accepts syscall requests from the SP
1616           side, actions them and returns the results. It also handles the
1617           "exit" syscall notifying other kernel modules the SP program is
1618           exiting.  You probably want to say yes here.
1619
1620 config SB1_PASS_1_WORKAROUNDS
1621         bool
1622         depends on CPU_SB1_PASS_1
1623         default y
1624
1625 config SB1_PASS_2_WORKAROUNDS
1626         bool
1627         depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1628         default y
1629
1630 config SB1_PASS_2_1_WORKAROUNDS
1631         bool
1632         depends on CPU_SB1 && CPU_SB1_PASS_2
1633         default y
1634
1635 config 64BIT_PHYS_ADDR
1636         bool
1637
1638 config CPU_HAS_LLSC
1639         bool
1640
1641 config CPU_HAS_SMARTMIPS
1642         depends on SYS_SUPPORTS_SMARTMIPS
1643         bool "Support for the SmartMIPS ASE"
1644         help
1645           SmartMIPS is a extension of the MIPS32 architecture aimed at
1646           increased security at both hardware and software level for
1647           smartcards.  Enabling this option will allow proper use of the
1648           SmartMIPS instructions by Linux applications.  However a kernel with
1649           this option will not work on a MIPS core without SmartMIPS core.  If
1650           you don't know you probably don't have SmartMIPS and should say N
1651           here.
1652
1653 config CPU_HAS_WB
1654         bool
1655
1656 #
1657 # Vectored interrupt mode is an R2 feature
1658 #
1659 config CPU_MIPSR2_IRQ_VI
1660         bool
1661
1662 #
1663 # Extended interrupt mode is an R2 feature
1664 #
1665 config CPU_MIPSR2_IRQ_EI
1666         bool
1667
1668 config CPU_HAS_SYNC
1669         bool
1670         depends on !CPU_R3000
1671         default y
1672
1673 config GENERIC_CLOCKEVENTS_BROADCAST
1674         bool
1675
1676 #
1677 # CPU non-features
1678 #
1679 config CPU_DADDI_WORKAROUNDS
1680         bool
1681
1682 config CPU_R4000_WORKAROUNDS
1683         bool
1684         select CPU_R4400_WORKAROUNDS
1685
1686 config CPU_R4400_WORKAROUNDS
1687         bool
1688
1689 #
1690 # Use the generic interrupt handling code in kernel/irq/:
1691 #
1692 config GENERIC_HARDIRQS
1693         bool
1694         default y
1695
1696 config GENERIC_IRQ_PROBE
1697         bool
1698         default y
1699
1700 config IRQ_PER_CPU
1701         bool
1702
1703 #
1704 # - Highmem only makes sense for the 32-bit kernel.
1705 # - The current highmem code will only work properly on physically indexed
1706 #   caches such as R3000, SB1, R7000 or those that look like they're virtually
1707 #   indexed such as R4000/R4400 SC and MC versions or R10000.  So for the
1708 #   moment we protect the user and offer the highmem option only on machines
1709 #   where it's known to be safe.  This will not offer highmem on a few systems
1710 #   such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1711 #   indexed CPUs but we're playing safe.
1712 # - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1713 #   know they might have memory configurations that could make use of highmem
1714 #   support.
1715 #
1716 config HIGHMEM
1717         bool "High Memory Support"
1718         depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1719
1720 config CPU_SUPPORTS_HIGHMEM
1721         bool
1722
1723 config SYS_SUPPORTS_HIGHMEM
1724         bool
1725
1726 config SYS_SUPPORTS_SMARTMIPS
1727         bool
1728
1729 config ARCH_FLATMEM_ENABLE
1730         def_bool y
1731         depends on !NUMA
1732
1733 config ARCH_DISCONTIGMEM_ENABLE
1734         bool
1735         default y if SGI_IP27
1736         help
1737           Say Y to support efficient handling of discontiguous physical memory,
1738           for architectures which are either NUMA (Non-Uniform Memory Access)
1739           or have huge holes in the physical address space for other reasons.
1740           See <file:Documentation/vm/numa> for more.
1741
1742 config ARCH_POPULATES_NODE_MAP
1743         def_bool y
1744
1745 config ARCH_SPARSEMEM_ENABLE
1746         bool
1747         select SPARSEMEM_STATIC
1748
1749 config NUMA
1750         bool "NUMA Support"
1751         depends on SYS_SUPPORTS_NUMA
1752         help
1753           Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1754           Access).  This option improves performance on systems with more
1755           than two nodes; on two node systems it is generally better to
1756           leave it disabled; on single node systems disable this option
1757           disabled.
1758
1759 config SYS_SUPPORTS_NUMA
1760         bool
1761
1762 config NODES_SHIFT
1763         int
1764         default "6"
1765         depends on NEED_MULTIPLE_NODES
1766
1767 source "mm/Kconfig"
1768
1769 config SMP
1770         bool "Multi-Processing support"
1771         depends on SYS_SUPPORTS_SMP
1772         select IRQ_PER_CPU
1773         help
1774           This enables support for systems with more than one CPU. If you have
1775           a system with only one CPU, like most personal computers, say N. If
1776           you have a system with more than one CPU, say Y.
1777
1778           If you say N here, the kernel will run on single and multiprocessor
1779           machines, but will use only one CPU of a multiprocessor machine. If
1780           you say Y here, the kernel will run on many, but not all,
1781           singleprocessor machines. On a singleprocessor machine, the kernel
1782           will run faster if you say N here.
1783
1784           People using multiprocessor machines who say Y here should also say
1785           Y to "Enhanced Real Time Clock Support", below.
1786
1787           See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1788           available at <http://www.tldp.org/docs.html#howto>.
1789
1790           If you don't know what to do here, say N.
1791
1792 config SMP_UP
1793         bool
1794
1795 config SYS_SUPPORTS_SMP
1796         bool
1797
1798 config NR_CPUS_DEFAULT_1
1799         bool
1800
1801 config NR_CPUS_DEFAULT_2
1802         bool
1803
1804 config NR_CPUS_DEFAULT_4
1805         bool
1806
1807 config NR_CPUS_DEFAULT_8
1808         bool
1809
1810 config NR_CPUS_DEFAULT_16
1811         bool
1812
1813 config NR_CPUS_DEFAULT_32
1814         bool
1815
1816 config NR_CPUS_DEFAULT_64
1817         bool
1818
1819 config NR_CPUS
1820         int "Maximum number of CPUs (2-64)"
1821         range 1 64 if NR_CPUS_DEFAULT_1
1822         depends on SMP
1823         default "1" if NR_CPUS_DEFAULT_1
1824         default "2" if NR_CPUS_DEFAULT_2
1825         default "4" if NR_CPUS_DEFAULT_4
1826         default "8" if NR_CPUS_DEFAULT_8
1827         default "16" if NR_CPUS_DEFAULT_16
1828         default "32" if NR_CPUS_DEFAULT_32
1829         default "64" if NR_CPUS_DEFAULT_64
1830         help
1831           This allows you to specify the maximum number of CPUs which this
1832           kernel will support.  The maximum supported value is 32 for 32-bit
1833           kernel and 64 for 64-bit kernels; the minimum value which makes
1834           sense is 1 for Qemu (useful only for kernel debugging purposes)
1835           and 2 for all others.
1836
1837           This is purely to save memory - each supported CPU adds
1838           approximately eight kilobytes to the kernel image.  For best
1839           performance should round up your number of processors to the next
1840           power of two.
1841
1842 source "kernel/time/Kconfig"
1843
1844 #
1845 # Timer Interrupt Frequency Configuration
1846 #
1847
1848 choice
1849         prompt "Timer frequency"
1850         default HZ_250
1851         help
1852          Allows the configuration of the timer frequency.
1853
1854         config HZ_48
1855                 bool "48 HZ" if SYS_SUPPORTS_48HZ
1856
1857         config HZ_100
1858                 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1859
1860         config HZ_128
1861                 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1862
1863         config HZ_250
1864                 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1865
1866         config HZ_256
1867                 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1868
1869         config HZ_1000
1870                 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1871
1872         config HZ_1024
1873                 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1874
1875 endchoice
1876
1877 config SYS_SUPPORTS_48HZ
1878         bool
1879
1880 config SYS_SUPPORTS_100HZ
1881         bool
1882
1883 config SYS_SUPPORTS_128HZ
1884         bool
1885
1886 config SYS_SUPPORTS_250HZ
1887         bool
1888
1889 config SYS_SUPPORTS_256HZ
1890         bool
1891
1892 config SYS_SUPPORTS_1000HZ
1893         bool
1894
1895 config SYS_SUPPORTS_1024HZ
1896         bool
1897
1898 config SYS_SUPPORTS_ARBIT_HZ
1899         bool
1900         default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1901                      !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1902                      !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1903                      !SYS_SUPPORTS_1024HZ
1904
1905 config HZ
1906         int
1907         default 48 if HZ_48
1908         default 100 if HZ_100
1909         default 128 if HZ_128
1910         default 250 if HZ_250
1911         default 256 if HZ_256
1912         default 1000 if HZ_1000
1913         default 1024 if HZ_1024
1914
1915 source "kernel/Kconfig.preempt"
1916
1917 config MIPS_INSANE_LARGE
1918         bool "Support for large 64-bit configurations"
1919         depends on CPU_R10000 && 64BIT
1920         help
1921           MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1922           previous 64-bit processors which only supported 40 bit / 1TB. If you
1923           need processes of more than 1TB virtual address space, say Y here.
1924           This will result in additional memory usage, so it is not
1925           recommended for normal users.
1926
1927 config KEXEC
1928         bool "Kexec system call (EXPERIMENTAL)"
1929         depends on EXPERIMENTAL
1930         help
1931           kexec is a system call that implements the ability to shutdown your
1932           current kernel, and to start another kernel.  It is like a reboot
1933           but it is independent of the system firmware.   And like a reboot
1934           you can start any kernel with it, not just Linux.
1935
1936           The name comes from the similarity to the exec system call.
1937
1938           It is an ongoing process to be certain the hardware in a machine
1939           is properly shutdown, so do not be surprised if this code does not
1940           initially work for you.  It may help to enable device hotplugging
1941           support.  As of this writing the exact hardware interface is
1942           strongly in flux, so no good recommendation can be made.
1943
1944 config SECCOMP
1945         bool "Enable seccomp to safely compute untrusted bytecode"
1946         depends on PROC_FS
1947         default y
1948         help
1949           This kernel feature is useful for number crunching applications
1950           that may need to compute untrusted bytecode during their
1951           execution. By using pipes or other transports made available to
1952           the process as file descriptors supporting the read/write
1953           syscalls, it's possible to isolate those applications in
1954           their own address space using seccomp. Once seccomp is
1955           enabled via /proc/<pid>/seccomp, it cannot be disabled
1956           and the task is only allowed to execute a few safe syscalls
1957           defined by each seccomp mode.
1958
1959           If unsure, say Y. Only embedded should say N here.
1960
1961 endmenu
1962
1963 config RWSEM_GENERIC_SPINLOCK
1964         bool
1965         default y
1966
1967 config LOCKDEP_SUPPORT
1968         bool
1969         default y
1970
1971 config STACKTRACE_SUPPORT
1972         bool
1973         default y
1974
1975 source "init/Kconfig"
1976
1977 menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1978
1979 config HW_HAS_EISA
1980         bool
1981 config HW_HAS_PCI
1982         bool
1983
1984 config PCI
1985         bool "Support for PCI controller"
1986         depends on HW_HAS_PCI
1987         select PCI_DOMAINS
1988         help
1989           Find out whether you have a PCI motherboard. PCI is the name of a
1990           bus system, i.e. the way the CPU talks to the other stuff inside
1991           your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1992           say Y, otherwise N.
1993
1994           The PCI-HOWTO, available from
1995           <http://www.tldp.org/docs.html#howto>, contains valuable
1996           information about which PCI hardware does work under Linux and which
1997           doesn't.
1998
1999 config PCI_DOMAINS
2000         bool
2001
2002 source "drivers/pci/Kconfig"
2003
2004 #
2005 # ISA support is now enabled via select.  Too many systems still have the one
2006 # or other ISA chip on the board that users don't know about so don't expect
2007 # users to choose the right thing ...
2008 #
2009 config ISA
2010         bool
2011
2012 config EISA
2013         bool "EISA support"
2014         depends on HW_HAS_EISA
2015         select ISA
2016         select GENERIC_ISA_DMA
2017         ---help---
2018           The Extended Industry Standard Architecture (EISA) bus was
2019           developed as an open alternative to the IBM MicroChannel bus.
2020
2021           The EISA bus provided some of the features of the IBM MicroChannel
2022           bus while maintaining backward compatibility with cards made for
2023           the older ISA bus.  The EISA bus saw limited use between 1988 and
2024           1995 when it was made obsolete by the PCI bus.
2025
2026           Say Y here if you are building a kernel for an EISA-based machine.
2027
2028           Otherwise, say N.
2029
2030 source "drivers/eisa/Kconfig"
2031
2032 config TC
2033         bool "TURBOchannel support"
2034         depends on MACH_DECSTATION
2035         help
2036           TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
2037           processors.  Documentation on writing device drivers for TurboChannel
2038           is available at:
2039           <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
2040
2041 #config ACCESSBUS
2042 #       bool "Access.Bus support"
2043 #       depends on TC
2044
2045 config MMU
2046         bool
2047         default y
2048
2049 config I8253
2050         bool
2051
2052 config ZONE_DMA32
2053         bool
2054
2055 source "drivers/pcmcia/Kconfig"
2056
2057 source "drivers/pci/hotplug/Kconfig"
2058
2059 endmenu
2060
2061 menu "Executable file formats"
2062
2063 source "fs/Kconfig.binfmt"
2064
2065 config TRAD_SIGNALS
2066         bool
2067
2068 config BINFMT_IRIX
2069         bool "Include IRIX binary compatibility"
2070         depends on CPU_BIG_ENDIAN && 32BIT && BROKEN
2071
2072 config MIPS32_COMPAT
2073         bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
2074         depends on 64BIT
2075         help
2076           Select this option if you want Linux/MIPS 32-bit binary
2077           compatibility. Since all software available for Linux/MIPS is
2078           currently 32-bit you should say Y here.
2079
2080 config COMPAT
2081         bool
2082         depends on MIPS32_COMPAT
2083         default y
2084
2085 config SYSVIPC_COMPAT
2086         bool
2087         depends on COMPAT && SYSVIPC
2088         default y
2089
2090 config MIPS32_O32
2091         bool "Kernel support for o32 binaries"
2092         depends on MIPS32_COMPAT
2093         help
2094           Select this option if you want to run o32 binaries.  These are pure
2095           32-bit binaries as used by the 32-bit Linux/MIPS port.  Most of
2096           existing binaries are in this format.
2097
2098           If unsure, say Y.
2099
2100 config MIPS32_N32
2101         bool "Kernel support for n32 binaries"
2102         depends on MIPS32_COMPAT
2103         help
2104           Select this option if you want to run n32 binaries.  These are
2105           64-bit binaries using 32-bit quantities for addressing and certain
2106           data that would normally be 64-bit.  They are used in special
2107           cases.
2108
2109           If unsure, say N.
2110
2111 config BINFMT_ELF32
2112         bool
2113         default y if MIPS32_O32 || MIPS32_N32
2114
2115 endmenu
2116
2117 menu "Power management options"
2118
2119 source "kernel/power/Kconfig"
2120
2121 endmenu
2122
2123 source "net/Kconfig"
2124
2125 source "drivers/Kconfig"
2126
2127 source "fs/Kconfig"
2128
2129 source "kernel/Kconfig.instrumentation"
2130
2131 source "arch/mips/Kconfig.debug"
2132
2133 source "security/Kconfig"
2134
2135 source "crypto/Kconfig"
2136
2137 source "lib/Kconfig"