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