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