Support for BigSur board.
[safe/jmp/linux-2.6] / arch / mips / Kconfig
1 config MIPS
2         bool
3         default y
4         # Horrible source of confusion.  Die, die, die ...
5         select EMBEDDED
6
7 mainmenu "Linux/MIPS Kernel Configuration"
8
9 source "init/Kconfig"
10
11 menu "Machine selection"
12
13 choice
14         prompt "System type"
15         default SGI_IP22
16
17 config MIPS_MTX1
18         bool "Support for 4G Systems MTX-1 board"
19         select DMA_NONCOHERENT
20         select HW_HAS_PCI
21         select SOC_AU1500
22         select SYS_SUPPORTS_LITTLE_ENDIAN
23
24 config MIPS_BOSPORUS
25         bool "AMD Alchemy Bosporus board"
26         select SOC_AU1500
27         select DMA_NONCOHERENT
28         select SYS_SUPPORTS_LITTLE_ENDIAN
29
30 config MIPS_PB1000
31         bool "AMD Alchemy PB1000 board"
32         select SOC_AU1000
33         select DMA_NONCOHERENT
34         select HW_HAS_PCI
35         select SWAP_IO_SPACE
36         select SYS_SUPPORTS_LITTLE_ENDIAN
37
38 config MIPS_PB1100
39         bool "AMD Alchemy PB1100 board"
40         select SOC_AU1100
41         select DMA_NONCOHERENT
42         select HW_HAS_PCI
43         select SWAP_IO_SPACE
44         select SYS_SUPPORTS_LITTLE_ENDIAN
45
46 config MIPS_PB1500
47         bool "AMD Alchemy PB1500 board"
48         select SOC_AU1500
49         select DMA_NONCOHERENT
50         select HW_HAS_PCI
51         select SYS_SUPPORTS_LITTLE_ENDIAN
52
53 config MIPS_PB1550
54         bool "AMD Alchemy PB1550 board"
55         select SOC_AU1550
56         select DMA_NONCOHERENT
57         select HW_HAS_PCI
58         select MIPS_DISABLE_OBSOLETE_IDE
59         select SYS_SUPPORTS_LITTLE_ENDIAN
60
61 config MIPS_PB1200
62         bool "AMD Alchemy PB1200 board"
63         select SOC_AU1200
64         select DMA_NONCOHERENT
65         select MIPS_DISABLE_OBSOLETE_IDE
66         select SYS_SUPPORTS_LITTLE_ENDIAN
67
68 config MIPS_DB1000
69         bool "AMD Alchemy DB1000 board"
70         select SOC_AU1000
71         select DMA_NONCOHERENT
72         select HW_HAS_PCI
73         select SYS_SUPPORTS_LITTLE_ENDIAN
74
75 config MIPS_DB1100
76         bool "AMD Alchemy DB1100 board"
77         select SOC_AU1100
78         select DMA_NONCOHERENT
79         select SYS_SUPPORTS_LITTLE_ENDIAN
80
81 config MIPS_DB1500
82         bool "AMD Alchemy DB1500 board"
83         select SOC_AU1500
84         select DMA_NONCOHERENT
85         select HW_HAS_PCI
86         select MIPS_DISABLE_OBSOLETE_IDE
87         select SYS_SUPPORTS_BIG_ENDIAN
88         select SYS_SUPPORTS_LITTLE_ENDIAN
89
90 config MIPS_DB1550
91         bool "AMD Alchemy DB1550 board"
92         select SOC_AU1550
93         select HW_HAS_PCI
94         select DMA_NONCOHERENT
95         select MIPS_DISABLE_OBSOLETE_IDE
96         select SYS_SUPPORTS_LITTLE_ENDIAN
97
98 config MIPS_DB1200
99         bool "AMD Alchemy DB1200 board"
100         select SOC_AU1200
101         select DMA_COHERENT
102         select MIPS_DISABLE_OBSOLETE_IDE
103         select SYS_SUPPORTS_LITTLE_ENDIAN
104
105 config MIPS_MIRAGE
106         bool "AMD Alchemy Mirage board"
107         select DMA_NONCOHERENT
108         select SOC_AU1500
109         select SYS_SUPPORTS_LITTLE_ENDIAN
110
111 config MIPS_COBALT
112         bool "Support for Cobalt Server"
113         select DMA_NONCOHERENT
114         select HW_HAS_PCI
115         select I8259
116         select IRQ_CPU
117         select MIPS_GT64111
118         select SYS_SUPPORTS_32BIT_KERNEL
119         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
120         select SYS_SUPPORTS_LITTLE_ENDIAN
121
122 config MACH_DECSTATION
123         bool "Support for DECstations"
124         select BOOT_ELF32
125         select DMA_NONCOHERENT
126         select EARLY_PRINTK
127         select IRQ_CPU
128         select SYS_SUPPORTS_32BIT_KERNEL
129         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
130         select SYS_SUPPORTS_LITTLE_ENDIAN
131         help
132           This enables support for DEC's MIPS based workstations.  For details
133           see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
134           DECstation porting pages on <http://decstation.unix-ag.org/>.
135
136           If you have one of the following DECstation Models you definitely
137           want to choose R4xx0 for the CPU Type:
138
139                 DECstation 5000/50
140                 DECstation 5000/150
141                 DECstation 5000/260
142                 DECsystem 5900/260
143
144           otherwise choose R3000.
145
146 config MIPS_EV64120
147         bool "Support for Galileo EV64120 Evaluation board (EXPERIMENTAL)"
148         depends on EXPERIMENTAL
149         select DMA_NONCOHERENT
150         select HW_HAS_PCI
151         select MIPS_GT64120
152         select SYS_SUPPORTS_32BIT_KERNEL
153         select SYS_SUPPORTS_64BIT_KERNEL
154         select SYS_SUPPORTS_BIG_ENDIAN
155         help
156           This is an evaluation board based on the Galileo GT-64120
157           single-chip system controller that contains a MIPS R5000 compatible
158           core running at 75/100MHz.  Their website is located at
159           <http://www.marvell.com/>.  Say Y here if you wish to build a
160           kernel for this platform.
161
162 config MIPS_EV96100
163         bool "Support for Galileo EV96100 Evaluation board (EXPERIMENTAL)"
164         depends on EXPERIMENTAL
165         select DMA_NONCOHERENT
166         select HW_HAS_PCI
167         select IRQ_CPU
168         select MIPS_GT96100
169         select RM7000_CPU_SCACHE
170         select SWAP_IO_SPACE
171         select SYS_SUPPORTS_32BIT_KERNEL
172         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
173         select SYS_SUPPORTS_BIG_ENDIAN
174         help
175           This is an evaluation board based on the Galileo GT-96100 LAN/WAN
176           communications controllers containing a MIPS R5000 compatible core
177           running at 83MHz. Their website is <http://www.marvell.com/>. Say Y
178           here if you wish to build a kernel for this platform.
179
180 config MIPS_IVR
181         bool "Support for Globespan IVR board"
182         select DMA_NONCOHERENT
183         select HW_HAS_PCI
184         select ITE_BOARD_GEN
185         select SYS_SUPPORTS_32BIT_KERNEL
186         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
187         select SYS_SUPPORTS_LITTLE_ENDIAN
188         help
189           This is an evaluation board built by Globespan to showcase thir
190           iVR (Internet Video Recorder) design. It utilizes a QED RM5231
191           R5000 MIPS core. More information can be found out their website
192           located at <http://www.globespan.net/>. Say Y here if you wish to
193           build a kernel for this platform.
194
195 config MIPS_ITE8172
196         bool "Support for ITE 8172G board"
197         select DMA_NONCOHERENT
198         select HW_HAS_PCI
199         select ITE_BOARD_GEN
200         select SYS_SUPPORTS_32BIT_KERNEL
201         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
202         select SYS_SUPPORTS_LITTLE_ENDIAN
203         help
204           Ths is an evaluation board made by ITE <http://www.ite.com.tw/>
205           with ATX form factor that utilizes a MIPS R5000 to work with its
206           ITE8172G companion internet appliance chip. The MIPS core can be
207           either a NEC Vr5432 or QED RM5231. Say Y here if you wish to build
208           a kernel for this platform.
209
210 config MACH_JAZZ
211         bool "Support for the Jazz family of machines"
212         select ARC
213         select ARC32
214         select ARCH_MAY_HAVE_PC_FDC
215         select GENERIC_ISA_DMA
216         select I8259
217         select ISA
218         select SYS_SUPPORTS_32BIT_KERNEL
219         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
220         help
221          This a family of machines based on the MIPS R4030 chipset which was
222          used by several vendors to build RISC/os and Windows NT workstations.
223          Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
224          Olivetti M700-10 workstations.
225
226 config LASAT
227         bool "Support for LASAT Networks platforms"
228         select DMA_NONCOHERENT
229         select HW_HAS_PCI
230         select MIPS_GT64120
231         select MIPS_NILE4
232         select R5000_CPU_SCACHE
233         select SYS_SUPPORTS_32BIT_KERNEL
234         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
235         select SYS_SUPPORTS_LITTLE_ENDIAN
236
237 config MIPS_ATLAS
238         bool "Support for MIPS Atlas board"
239         select BOOT_ELF32
240         select DMA_NONCOHERENT
241         select IRQ_CPU
242         select HW_HAS_PCI
243         select MIPS_BOARDS_GEN
244         select MIPS_BONITO64
245         select MIPS_GT64120
246         select MIPS_MSC
247         select RM7000_CPU_SCACHE
248         select SWAP_IO_SPACE
249         select SYS_SUPPORTS_32BIT_KERNEL
250         select SYS_SUPPORTS_64BIT_KERNEL
251         select SYS_SUPPORTS_BIG_ENDIAN
252         select SYS_SUPPORTS_LITTLE_ENDIAN
253         help
254           This enables support for the MIPS Technologies Atlas evaluation
255           board.
256
257 config MIPS_MALTA
258         bool "Support for MIPS Malta board"
259         select ARCH_MAY_HAVE_PC_FDC
260         select BOOT_ELF32
261         select HAVE_STD_PC_SERIAL_PORT
262         select DMA_NONCOHERENT
263         select IRQ_CPU
264         select GENERIC_ISA_DMA
265         select HW_HAS_PCI
266         select I8259
267         select MIPS_BOARDS_GEN
268         select MIPS_BONITO64
269         select MIPS_GT64120
270         select MIPS_MSC
271         select SWAP_IO_SPACE
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         help
277           This enables support for the MIPS Technologies Malta evaluation
278           board.
279
280 config MIPS_SEAD
281         bool "Support for MIPS SEAD board (EXPERIMENTAL)"
282         depends on EXPERIMENTAL
283         select IRQ_CPU
284         select DMA_NONCOHERENT
285         select MIPS_BOARDS_GEN
286         select SYS_SUPPORTS_32BIT_KERNEL
287         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
288         select SYS_SUPPORTS_BIG_ENDIAN
289         select SYS_SUPPORTS_LITTLE_ENDIAN
290         help
291           This enables support for the MIPS Technologies SEAD evaluation
292           board.
293
294 config MIPS_SIM
295         bool 'Support for MIPS simulator (MIPSsim)'
296         select DMA_NONCOHERENT
297         select IRQ_CPU
298         select SYS_SUPPORTS_32BIT_KERNEL
299         select SYS_SUPPORTS_BIG_ENDIAN
300         select SYS_SUPPORTS_LITTLE_ENDIAN
301         help
302           This option enables support for MIPS Technologies MIPSsim software
303           emulator.
304
305 config MOMENCO_JAGUAR_ATX
306         bool "Support for Momentum Jaguar board"
307         select BOOT_ELF32
308         select DMA_NONCOHERENT
309         select HW_HAS_PCI
310         select IRQ_CPU
311         select IRQ_CPU_RM7K
312         select IRQ_MV64340
313         select LIMITED_DMA
314         select PCI_MARVELL
315         select RM7000_CPU_SCACHE
316         select SWAP_IO_SPACE
317         select SYS_SUPPORTS_32BIT_KERNEL
318         select SYS_SUPPORTS_64BIT_KERNEL
319         select SYS_SUPPORTS_BIG_ENDIAN
320         help
321           The Jaguar ATX is a MIPS-based Single Board Computer (SBC) made by
322           Momentum Computer <http://www.momenco.com/>.
323
324 config MOMENCO_OCELOT
325         bool "Support for Momentum Ocelot board"
326         select DMA_NONCOHERENT
327         select HW_HAS_PCI
328         select IRQ_CPU
329         select IRQ_CPU_RM7K
330         select MIPS_GT64120
331         select RM7000_CPU_SCACHE
332         select SWAP_IO_SPACE
333         select SYS_SUPPORTS_32BIT_KERNEL
334         select SYS_SUPPORTS_64BIT_KERNEL
335         select SYS_SUPPORTS_BIG_ENDIAN
336         help
337           The Ocelot is a MIPS-based Single Board Computer (SBC) made by
338           Momentum Computer <http://www.momenco.com/>.
339
340 config MOMENCO_OCELOT_3
341         bool "Support for Momentum Ocelot-3 board"
342         select BOOT_ELF32
343         select DMA_NONCOHERENT
344         select HW_HAS_PCI
345         select IRQ_CPU
346         select IRQ_CPU_RM7K
347         select IRQ_MV64340
348         select PCI_MARVELL
349         select RM7000_CPU_SCACHE
350         select SWAP_IO_SPACE
351         select SYS_SUPPORTS_32BIT_KERNEL
352         select SYS_SUPPORTS_64BIT_KERNEL
353         select SYS_SUPPORTS_BIG_ENDIAN
354         help
355           The Ocelot-3 is based off Discovery III System Controller and
356           PMC-Sierra Rm79000 core.
357
358 config MOMENCO_OCELOT_C
359         bool "Support for Momentum Ocelot-C board"
360         select DMA_NONCOHERENT
361         select HW_HAS_PCI
362         select IRQ_CPU
363         select IRQ_MV64340
364         select PCI_MARVELL
365         select RM7000_CPU_SCACHE
366         select SWAP_IO_SPACE
367         select SYS_SUPPORTS_32BIT_KERNEL
368         select SYS_SUPPORTS_64BIT_KERNEL
369         select SYS_SUPPORTS_BIG_ENDIAN
370         help
371           The Ocelot is a MIPS-based Single Board Computer (SBC) made by
372           Momentum Computer <http://www.momenco.com/>.
373
374 config MOMENCO_OCELOT_G
375         bool "Support for Momentum Ocelot-G board"
376         select DMA_NONCOHERENT
377         select HW_HAS_PCI
378         select IRQ_CPU
379         select IRQ_CPU_RM7K
380         select PCI_MARVELL
381         select RM7000_CPU_SCACHE
382         select SWAP_IO_SPACE
383         select SYS_SUPPORTS_32BIT_KERNEL
384         select SYS_SUPPORTS_64BIT_KERNEL
385         select SYS_SUPPORTS_BIG_ENDIAN
386         help
387           The Ocelot is a MIPS-based Single Board Computer (SBC) made by
388           Momentum Computer <http://www.momenco.com/>.
389
390 config MIPS_XXS1500
391         bool "Support for MyCable XXS1500 board"
392         select DMA_NONCOHERENT
393         select SOC_AU1500
394         select SYS_SUPPORTS_LITTLE_ENDIAN
395
396 config PNX8550_V2PCI
397         bool "Support for Philips PNX8550 based Viper2-PCI board"
398         select PNX8550
399         select SYS_SUPPORTS_LITTLE_ENDIAN
400
401 config PNX8550_JBS
402         bool "Support for Philips PNX8550 based JBS board"
403         select PNX8550
404         select SYS_SUPPORTS_LITTLE_ENDIAN
405
406 config DDB5074
407         bool "Support for NEC DDB Vrc-5074 (EXPERIMENTAL)"
408         depends on EXPERIMENTAL
409         select DDB5XXX_COMMON
410         select DMA_NONCOHERENT
411         select HAVE_STD_PC_SERIAL_PORT
412         select HW_HAS_PCI
413         select IRQ_CPU
414         select I8259
415         select ISA
416         select SYS_SUPPORTS_32BIT_KERNEL
417         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
418         select SYS_SUPPORTS_LITTLE_ENDIAN
419         help
420           This enables support for the VR5000-based NEC DDB Vrc-5074
421           evaluation board.
422
423 config DDB5476
424         bool "Support for NEC DDB Vrc-5476"
425         select DDB5XXX_COMMON
426         select DMA_NONCOHERENT
427         select HAVE_STD_PC_SERIAL_PORT
428         select HW_HAS_PCI
429         select IRQ_CPU
430         select I8259
431         select ISA
432         select SYS_SUPPORTS_32BIT_KERNEL
433         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
434         select SYS_SUPPORTS_LITTLE_ENDIAN
435         help
436           This enables support for the R5432-based NEC DDB Vrc-5476
437           evaluation board.
438
439           Features : kernel debugging, serial terminal, NFS root fs, on-board
440           ether port USB, AC97, PCI, PCI VGA card & framebuffer console,
441           IDE controller, PS2 keyboard, PS2 mouse, etc.
442
443 config DDB5477
444         bool "Support for NEC DDB Vrc-5477"
445         select DDB5XXX_COMMON
446         select DMA_NONCOHERENT
447         select HW_HAS_PCI
448         select I8259
449         select IRQ_CPU
450         select SYS_SUPPORTS_32BIT_KERNEL
451         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
452         select SYS_SUPPORTS_LITTLE_ENDIAN
453         help
454           This enables support for the R5432-based NEC DDB Vrc-5477,
455           or Rockhopper/SolutionGear boards with R5432/R5500 CPUs.
456
457           Features : kernel debugging, serial terminal, NFS root fs, on-board
458           ether port USB, AC97, PCI, etc.
459
460 config MACH_VR41XX
461         bool "Support for NEC VR4100 series based machines"
462         select SYS_SUPPORTS_32BIT_KERNEL
463         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
464
465 config PMC_YOSEMITE
466         bool "Support for PMC-Sierra Yosemite eval board"
467         select DMA_COHERENT
468         select HW_HAS_PCI
469         select IRQ_CPU
470         select IRQ_CPU_RM7K
471         select IRQ_CPU_RM9K
472         select SWAP_IO_SPACE
473         select SYS_SUPPORTS_32BIT_KERNEL
474         select SYS_SUPPORTS_64BIT_KERNEL
475         select SYS_SUPPORTS_BIG_ENDIAN
476         select SYS_SUPPORTS_HIGHMEM
477         help
478           Yosemite is an evaluation board for the RM9000x2 processor
479           manufactured by PMC-Sierra.
480
481 config QEMU
482         bool "Support for Qemu"
483         select DMA_COHERENT
484         select GENERIC_ISA_DMA
485         select HAVE_STD_PC_SERIAL_PORT
486         select I8259
487         select ISA
488         select SWAP_IO_SPACE
489         select SYS_SUPPORTS_32BIT_KERNEL
490         select SYS_SUPPORTS_BIG_ENDIAN
491         help
492           Qemu is a software emulator which among other architectures also
493           can simulate a MIPS32 4Kc system.  This patch adds support for the
494           system architecture that currently is being simulated by Qemu.  It
495           will eventually be removed again when Qemu has the capability to
496           simulate actual MIPS hardware platforms.  More information on Qemu
497           can be found at http://www.linux-mips.org/wiki/Qemu.
498
499 config SGI_IP22
500         bool "Support for SGI IP22 (Indy/Indigo2)"
501         select ARC
502         select ARC32
503         select BOOT_ELF32
504         select DMA_NONCOHERENT
505         select HW_HAS_EISA
506         select IP22_CPU_SCACHE
507         select IRQ_CPU
508         select SWAP_IO_SPACE
509         select SYS_SUPPORTS_32BIT_KERNEL
510         select SYS_SUPPORTS_64BIT_KERNEL
511         select SYS_SUPPORTS_BIG_ENDIAN
512         help
513           This are the SGI Indy, Challenge S and Indigo2, as well as certain
514           OEM variants like the Tandem CMN B006S. To compile a Linux kernel
515           that runs on these, say Y here.
516
517 config SGI_IP27
518         bool "Support for SGI IP27 (Origin200/2000)"
519         select ARC
520         select ARC64
521         select BOOT_ELF64
522         select DMA_IP27
523         select HW_HAS_PCI
524         select PCI_DOMAINS
525         select SYS_SUPPORTS_64BIT_KERNEL
526         select SYS_SUPPORTS_BIG_ENDIAN
527         help
528           This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
529           workstations.  To compile a Linux kernel that runs on these, say Y
530           here.
531
532 config SGI_IP32
533         bool "Support for SGI IP32 (O2) (EXPERIMENTAL)"
534         depends on EXPERIMENTAL
535         select ARC
536         select ARC32
537         select BOOT_ELF32
538         select OWN_DMA
539         select DMA_IP32
540         select DMA_NONCOHERENT
541         select HW_HAS_PCI
542         select R5000_CPU_SCACHE
543         select RM7000_CPU_SCACHE
544         select SYS_SUPPORTS_64BIT_KERNEL
545         select SYS_SUPPORTS_BIG_ENDIAN
546         help
547           If you want this kernel to run on SGI O2 workstation, say Y here.
548
549 config SIBYTE_BIGSUR
550         bool "Support for Sibyte BigSur"
551         select BOOT_ELF32
552         select DMA_COHERENT
553         select SIBYTE_BCM1x80
554         select SWAP_IO_SPACE
555         select SYS_SUPPORTS_BIG_ENDIAN
556         select SYS_SUPPORTS_LITTLE_ENDIAN
557
558 config SIBYTE_SWARM
559         bool "Support for Sibyte BCM91250A-SWARM"
560         select BOOT_ELF32
561         select DMA_COHERENT
562         select SIBYTE_SB1250
563         select SWAP_IO_SPACE
564         select SYS_SUPPORTS_BIG_ENDIAN
565         select SYS_SUPPORTS_HIGHMEM
566         select SYS_SUPPORTS_LITTLE_ENDIAN
567
568 config SIBYTE_SENTOSA
569         bool "Support for Sibyte BCM91250E-Sentosa"
570         depends on EXPERIMENTAL
571         select BOOT_ELF32
572         select DMA_COHERENT
573         select SIBYTE_SB1250
574         select SWAP_IO_SPACE
575         select SYS_SUPPORTS_BIG_ENDIAN
576         select SYS_SUPPORTS_LITTLE_ENDIAN
577
578 config SIBYTE_RHONE
579         bool "Support for Sibyte BCM91125E-Rhone"
580         depends on EXPERIMENTAL
581         select BOOT_ELF32
582         select DMA_COHERENT
583         select SIBYTE_BCM1125H
584         select SWAP_IO_SPACE
585         select SYS_SUPPORTS_BIG_ENDIAN
586         select SYS_SUPPORTS_LITTLE_ENDIAN
587
588 config SIBYTE_CARMEL
589         bool "Support for Sibyte BCM91120x-Carmel"
590         depends on EXPERIMENTAL
591         select BOOT_ELF32
592         select DMA_COHERENT
593         select SIBYTE_BCM1120
594         select SWAP_IO_SPACE
595         select SYS_SUPPORTS_BIG_ENDIAN
596         select SYS_SUPPORTS_LITTLE_ENDIAN
597
598 config SIBYTE_PTSWARM
599         bool "Support for Sibyte BCM91250PT-PTSWARM"
600         depends on EXPERIMENTAL
601         select BOOT_ELF32
602         select DMA_COHERENT
603         select SIBYTE_SB1250
604         select SWAP_IO_SPACE
605         select SYS_SUPPORTS_BIG_ENDIAN
606         select SYS_SUPPORTS_HIGHMEM
607         select SYS_SUPPORTS_LITTLE_ENDIAN
608
609 config SIBYTE_LITTLESUR
610         bool "Support for Sibyte BCM91250C2-LittleSur"
611         depends on EXPERIMENTAL
612         select BOOT_ELF32
613         select DMA_COHERENT
614         select SIBYTE_SB1250
615         select SWAP_IO_SPACE
616         select SYS_SUPPORTS_BIG_ENDIAN
617         select SYS_SUPPORTS_HIGHMEM
618         select SYS_SUPPORTS_LITTLE_ENDIAN
619
620 config SIBYTE_CRHINE
621         bool "Support for Sibyte BCM91120C-CRhine"
622         depends on EXPERIMENTAL
623         select BOOT_ELF32
624         select DMA_COHERENT
625         select SIBYTE_BCM1120
626         select SWAP_IO_SPACE
627         select SYS_SUPPORTS_BIG_ENDIAN
628         select SYS_SUPPORTS_LITTLE_ENDIAN
629
630 config SIBYTE_CRHONE
631         bool "Support for Sibyte BCM91125C-CRhone"
632         depends on EXPERIMENTAL
633         select BOOT_ELF32
634         select DMA_COHERENT
635         select SIBYTE_BCM1125
636         select SWAP_IO_SPACE
637         select SYS_SUPPORTS_BIG_ENDIAN
638         select SYS_SUPPORTS_HIGHMEM
639         select SYS_SUPPORTS_LITTLE_ENDIAN
640
641 config SNI_RM200_PCI
642         bool "Support for SNI RM200 PCI"
643         select ARC
644         select ARC32
645         select ARCH_MAY_HAVE_PC_FDC
646         select BOOT_ELF32
647         select DMA_NONCOHERENT
648         select GENERIC_ISA_DMA
649         select HAVE_STD_PC_SERIAL_PORT
650         select HW_HAS_EISA
651         select HW_HAS_PCI
652         select I8259
653         select ISA
654         select SYS_SUPPORTS_32BIT_KERNEL
655         select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
656         select SYS_SUPPORTS_BIG_ENDIAN if EXPERIMENTAL
657         select SYS_SUPPORTS_HIGHMEM
658         select SYS_SUPPORTS_LITTLE_ENDIAN
659         help
660           The SNI RM200 PCI was a MIPS-based platform manufactured by Siemens
661           Nixdorf Informationssysteme (SNI), parent company of Pyramid
662           Technology and now in turn merged with Fujitsu.  Say Y here to
663           support this machine type.
664
665 config TOSHIBA_JMR3927
666         bool "Support for Toshiba JMR-TX3927 board"
667         select DMA_NONCOHERENT
668         select HW_HAS_PCI
669         select MIPS_TX3927
670         select SWAP_IO_SPACE
671         select SYS_SUPPORTS_32BIT_KERNEL
672         select SYS_SUPPORTS_BIG_ENDIAN
673         select TOSHIBA_BOARDS
674
675 config TOSHIBA_RBTX4927
676         bool "Support for Toshiba TBTX49[23]7 board"
677         select DMA_NONCOHERENT
678         select HAS_TXX9_SERIAL
679         select HW_HAS_PCI
680         select I8259
681         select ISA
682         select SWAP_IO_SPACE
683         select SYS_SUPPORTS_32BIT_KERNEL
684         select SYS_SUPPORTS_64BIT_KERNEL
685         select SYS_SUPPORTS_BIG_ENDIAN
686         select TOSHIBA_BOARDS
687         help
688           This Toshiba board is based on the TX4927 processor. Say Y here to
689           support this machine type
690
691 config TOSHIBA_RBTX4938
692         bool "Support for Toshiba RBTX4938 board"
693         select HAVE_STD_PC_SERIAL_PORT
694         select DMA_NONCOHERENT
695         select GENERIC_ISA_DMA
696         select HAS_TXX9_SERIAL
697         select HW_HAS_PCI
698         select I8259
699         select ISA
700         select SWAP_IO_SPACE
701         select SYS_SUPPORTS_32BIT_KERNEL
702         select SYS_SUPPORTS_LITTLE_ENDIAN
703         select SYS_SUPPORTS_BIG_ENDIAN
704         select TOSHIBA_BOARDS
705         help
706           This Toshiba board is based on the TX4938 processor. Say Y here to
707           support this machine type
708
709 endchoice
710
711 source "arch/mips/ddb5xxx/Kconfig"
712 source "arch/mips/gt64120/ev64120/Kconfig"
713 source "arch/mips/jazz/Kconfig"
714 source "arch/mips/ite-boards/Kconfig"
715 source "arch/mips/lasat/Kconfig"
716 source "arch/mips/momentum/Kconfig"
717 source "arch/mips/pmc-sierra/Kconfig"
718 source "arch/mips/sgi-ip27/Kconfig"
719 source "arch/mips/sibyte/Kconfig"
720 source "arch/mips/tx4927/Kconfig"
721 source "arch/mips/tx4938/Kconfig"
722 source "arch/mips/vr41xx/Kconfig"
723 source "arch/mips/philips/pnx8550/common/Kconfig"
724
725 endmenu
726
727 config RWSEM_GENERIC_SPINLOCK
728         bool
729         default y
730
731 config RWSEM_XCHGADD_ALGORITHM
732         bool
733
734 config GENERIC_CALIBRATE_DELAY
735         bool
736         default y
737
738 #
739 # Select some configuration options automatically based on user selections.
740 #
741 config ARC
742         bool
743
744 config ARCH_MAY_HAVE_PC_FDC
745         bool
746
747 config DMA_COHERENT
748         bool
749
750 config DMA_IP27
751         bool
752
753 config DMA_IP32
754         bool
755         select DMA_NEED_PCI_MAP_STATE
756
757 config DMA_NONCOHERENT
758         bool
759         select DMA_NEED_PCI_MAP_STATE
760
761 config DMA_NEED_PCI_MAP_STATE
762         bool
763
764 config OWN_DMA
765         bool
766
767 config EARLY_PRINTK
768         bool
769
770 config GENERIC_ISA_DMA
771         bool
772
773 config I8259
774         bool
775
776 config LIMITED_DMA
777         bool
778         select HIGHMEM
779         select SYS_SUPPORTS_HIGHMEM
780
781 config MIPS_BONITO64
782         bool
783
784 config MIPS_MSC
785         bool
786
787 config MIPS_NILE4
788         bool
789
790 config MIPS_DISABLE_OBSOLETE_IDE
791         bool
792
793 #
794 # Endianess selection.  Suffiently obscure so many users don't know what to
795 # answer,so we try hard to limit the available choices.  Also the use of a
796 # choice statement should be more obvious to the user.
797 #
798 choice
799         prompt "Endianess selection"
800         help
801           Some MIPS machines can be configured for either little or big endian
802           byte order. These modes require different kernels and a different
803           Linux distribution.  In general there is one prefered byteorder for a
804           particular system but some systems are just as commonly used in the
805           one or the other endianess.
806
807 config CPU_BIG_ENDIAN
808         bool "Big endian"
809         depends on SYS_SUPPORTS_BIG_ENDIAN
810
811 config CPU_LITTLE_ENDIAN
812         bool "Little endian"
813         depends on SYS_SUPPORTS_LITTLE_ENDIAN
814         help
815
816 endchoice
817
818 config SYS_SUPPORTS_BIG_ENDIAN
819         bool
820
821 config SYS_SUPPORTS_LITTLE_ENDIAN
822         bool
823
824 config IRQ_CPU
825         bool
826
827 config IRQ_CPU_RM7K
828         bool
829
830 config IRQ_CPU_RM9K
831         bool
832
833 config IRQ_MV64340
834         bool
835
836 config DDB5XXX_COMMON
837         bool
838
839 config MIPS_BOARDS_GEN
840         bool
841
842 config MIPS_GT64111
843         bool
844
845 config MIPS_GT64120
846         bool
847
848 config MIPS_TX3927
849         bool
850         select HAS_TXX9_SERIAL
851
852 config PCI_MARVELL
853         bool
854
855 config ITE_BOARD_GEN
856         bool
857
858 config SOC_AU1000
859         bool
860         select SOC_AU1X00
861
862 config SOC_AU1100
863         bool
864         select SOC_AU1X00
865
866 config SOC_AU1500
867         bool
868         select SOC_AU1X00
869
870 config SOC_AU1550
871         bool
872         select SOC_AU1X00
873
874 config SOC_AU1200
875         bool
876         select SOC_AU1X00
877
878 config SOC_AU1X00
879         bool
880         select SYS_SUPPORTS_32BIT_KERNEL
881
882 config PNX8550
883         bool
884         select SOC_PNX8550
885
886 config SOC_PNX8550
887         bool
888         select SYS_SUPPORTS_32BIT_KERNEL
889         select DMA_NONCOHERENT
890         select HW_HAS_PCI
891
892 config SWAP_IO_SPACE
893         bool
894
895 #
896 # Unfortunately not all GT64120 systems run the chip at the same clock.
897 # As the user for the clock rate and try to minimize the available options.
898 #
899 choice
900         prompt "Galileo Chip Clock"
901         #default SYSCLK_83 if MIPS_EV64120
902         depends on MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
903         default SYSCLK_83 if MIPS_EV64120
904         default SYSCLK_100 if MOMENCO_OCELOT || MOMENCO_OCELOT_G
905
906 config SYSCLK_75
907         bool "75" if MIPS_EV64120
908
909 config SYSCLK_83
910         bool "83.3" if MIPS_EV64120
911
912 config SYSCLK_100
913         bool "100" if MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
914
915 endchoice
916
917 config ARC32
918         bool
919
920 config AU1X00_USB_DEVICE
921         bool
922         depends on MIPS_PB1500 || MIPS_PB1100 || MIPS_PB1000
923         default n
924
925 config MIPS_GT96100
926         bool
927         select MIPS_GT64120
928
929 config IT8172_CIR
930         bool
931         depends on MIPS_ITE8172 || MIPS_IVR
932         default y
933
934 config IT8712
935         bool
936         depends on MIPS_ITE8172
937         default y
938
939 config BOOT_ELF32
940         bool
941
942 config MIPS_L1_CACHE_SHIFT
943         int
944         default "4" if MACH_DECSTATION
945         default "7" if SGI_IP27
946         default "5"
947
948 config HAVE_STD_PC_SERIAL_PORT
949         bool
950
951 config ARC_CONSOLE
952         bool "ARC console support"
953         depends on SGI_IP22 || SNI_RM200_PCI
954
955 config ARC_MEMORY
956         bool
957         depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP32
958         default y
959
960 config ARC_PROMLIB
961         bool
962         depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP22 || SGI_IP32
963         default y
964
965 config ARC64
966         bool
967
968 config BOOT_ELF64
969         bool
970
971 config TOSHIBA_BOARDS
972         bool
973
974 menu "CPU selection"
975
976 choice
977         prompt "CPU type"
978         default CPU_R4X00
979
980 config CPU_MIPS32_R1
981         bool "MIPS32 Release 1"
982         select CPU_HAS_PREFETCH
983         select CPU_SUPPORTS_32BIT_KERNEL
984         help
985           Choose this option to build a kernel for release 1 or later of the
986           MIPS32 architecture.  Most modern embedded systems with a 32-bit
987           MIPS processor are based on a MIPS32 processor.  If you know the
988           specific type of processor in your system, choose those that one
989           otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
990           Release 2 of the MIPS32 architecture is available since several
991           years so chances are you even have a MIPS32 Release 2 processor
992           in which case you should choose CPU_MIPS32_R2 instead for better
993           performance.
994
995 config CPU_MIPS32_R2
996         bool "MIPS32 Release 2"
997         select CPU_HAS_PREFETCH
998         select CPU_SUPPORTS_32BIT_KERNEL
999         help
1000           Choose this option to build a kernel for release 2 or later of the
1001           MIPS32 architecture.  Most modern embedded systems with a 32-bit
1002           MIPS processor are based on a MIPS32 processor.  If you know the
1003           specific type of processor in your system, choose those that one
1004           otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1005
1006 config CPU_MIPS64_R1
1007         bool "MIPS64 Release 1"
1008         select CPU_HAS_PREFETCH
1009         select CPU_SUPPORTS_32BIT_KERNEL
1010         select CPU_SUPPORTS_64BIT_KERNEL
1011         help
1012           Choose this option to build a kernel for release 1 or later of the
1013           MIPS64 architecture.  Many modern embedded systems with a 64-bit
1014           MIPS processor are based on a MIPS64 processor.  If you know the
1015           specific type of processor in your system, choose those that one
1016           otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1017           Release 2 of the MIPS64 architecture is available since several
1018           years so chances are you even have a MIPS64 Release 2 processor
1019           in which case you should choose CPU_MIPS64_R2 instead for better
1020           performance.
1021
1022 config CPU_MIPS64_R2
1023         bool "MIPS64 Release 2"
1024         select CPU_HAS_PREFETCH
1025         select CPU_SUPPORTS_32BIT_KERNEL
1026         select CPU_SUPPORTS_64BIT_KERNEL
1027         help
1028           Choose this option to build a kernel for release 2 or later of the
1029           MIPS64 architecture.  Many modern embedded systems with a 64-bit
1030           MIPS processor are based on a MIPS64 processor.  If you know the
1031           specific type of processor in your system, choose those that one
1032           otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1033
1034 config CPU_R3000
1035         bool "R3000"
1036         select CPU_SUPPORTS_32BIT_KERNEL
1037         select CPU_SUPPORTS_HIGHMEM
1038         help
1039           Please make sure to pick the right CPU type. Linux/MIPS is not
1040           designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1041           *not* work on R4000 machines and vice versa.  However, since most
1042           of the supported machines have an R4000 (or similar) CPU, R4x00
1043           might be a safe bet.  If the resulting kernel does not work,
1044           try to recompile with R3000.
1045
1046 config CPU_TX39XX
1047         bool "R39XX"
1048         select CPU_SUPPORTS_32BIT_KERNEL
1049
1050 config CPU_VR41XX
1051         bool "R41xx"
1052         select CPU_SUPPORTS_32BIT_KERNEL
1053         select CPU_SUPPORTS_64BIT_KERNEL
1054         help
1055           The options selects support for the NEC VR4100 series of processors.
1056           Only choose this option if you have one of these processors as a
1057           kernel built with this option will not run on any other type of
1058           processor or vice versa.
1059
1060 config CPU_R4300
1061         bool "R4300"
1062         select CPU_SUPPORTS_32BIT_KERNEL
1063         select CPU_SUPPORTS_64BIT_KERNEL
1064         help
1065           MIPS Technologies R4300-series processors.
1066
1067 config CPU_R4X00
1068         bool "R4x00"
1069         select CPU_SUPPORTS_32BIT_KERNEL
1070         select CPU_SUPPORTS_64BIT_KERNEL
1071         help
1072           MIPS Technologies R4000-series processors other than 4300, including
1073           the R4000, R4400, R4600, and 4700.
1074
1075 config CPU_TX49XX
1076         bool "R49XX"
1077         select CPU_SUPPORTS_32BIT_KERNEL
1078         select CPU_SUPPORTS_64BIT_KERNEL
1079
1080 config CPU_R5000
1081         bool "R5000"
1082         select CPU_SUPPORTS_32BIT_KERNEL
1083         select CPU_SUPPORTS_64BIT_KERNEL
1084         help
1085           MIPS Technologies R5000-series processors other than the Nevada.
1086
1087 config CPU_R5432
1088         bool "R5432"
1089         select CPU_SUPPORTS_32BIT_KERNEL
1090         select CPU_SUPPORTS_64BIT_KERNEL
1091
1092 config CPU_R6000
1093         bool "R6000"
1094         depends on EXPERIMENTAL
1095         select CPU_SUPPORTS_32BIT_KERNEL
1096         help
1097           MIPS Technologies R6000 and R6000A series processors.  Note these
1098           processors are extremly rare and the support for them is incomplete.
1099
1100 config CPU_NEVADA
1101         bool "RM52xx"
1102         select CPU_SUPPORTS_32BIT_KERNEL
1103         select CPU_SUPPORTS_64BIT_KERNEL
1104         help
1105           QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1106
1107 config CPU_R8000
1108         bool "R8000"
1109         depends on EXPERIMENTAL
1110         select CPU_HAS_PREFETCH
1111         select CPU_SUPPORTS_64BIT_KERNEL
1112         help
1113           MIPS Technologies R8000 processors.  Note these processors are
1114           uncommon and the support for them is incomplete.
1115
1116 config CPU_R10000
1117         bool "R10000"
1118         select CPU_HAS_PREFETCH
1119         select CPU_SUPPORTS_32BIT_KERNEL
1120         select CPU_SUPPORTS_64BIT_KERNEL
1121         select CPU_SUPPORTS_HIGHMEM
1122         help
1123           MIPS Technologies R10000-series processors.
1124
1125 config CPU_RM7000
1126         bool "RM7000"
1127         select CPU_HAS_PREFETCH
1128         select CPU_SUPPORTS_32BIT_KERNEL
1129         select CPU_SUPPORTS_64BIT_KERNEL
1130         select CPU_SUPPORTS_HIGHMEM
1131
1132 config CPU_RM9000
1133         bool "RM9000"
1134         select CPU_HAS_PREFETCH
1135         select CPU_SUPPORTS_32BIT_KERNEL
1136         select CPU_SUPPORTS_64BIT_KERNEL
1137         select CPU_SUPPORTS_HIGHMEM
1138
1139 config CPU_SB1
1140         bool "SB1"
1141         select CPU_SUPPORTS_32BIT_KERNEL
1142         select CPU_SUPPORTS_64BIT_KERNEL
1143         select CPU_SUPPORTS_HIGHMEM
1144
1145 endchoice
1146
1147 endmenu
1148
1149 #
1150 # These two indicate any levelof the MIPS32 and MIPS64 architecture
1151 #
1152 config CPU_MIPS32
1153         bool
1154         default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1155
1156 config CPU_MIPS64
1157         bool
1158         default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1159
1160 #
1161 # These two indicate the revision of the architecture, either 32 bot 64 bit.
1162 #
1163 config CPU_MIPSR1
1164         bool
1165         default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1166
1167 config CPU_MIPSR2
1168         bool
1169         default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
1170
1171 config SYS_SUPPORTS_32BIT_KERNEL
1172         bool
1173 config SYS_SUPPORTS_64BIT_KERNEL
1174         bool
1175 config CPU_SUPPORTS_32BIT_KERNEL
1176         bool
1177 config CPU_SUPPORTS_64BIT_KERNEL
1178         bool
1179
1180 menu "Kernel type"
1181
1182 choice
1183
1184         prompt "Kernel code model"
1185         help
1186           You should only select this option if you have a workload that
1187           actually benefits from 64-bit processing or if your machine has
1188           large memory.  You will only be presented a single option in this
1189           menu if your system does not support both 32-bit and 64-bit kernels.
1190
1191 config 32BIT
1192         bool "32-bit kernel"
1193         depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1194         select TRAD_SIGNALS
1195         help
1196           Select this option if you want to build a 32-bit kernel.
1197 config 64BIT
1198         bool "64-bit kernel"
1199         depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1200         help
1201           Select this option if you want to build a 64-bit kernel.
1202
1203 endchoice
1204
1205 choice
1206         prompt "Kernel page size"
1207         default PAGE_SIZE_4KB
1208
1209 config PAGE_SIZE_4KB
1210         bool "4kB"
1211         help
1212          This option select the standard 4kB Linux page size.  On some
1213          R3000-family processors this is the only available page size.  Using
1214          4kB page size will minimize memory consumption and is therefore
1215          recommended for low memory systems.
1216
1217 config PAGE_SIZE_8KB
1218         bool "8kB"
1219         depends on EXPERIMENTAL && CPU_R8000
1220         help
1221           Using 8kB page size will result in higher performance kernel at
1222           the price of higher memory consumption.  This option is available
1223           only on the R8000 processor.  Not that at the time of this writing
1224           this option is still high experimental; there are also issues with
1225           compatibility of user applications.
1226
1227 config PAGE_SIZE_16KB
1228         bool "16kB"
1229         depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1230         help
1231           Using 16kB page size will result in higher performance kernel at
1232           the price of higher memory consumption.  This option is available on
1233           all non-R3000 family processor.  Not that at the time of this
1234           writing this option is still high experimental; there are also
1235           issues with compatibility of user applications.
1236
1237 config PAGE_SIZE_64KB
1238         bool "64kB"
1239         depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1240         help
1241           Using 64kB page size will result in higher performance kernel at
1242           the price of higher memory consumption.  This option is available on
1243           all non-R3000 family processor.  Not that at the time of this
1244           writing this option is still high experimental; there are also
1245           issues with compatibility of user applications.
1246
1247 endchoice
1248
1249 config BOARD_SCACHE
1250         bool
1251
1252 config IP22_CPU_SCACHE
1253         bool
1254         select BOARD_SCACHE
1255
1256 config R5000_CPU_SCACHE
1257         bool
1258         select BOARD_SCACHE
1259
1260 config RM7000_CPU_SCACHE
1261         bool
1262         select BOARD_SCACHE
1263
1264 config SIBYTE_DMA_PAGEOPS
1265         bool "Use DMA to clear/copy pages"
1266         depends on CPU_SB1
1267         help
1268           Instead of using the CPU to zero and copy pages, use a Data Mover
1269           channel.  These DMA channels are otherwise unused by the standard
1270           SiByte Linux port.  Seems to give a small performance benefit.
1271
1272 config CPU_HAS_PREFETCH
1273         bool
1274
1275 config MIPS_MT
1276         bool "Enable MIPS MT"
1277
1278 choice
1279         prompt "MIPS MT options"
1280         depends on MIPS_MT
1281
1282 config MIPS_MT_SMP
1283         bool "Use 1 TC on each available VPE for SMP"
1284         select SMP
1285
1286 config MIPS_VPE_LOADER
1287         bool "VPE loader support."
1288         depends on MIPS_MT
1289         help
1290           Includes a loader for loading an elf relocatable object
1291           onto another VPE and running it.
1292
1293 endchoice
1294
1295 config MIPS_VPE_LOADER_TOM
1296         bool "Load VPE program into memory hidden from linux"
1297         depends on MIPS_VPE_LOADER
1298         default y
1299         help
1300           The loader can use memory that is present but has been hidden from
1301           Linux using the kernel command line option "mem=xxMB". It's up to
1302           you to ensure the amount you put in the option and the space your
1303           program requires is less or equal to the amount physically present.
1304
1305 # this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1306 config MIPS_VPE_APSP_API
1307         bool "Enable support for AP/SP API (RTLX)"
1308         depends on MIPS_VPE_LOADER
1309         help
1310
1311 config SB1_PASS_1_WORKAROUNDS
1312         bool
1313         depends on CPU_SB1_PASS_1
1314         default y
1315
1316 config SB1_PASS_2_WORKAROUNDS
1317         bool
1318         depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1319         default y
1320
1321 config SB1_PASS_2_1_WORKAROUNDS
1322         bool
1323         depends on CPU_SB1 && CPU_SB1_PASS_2
1324         default y
1325
1326 config 64BIT_PHYS_ADDR
1327         bool "Support for 64-bit physical address space"
1328         depends on (CPU_R4X00 || CPU_R5000 || CPU_RM7000 || CPU_RM9000 || CPU_R10000 || CPU_SB1 || CPU_MIPS32_R1 || CPU_MIPS64_R1) && 32BIT
1329
1330 config CPU_ADVANCED
1331         bool "Override CPU Options"
1332         depends on 32BIT
1333         help
1334           Saying yes here allows you to select support for various features
1335           your CPU may or may not have.  Most people should say N here.
1336
1337 config CPU_HAS_LLSC
1338         bool "ll/sc Instructions available" if CPU_ADVANCED
1339         default y if !CPU_ADVANCED && !CPU_R3000 && !CPU_VR41XX && !CPU_TX39XX
1340         help
1341           MIPS R4000 series and later provide the Load Linked (ll)
1342           and Store Conditional (sc) instructions. More information is
1343           available at <http://www.go-ecs.com/mips/miptek1.htm>.
1344
1345           Say Y here if your CPU has the ll and sc instructions.  Say Y here
1346           for better performance, N if you don't know.  You must say Y here
1347           for multiprocessor machines.
1348
1349 config CPU_HAS_LLDSCD
1350         bool "lld/scd Instructions available" if CPU_ADVANCED
1351         default y if !CPU_ADVANCED && !CPU_R3000 && !CPU_VR41XX && !CPU_TX39XX && !CPU_MIPS32_R1
1352         help
1353           Say Y here if your CPU has the lld and scd instructions, the 64-bit
1354           equivalents of ll and sc.  Say Y here for better performance, N if
1355           you don't know.  You must say Y here for multiprocessor machines.
1356
1357 config CPU_HAS_WB
1358         bool "Writeback Buffer available" if CPU_ADVANCED
1359         default y if !CPU_ADVANCED && CPU_R3000 && MACH_DECSTATION
1360         help
1361           Say N here for slightly better performance.  You must say Y here for
1362           machines which require flushing of write buffers in software.  Saying
1363           Y is the safe option; N may result in kernel malfunction and crashes.
1364
1365 menu "MIPSR2 Interrupt handling"
1366         depends on CPU_MIPSR2 && CPU_ADVANCED
1367
1368 config CPU_MIPSR2_IRQ_VI
1369         bool "Vectored interrupt mode"
1370         help
1371            Vectored interrupt mode allowing faster dispatching of interrupts.
1372            The board support code needs to be written to take advantage of this
1373            mode.  Compatibility code is included to allow the kernel to run on
1374            a CPU that does not support vectored interrupts.  It's safe to
1375            say Y here.
1376
1377 config CPU_MIPSR2_IRQ_EI
1378         bool "External interrupt controller mode"
1379         help
1380            Extended interrupt mode takes advantage of an external interrupt
1381            controller to allow fast dispatching from many possible interrupt
1382            sources. Say N unless you know that external interrupt support is
1383            required.
1384
1385 config CPU_MIPSR2_SRS
1386         bool "Make shadow set registers available for interrupt handlers"
1387         depends on CPU_MIPSR2_IRQ_VI || CPU_MIPSR2_IRQ_EI
1388         help
1389            Allow the kernel to use shadow register sets for fast interrupts.
1390            Interrupt handlers must be specially written to use shadow sets.
1391            Say N unless you know that shadow register set upport is needed.
1392 endmenu
1393
1394 config CPU_HAS_SYNC
1395         bool
1396         depends on !CPU_R3000
1397         default y
1398
1399 #
1400 # Use the generic interrupt handling code in kernel/irq/:
1401 #
1402 config GENERIC_HARDIRQS
1403         bool
1404         default y
1405
1406 config GENERIC_IRQ_PROBE
1407         bool
1408         default y
1409
1410 #
1411 # - Highmem only makes sense for the 32-bit kernel.
1412 # - The current highmem code will only work properly on physically indexed
1413 #   caches such as R3000, SB1, R7000 or those that look like they're virtually
1414 #   indexed such as R4000/R4400 SC and MC versions or R10000.  So for the
1415 #   moment we protect the user and offer the highmem option only on machines
1416 #   where it's known to be safe.  This will not offer highmem on a few systems
1417 #   such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1418 #   indexed CPUs but we're playing safe.
1419 # - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1420 #   know they might have memory configurations that could make use of highmem
1421 #   support.
1422 #
1423 config HIGHMEM
1424         bool "High Memory Support"
1425         depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1426
1427 config CPU_SUPPORTS_HIGHMEM
1428         bool
1429
1430 config SYS_SUPPORTS_HIGHMEM
1431         bool
1432
1433 config ARCH_FLATMEM_ENABLE
1434         def_bool y
1435         depends on !NUMA
1436
1437 source "mm/Kconfig"
1438
1439 config SMP
1440         bool "Multi-Processing support"
1441         depends on CPU_RM9000 || ((SIBYTE_BCM1x80 || SIBYTE_BCM1x55 || SIBYTE_SB1250) && !SIBYTE_STANDALONE) || SGI_IP27 || MIPS_MT_SMP
1442         ---help---
1443           This enables support for systems with more than one CPU. If you have
1444           a system with only one CPU, like most personal computers, say N. If
1445           you have a system with more than one CPU, say Y.
1446
1447           If you say N here, the kernel will run on single and multiprocessor
1448           machines, but will use only one CPU of a multiprocessor machine. If
1449           you say Y here, the kernel will run on many, but not all,
1450           singleprocessor machines. On a singleprocessor machine, the kernel
1451           will run faster if you say N here.
1452
1453           People using multiprocessor machines who say Y here should also say
1454           Y to "Enhanced Real Time Clock Support", below.
1455
1456           See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1457           available at <http://www.tldp.org/docs.html#howto>.
1458
1459           If you don't know what to do here, say N.
1460
1461 config NR_CPUS
1462         int "Maximum number of CPUs (2-64)"
1463         range 2 64
1464         depends on SMP
1465         default "64" if SGI_IP27
1466         default "2"
1467         help
1468           This allows you to specify the maximum number of CPUs which this
1469           kernel will support.  The maximum supported value is 32 for 32-bit
1470           kernel and 64 for 64-bit kernels; the minimum value which makes
1471           sense is 2.
1472
1473           This is purely to save memory - each supported CPU adds
1474           approximately eight kilobytes to the kernel image.
1475
1476 source "kernel/Kconfig.preempt"
1477
1478 config RTC_DS1742
1479         bool "DS1742 BRAM/RTC support"
1480         depends on TOSHIBA_JMR3927 || TOSHIBA_RBTX4927
1481
1482 config MIPS_INSANE_LARGE
1483         bool "Support for large 64-bit configurations"
1484         depends on CPU_R10000 && 64BIT
1485         help
1486           MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1487           previous 64-bit processors which only supported 40 bit / 1TB. If you
1488           need processes of more than 1TB virtual address space, say Y here.
1489           This will result in additional memory usage, so it is not
1490           recommended for normal users.
1491
1492 endmenu
1493
1494 config RWSEM_GENERIC_SPINLOCK
1495         bool
1496         default y
1497
1498 menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1499
1500 config HW_HAS_EISA
1501         bool
1502 config HW_HAS_PCI
1503         bool
1504
1505 config PCI
1506         bool "Support for PCI controller"
1507         depends on HW_HAS_PCI
1508         help
1509           Find out whether you have a PCI motherboard. PCI is the name of a
1510           bus system, i.e. the way the CPU talks to the other stuff inside
1511           your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1512           say Y, otherwise N.
1513
1514           The PCI-HOWTO, available from
1515           <http://www.tldp.org/docs.html#howto>, contains valuable
1516           information about which PCI hardware does work under Linux and which
1517           doesn't.
1518
1519 config PCI_DOMAINS
1520         bool
1521         depends on PCI
1522
1523 source "drivers/pci/Kconfig"
1524
1525 #
1526 # ISA support is now enabled via select.  Too many systems still have the one
1527 # or other ISA chip on the board that users don't know about so don't expect
1528 # users to choose the right thing ...
1529 #
1530 config ISA
1531         bool
1532
1533 config EISA
1534         bool "EISA support"
1535         depends on HW_HAS_EISA
1536         select ISA
1537         ---help---
1538           The Extended Industry Standard Architecture (EISA) bus was
1539           developed as an open alternative to the IBM MicroChannel bus.
1540
1541           The EISA bus provided some of the features of the IBM MicroChannel
1542           bus while maintaining backward compatibility with cards made for
1543           the older ISA bus.  The EISA bus saw limited use between 1988 and
1544           1995 when it was made obsolete by the PCI bus.
1545
1546           Say Y here if you are building a kernel for an EISA-based machine.
1547
1548           Otherwise, say N.
1549
1550 source "drivers/eisa/Kconfig"
1551
1552 config TC
1553         bool "TURBOchannel support"
1554         depends on MACH_DECSTATION
1555         help
1556           TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1557           processors.  Documentation on writing device drivers for TurboChannel
1558           is available at:
1559           <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1560
1561 #config ACCESSBUS
1562 #       bool "Access.Bus support"
1563 #       depends on TC
1564
1565 config MMU
1566         bool
1567         default y
1568
1569 source "drivers/pcmcia/Kconfig"
1570
1571 source "drivers/pci/hotplug/Kconfig"
1572
1573 endmenu
1574
1575 menu "Executable file formats"
1576
1577 source "fs/Kconfig.binfmt"
1578
1579 config TRAD_SIGNALS
1580         bool
1581
1582 config BUILD_ELF64
1583         bool "Use 64-bit ELF format for building"
1584         depends on 64BIT
1585         help
1586           A 64-bit kernel is usually built using the 64-bit ELF binary object
1587           format as it's one that allows arbitrary 64-bit constructs.  For
1588           kernels that are loaded within the KSEG compatibility segments the
1589           32-bit ELF format can optionally be used resulting in a somewhat
1590           smaller binary, but this option is not explicitly supported by the
1591           toolchain and since binutils 2.14 it does not even work at all.
1592
1593           Say Y to use the 64-bit format or N to use the 32-bit one.
1594
1595           If unsure say Y.
1596
1597 config BINFMT_IRIX
1598         bool "Include IRIX binary compatibility"
1599         depends on CPU_BIG_ENDIAN && 32BIT && BROKEN
1600
1601 config MIPS32_COMPAT
1602         bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
1603         depends on 64BIT
1604         help
1605           Select this option if you want Linux/MIPS 32-bit binary
1606           compatibility. Since all software available for Linux/MIPS is
1607           currently 32-bit you should say Y here.
1608
1609 config COMPAT
1610         bool
1611         depends on MIPS32_COMPAT
1612         default y
1613
1614 config MIPS32_O32
1615         bool "Kernel support for o32 binaries"
1616         depends on MIPS32_COMPAT
1617         help
1618           Select this option if you want to run o32 binaries.  These are pure
1619           32-bit binaries as used by the 32-bit Linux/MIPS port.  Most of
1620           existing binaries are in this format.
1621
1622           If unsure, say Y.
1623
1624 config MIPS32_N32
1625         bool "Kernel support for n32 binaries"
1626         depends on MIPS32_COMPAT
1627         help
1628           Select this option if you want to run n32 binaries.  These are
1629           64-bit binaries using 32-bit quantities for addressing and certain
1630           data that would normally be 64-bit.  They are used in special
1631           cases.
1632
1633           If unsure, say N.
1634
1635 config BINFMT_ELF32
1636         bool
1637         default y if MIPS32_O32 || MIPS32_N32
1638
1639 config SECCOMP
1640         bool "Enable seccomp to safely compute untrusted bytecode"
1641         depends on PROC_FS && BROKEN
1642         default y
1643         help
1644           This kernel feature is useful for number crunching applications
1645           that may need to compute untrusted bytecode during their
1646           execution. By using pipes or other transports made available to
1647           the process as file descriptors supporting the read/write
1648           syscalls, it's possible to isolate those applications in
1649           their own address space using seccomp. Once seccomp is
1650           enabled via /proc/<pid>/seccomp, it cannot be disabled
1651           and the task is only allowed to execute a few safe syscalls
1652           defined by each seccomp mode.
1653
1654           If unsure, say Y. Only embedded should say N here.
1655
1656 config PM
1657         bool "Power Management support (EXPERIMENTAL)"
1658         depends on EXPERIMENTAL && SOC_AU1X00
1659
1660 endmenu
1661
1662 source "net/Kconfig"
1663
1664 source "drivers/Kconfig"
1665
1666 source "fs/Kconfig"
1667
1668 source "arch/mips/oprofile/Kconfig"
1669
1670 source "arch/mips/Kconfig.debug"
1671
1672 source "security/Kconfig"
1673
1674 source "crypto/Kconfig"
1675
1676 source "lib/Kconfig"