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