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