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