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