4 # Horrible source of confusion. Die, die, die ...
7 mainmenu "Linux/MIPS Kernel Configuration"
9 menu "Machine selection"
19 bool "Alchemy processor based machines"
22 bool "Basler eXcite smart camera"
29 select SYS_HAS_CPU_RM9000
30 select SYS_SUPPORTS_32BIT_KERNEL
31 select SYS_SUPPORTS_BIG_ENDIAN
32 select SYS_SUPPORTS_KGDB
34 The eXcite is a smart camera platform manufactured by
35 Basler Vision Technologies AG.
37 config BASLER_EXCITE_PROTOTYPE
38 bool "Support for pre-release units"
39 depends on BASLER_EXCITE
42 Pre-series (prototype) units are different from later ones in
43 some ways. Select this option if you have one of these. Please
44 note that a kernel built with this option selected will not be
45 able to run on normal units.
48 bool "BCM47XX based boards"
49 select DMA_NONCOHERENT
52 select SYS_HAS_CPU_MIPS32_R1
53 select SYS_SUPPORTS_32BIT_KERNEL
54 select SYS_SUPPORTS_LITTLE_ENDIAN
56 select SSB_DRIVER_MIPS
59 Support for BCM47XX based boards
63 select DMA_NONCOHERENT
68 select PCI_GT64XXX_PCI0
69 select SYS_HAS_CPU_NEVADA
70 select SYS_HAS_EARLY_PRINTK
71 select SYS_SUPPORTS_32BIT_KERNEL
72 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
73 select SYS_SUPPORTS_LITTLE_ENDIAN
74 select GENERIC_HARDIRQS_NO__DO_IRQ
76 config MACH_DECSTATION
79 select DMA_NONCOHERENT
82 select SYS_HAS_CPU_R3000
83 select SYS_HAS_CPU_R4X00
84 select SYS_SUPPORTS_32BIT_KERNEL
85 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
86 select SYS_SUPPORTS_LITTLE_ENDIAN
87 select SYS_SUPPORTS_128HZ
88 select SYS_SUPPORTS_256HZ
89 select SYS_SUPPORTS_1024HZ
91 This enables support for DEC's MIPS based workstations. For details
92 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
93 DECstation porting pages on <http://decstation.unix-ag.org/>.
95 If you have one of the following DECstation Models you definitely
96 want to choose R4xx0 for the CPU Type:
103 otherwise choose R3000.
106 bool "Jazz family of machines"
109 select ARCH_MAY_HAVE_PC_FDC
110 select GENERIC_ISA_DMA
115 select SYS_HAS_CPU_R4X00
116 select SYS_SUPPORTS_32BIT_KERNEL
117 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
118 select SYS_SUPPORTS_100HZ
119 select GENERIC_HARDIRQS_NO__DO_IRQ
121 This a family of machines based on the MIPS R4030 chipset which was
122 used by several vendors to build RISC/os and Windows NT workstations.
123 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
124 Olivetti M700-10 workstations.
127 bool "LASAT Networks platforms"
128 select DMA_NONCOHERENT
129 select SYS_HAS_EARLY_PRINTK
131 select PCI_GT64XXX_PCI0
133 select R5000_CPU_SCACHE
134 select SYS_HAS_CPU_R5000
135 select SYS_SUPPORTS_32BIT_KERNEL
136 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
137 select SYS_SUPPORTS_LITTLE_ENDIAN
138 select GENERIC_HARDIRQS_NO__DO_IRQ
141 bool "Lemote Fulong mini-PC"
142 select ARCH_SPARSEMEM_ENABLE
143 select SYS_HAS_CPU_LOONGSON2
144 select DMA_NONCOHERENT
147 select HAVE_STD_PC_SERIAL_PORT
152 select SYS_SUPPORTS_32BIT_KERNEL
153 select SYS_SUPPORTS_64BIT_KERNEL
154 select SYS_SUPPORTS_LITTLE_ENDIAN
155 select SYS_SUPPORTS_HIGHMEM
156 select SYS_HAS_EARLY_PRINTK
157 select GENERIC_HARDIRQS_NO__DO_IRQ
158 select GENERIC_ISA_DMA_SUPPORT_BROKEN
161 Lemote Fulong mini-PC board based on the Chinese Loongson-2E CPU and
165 bool "MIPS Atlas board"
167 select DMA_NONCOHERENT
168 select SYS_HAS_EARLY_PRINTK
171 select MIPS_BOARDS_GEN
173 select PCI_GT64XXX_PCI0
175 select RM7000_CPU_SCACHE
177 select SYS_HAS_CPU_MIPS32_R1
178 select SYS_HAS_CPU_MIPS32_R2
179 select SYS_HAS_CPU_MIPS64_R1
180 select SYS_HAS_CPU_NEVADA
181 select SYS_HAS_CPU_RM7000
182 select SYS_SUPPORTS_32BIT_KERNEL
183 select SYS_SUPPORTS_64BIT_KERNEL
184 select SYS_SUPPORTS_BIG_ENDIAN
185 select SYS_SUPPORTS_LITTLE_ENDIAN
186 select SYS_SUPPORTS_MULTITHREADING if EXPERIMENTAL
187 select SYS_SUPPORTS_SMARTMIPS
188 select GENERIC_HARDIRQS_NO__DO_IRQ
190 This enables support for the MIPS Technologies Atlas evaluation
194 bool "MIPS Malta board"
195 select ARCH_MAY_HAVE_PC_FDC
197 select DMA_NONCOHERENT
198 select GENERIC_ISA_DMA
202 select MIPS_BOARDS_GEN
204 select MIPS_CPU_SCACHE
205 select PCI_GT64XXX_PCI0
208 select SYS_HAS_CPU_MIPS32_R1
209 select SYS_HAS_CPU_MIPS32_R2
210 select SYS_HAS_CPU_MIPS64_R1
211 select SYS_HAS_CPU_NEVADA
212 select SYS_HAS_CPU_RM7000
213 select SYS_HAS_EARLY_PRINTK
214 select SYS_SUPPORTS_32BIT_KERNEL
215 select SYS_SUPPORTS_64BIT_KERNEL
216 select SYS_SUPPORTS_BIG_ENDIAN
217 select SYS_SUPPORTS_LITTLE_ENDIAN
218 select SYS_SUPPORTS_MULTITHREADING
219 select SYS_SUPPORTS_SMARTMIPS
221 This enables support for the MIPS Technologies Malta evaluation
225 bool "MIPS SEAD board"
227 select DMA_NONCOHERENT
228 select SYS_HAS_EARLY_PRINTK
229 select MIPS_BOARDS_GEN
230 select SYS_HAS_CPU_MIPS32_R1
231 select SYS_HAS_CPU_MIPS32_R2
232 select SYS_HAS_CPU_MIPS64_R1
233 select SYS_SUPPORTS_32BIT_KERNEL
234 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
235 select SYS_SUPPORTS_BIG_ENDIAN
236 select SYS_SUPPORTS_LITTLE_ENDIAN
237 select SYS_SUPPORTS_SMARTMIPS
239 This enables support for the MIPS Technologies SEAD evaluation
243 bool 'MIPS simulator (MIPSsim)'
244 select DMA_NONCOHERENT
245 select SYS_HAS_EARLY_PRINTK
248 select SYS_HAS_CPU_MIPS32_R1
249 select SYS_HAS_CPU_MIPS32_R2
250 select SYS_HAS_EARLY_PRINTK
251 select SYS_SUPPORTS_32BIT_KERNEL
252 select SYS_SUPPORTS_BIG_ENDIAN
253 select SYS_SUPPORTS_MULTITHREADING
254 select SYS_SUPPORTS_LITTLE_ENDIAN
256 This option enables support for MIPS Technologies MIPSsim software
260 bool "NEC EMMA2RH Mark-eins"
261 select DMA_NONCOHERENT
265 select SYS_SUPPORTS_32BIT_KERNEL
266 select SYS_SUPPORTS_BIG_ENDIAN
267 select SYS_SUPPORTS_LITTLE_ENDIAN
268 select SYS_HAS_CPU_R5000
270 This enables support for the R5432-based NEC Mark-eins
271 boards with R5500 CPU.
274 bool "NEC VR4100 series based machines"
275 select SYS_HAS_CPU_VR41XX
276 select GENERIC_HARDIRQS_NO__DO_IRQ
279 bool "Philips PNX8550 based JBS board"
281 select SYS_SUPPORTS_LITTLE_ENDIAN
283 config PNX8550_STB810
284 bool "Philips PNX8550 based STB810 board"
286 select SYS_SUPPORTS_LITTLE_ENDIAN
289 bool "PMC-Sierra MSP chipsets"
290 depends on EXPERIMENTAL
291 select DMA_NONCOHERENT
293 select NO_EXCEPT_FILL
295 select SYS_HAS_CPU_MIPS32_R1
296 select SYS_HAS_CPU_MIPS32_R2
297 select SYS_SUPPORTS_32BIT_KERNEL
298 select SYS_SUPPORTS_BIG_ENDIAN
299 select SYS_SUPPORTS_KGDB
302 select SERIAL_8250_CONSOLE
304 This adds support for the PMC-Sierra family of Multi-Service
305 Processor System-On-A-Chips. These parts include a number
306 of integrated peripherals, interfaces and DSPs in addition to
307 a variety of MIPS cores.
310 bool "PMC-Sierra Yosemite eval board"
317 select SYS_HAS_CPU_RM9000
318 select SYS_HAS_EARLY_PRINTK
319 select SYS_SUPPORTS_32BIT_KERNEL
320 select SYS_SUPPORTS_64BIT_KERNEL
321 select SYS_SUPPORTS_BIG_ENDIAN
322 select SYS_SUPPORTS_HIGHMEM
323 select SYS_SUPPORTS_KGDB
324 select SYS_SUPPORTS_SMP
326 Yosemite is an evaluation board for the RM9000x2 processor
327 manufactured by PMC-Sierra.
332 select GENERIC_ISA_DMA
333 select HAVE_STD_PC_SERIAL_PORT
338 select SYS_HAS_CPU_MIPS32_R1
339 select SYS_SUPPORTS_32BIT_KERNEL
340 select SYS_SUPPORTS_BIG_ENDIAN
341 select SYS_SUPPORTS_LITTLE_ENDIAN
342 select ARCH_SPARSEMEM_ENABLE
343 select GENERIC_HARDIRQS_NO__DO_IRQ
344 select NR_CPUS_DEFAULT_1
345 select SYS_SUPPORTS_SMP
347 Qemu is a software emulator which among other architectures also
348 can simulate a MIPS32 4Kc system. This patch adds support for the
349 system architecture that currently is being simulated by Qemu. It
350 will eventually be removed again when Qemu has the capability to
351 simulate actual MIPS hardware platforms. More information on Qemu
352 can be found at http://www.linux-mips.org/wiki/Qemu.
355 bool "SGI IP22 (Indy/Indigo2)"
359 select DMA_NONCOHERENT
361 select IP22_CPU_SCACHE
363 select GENERIC_ISA_DMA_SUPPORT_BROKEN
365 select SYS_HAS_CPU_R4X00
366 select SYS_HAS_CPU_R5000
367 select SYS_HAS_EARLY_PRINTK
368 select SYS_SUPPORTS_32BIT_KERNEL
369 select SYS_SUPPORTS_64BIT_KERNEL
370 select SYS_SUPPORTS_BIG_ENDIAN
372 This are the SGI Indy, Challenge S and Indigo2, as well as certain
373 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
374 that runs on these, say Y here.
377 bool "SGI IP27 (Origin200/2000)"
382 select SYS_HAS_EARLY_PRINTK
384 select NR_CPUS_DEFAULT_64
385 select SYS_HAS_CPU_R10000
386 select SYS_SUPPORTS_64BIT_KERNEL
387 select SYS_SUPPORTS_BIG_ENDIAN
388 select SYS_SUPPORTS_KGDB
389 select SYS_SUPPORTS_NUMA
390 select SYS_SUPPORTS_SMP
391 select GENERIC_HARDIRQS_NO__DO_IRQ
393 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
394 workstations. To compile a Linux kernel that runs on these, say Y
402 select DMA_NONCOHERENT
404 select R5000_CPU_SCACHE
405 select RM7000_CPU_SCACHE
406 select SYS_HAS_CPU_R5000
407 select SYS_HAS_CPU_R10000 if BROKEN
408 select SYS_HAS_CPU_RM7000
409 select SYS_HAS_CPU_NEVADA
410 select SYS_SUPPORTS_64BIT_KERNEL
411 select SYS_SUPPORTS_BIG_ENDIAN
413 If you want this kernel to run on SGI O2 workstation, say Y here.
416 bool "Sibyte BCM91120C-CRhine"
417 depends on EXPERIMENTAL
420 select SIBYTE_BCM1120
422 select SYS_HAS_CPU_SB1
423 select SYS_SUPPORTS_BIG_ENDIAN
424 select SYS_SUPPORTS_LITTLE_ENDIAN
427 bool "Sibyte BCM91120x-Carmel"
428 depends on EXPERIMENTAL
431 select SIBYTE_BCM1120
433 select SYS_HAS_CPU_SB1
434 select SYS_SUPPORTS_BIG_ENDIAN
435 select SYS_SUPPORTS_LITTLE_ENDIAN
438 bool "Sibyte BCM91125C-CRhone"
439 depends on EXPERIMENTAL
442 select SIBYTE_BCM1125
444 select SYS_HAS_CPU_SB1
445 select SYS_SUPPORTS_BIG_ENDIAN
446 select SYS_SUPPORTS_HIGHMEM
447 select SYS_SUPPORTS_LITTLE_ENDIAN
450 bool "Sibyte BCM91125E-Rhone"
451 depends on EXPERIMENTAL
454 select SIBYTE_BCM1125H
456 select SYS_HAS_CPU_SB1
457 select SYS_SUPPORTS_BIG_ENDIAN
458 select SYS_SUPPORTS_LITTLE_ENDIAN
461 bool "Sibyte BCM91250A-SWARM"
464 select NR_CPUS_DEFAULT_2
467 select SYS_HAS_CPU_SB1
468 select SYS_SUPPORTS_BIG_ENDIAN
469 select SYS_SUPPORTS_HIGHMEM
470 select SYS_SUPPORTS_KGDB
471 select SYS_SUPPORTS_LITTLE_ENDIAN
473 config SIBYTE_LITTLESUR
474 bool "Sibyte BCM91250C2-LittleSur"
475 depends on EXPERIMENTAL
478 select NR_CPUS_DEFAULT_2
481 select SYS_HAS_CPU_SB1
482 select SYS_SUPPORTS_BIG_ENDIAN
483 select SYS_SUPPORTS_HIGHMEM
484 select SYS_SUPPORTS_LITTLE_ENDIAN
486 config SIBYTE_SENTOSA
487 bool "Sibyte BCM91250E-Sentosa"
488 depends on EXPERIMENTAL
491 select NR_CPUS_DEFAULT_2
494 select SYS_HAS_CPU_SB1
495 select SYS_SUPPORTS_BIG_ENDIAN
496 select SYS_SUPPORTS_LITTLE_ENDIAN
498 config SIBYTE_PTSWARM
499 bool "Sibyte BCM91250PT-PTSWARM"
500 depends on EXPERIMENTAL
503 select NR_CPUS_DEFAULT_2
506 select SYS_HAS_CPU_SB1
507 select SYS_SUPPORTS_BIG_ENDIAN
508 select SYS_SUPPORTS_HIGHMEM
509 select SYS_SUPPORTS_LITTLE_ENDIAN
512 bool "Sibyte BCM91480B-BigSur"
515 select NR_CPUS_DEFAULT_4
516 select SIBYTE_BCM1x80
518 select SYS_HAS_CPU_SB1
519 select SYS_SUPPORTS_BIG_ENDIAN
520 select SYS_SUPPORTS_LITTLE_ENDIAN
523 bool "SNI RM200/300/400"
524 select ARC if CPU_LITTLE_ENDIAN
525 select ARC32 if CPU_LITTLE_ENDIAN
526 select ARCH_MAY_HAVE_PC_FDC
528 select DMA_NONCOHERENT
529 select GENERIC_ISA_DMA
536 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
537 select SYS_HAS_CPU_R4X00
538 select SYS_HAS_CPU_R5000
539 select SYS_HAS_CPU_R10000
540 select R5000_CPU_SCACHE
541 select SYS_HAS_EARLY_PRINTK
542 select SYS_SUPPORTS_32BIT_KERNEL
543 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
544 select SYS_SUPPORTS_BIG_ENDIAN
545 select SYS_SUPPORTS_HIGHMEM
546 select SYS_SUPPORTS_LITTLE_ENDIAN
548 The SNI RM200/300/400 are MIPS-based machines manufactured by
549 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
550 Technology and now in turn merged with Fujitsu. Say Y here to
551 support this machine type.
553 config TOSHIBA_JMR3927
554 bool "Toshiba JMR-TX3927 board"
555 select DMA_NONCOHERENT
560 select SYS_HAS_CPU_TX39XX
561 select SYS_SUPPORTS_32BIT_KERNEL
562 select SYS_SUPPORTS_LITTLE_ENDIAN
563 select SYS_SUPPORTS_BIG_ENDIAN
564 select GENERIC_HARDIRQS_NO__DO_IRQ
566 config TOSHIBA_RBTX4927
567 bool "Toshiba RBTX49[23]7 board"
568 select DMA_NONCOHERENT
569 select HAS_TXX9_SERIAL
573 select I8259 if TOSHIBA_FPCIB0
575 select SYS_HAS_CPU_TX49XX
576 select SYS_SUPPORTS_32BIT_KERNEL
577 select SYS_SUPPORTS_64BIT_KERNEL
578 select SYS_SUPPORTS_LITTLE_ENDIAN
579 select SYS_SUPPORTS_BIG_ENDIAN
580 select SYS_SUPPORTS_KGDB
581 select GENERIC_HARDIRQS_NO__DO_IRQ
583 This Toshiba board is based on the TX4927 processor. Say Y here to
584 support this machine type
586 config TOSHIBA_RBTX4938
587 bool "Toshiba RBTX4938 board"
588 select DMA_NONCOHERENT
589 select HAS_TXX9_SERIAL
594 select SYS_HAS_CPU_TX49XX
595 select SYS_SUPPORTS_32BIT_KERNEL
596 select SYS_SUPPORTS_LITTLE_ENDIAN
597 select SYS_SUPPORTS_BIG_ENDIAN
598 select SYS_SUPPORTS_KGDB
599 select GENERIC_HARDIRQS_NO__DO_IRQ
602 This Toshiba board is based on the TX4938 processor. Say Y here to
603 support this machine type
606 bool "Wind River PPMC board"
609 select DMA_NONCOHERENT
611 select PCI_GT64XXX_PCI0
613 select SYS_HAS_CPU_MIPS32_R1
614 select SYS_HAS_CPU_MIPS32_R2
615 select SYS_HAS_CPU_MIPS64_R1
616 select SYS_HAS_CPU_NEVADA
617 select SYS_HAS_CPU_RM7000
618 select SYS_SUPPORTS_32BIT_KERNEL
619 select SYS_SUPPORTS_64BIT_KERNEL
620 select SYS_SUPPORTS_BIG_ENDIAN
621 select SYS_SUPPORTS_LITTLE_ENDIAN
623 This enables support for the Wind River MIPS32 4KC PPMC evaluation
624 board, which is based on GT64120 bridge chip.
628 source "arch/mips/au1000/Kconfig"
629 source "arch/mips/jazz/Kconfig"
630 source "arch/mips/lasat/Kconfig"
631 source "arch/mips/pmc-sierra/Kconfig"
632 source "arch/mips/sgi-ip27/Kconfig"
633 source "arch/mips/sibyte/Kconfig"
634 source "arch/mips/tx4927/Kconfig"
635 source "arch/mips/tx4938/Kconfig"
636 source "arch/mips/vr41xx/Kconfig"
640 config RWSEM_GENERIC_SPINLOCK
644 config RWSEM_XCHGADD_ALGORITHM
647 config ARCH_HAS_ILOG2_U32
651 config ARCH_HAS_ILOG2_U64
655 config GENERIC_FIND_NEXT_BIT
659 config GENERIC_HWEIGHT
663 config GENERIC_CALIBRATE_DELAY
671 config SCHED_NO_NO_OMIT_FRAME_POINTER
675 config GENERIC_HARDIRQS_NO__DO_IRQ
680 # Select some configuration options automatically based on user selections.
685 config ARCH_MAY_HAVE_PC_FDC
702 select DMA_NEED_PCI_MAP_STATE
704 config DMA_NONCOHERENT
706 select DMA_NEED_PCI_MAP_STATE
708 config DMA_NEED_PCI_MAP_STATE
712 bool "Early printk" if EMBEDDED && DEBUG_KERNEL
713 depends on SYS_HAS_EARLY_PRINTK
716 This option enables special console drivers which allow the kernel
717 to print messages very early in the bootup process.
719 This is useful for kernel debugging when your machine crashes very
720 early before the console code is initialized. For normal operation,
721 it is not recommended because it looks ugly on some machines and
722 doesn't cooperate with an X server. You should normally say N here,
723 unless you want to debug such a crash.
725 config SYS_HAS_EARLY_PRINTK
744 config MIPS_DISABLE_OBSOLETE_IDE
750 config GENERIC_ISA_DMA
752 select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
754 config GENERIC_ISA_DMA_SUPPORT_BROKEN
756 select GENERIC_ISA_DMA
762 # Endianess selection. Sufficiently obscure so many users don't know what to
763 # answer,so we try hard to limit the available choices. Also the use of a
764 # choice statement should be more obvious to the user.
767 prompt "Endianess selection"
769 Some MIPS machines can be configured for either little or big endian
770 byte order. These modes require different kernels and a different
771 Linux distribution. In general there is one preferred byteorder for a
772 particular system but some systems are just as commonly used in the
773 one or the other endianness.
775 config CPU_BIG_ENDIAN
777 depends on SYS_SUPPORTS_BIG_ENDIAN
779 config CPU_LITTLE_ENDIAN
781 depends on SYS_SUPPORTS_LITTLE_ENDIAN
786 config SYS_SUPPORTS_APM_EMULATION
789 config SYS_SUPPORTS_BIG_ENDIAN
792 config SYS_SUPPORTS_LITTLE_ENDIAN
816 config MIPS_BOARDS_GEN
819 config PCI_GT64XXX_PCI0
822 config NO_EXCEPT_FILL
827 select HAS_TXX9_SERIAL
839 select DMA_NONCOHERENT
841 select SYS_HAS_CPU_MIPS32_R1
842 select SYS_HAS_EARLY_PRINTK
843 select SYS_SUPPORTS_32BIT_KERNEL
844 select GENERIC_HARDIRQS_NO__DO_IRQ
845 select SYS_SUPPORTS_KGDB
865 config MIPS_L1_CACHE_SHIFT
867 default "4" if MACH_DECSTATION
868 default "7" if SGI_IP27 || SNI_RM
869 default "4" if PMC_MSP4200_EVAL
872 config HAVE_STD_PC_SERIAL_PORT
876 bool "ARC console support"
877 depends on SGI_IP22 || (SNI_RM && CPU_LITTLE_ENDIAN)
881 depends on MACH_JAZZ || SNI_RM || SGI_IP32
886 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP32
903 depends on SYS_HAS_CPU_LOONGSON2
904 select CPU_SUPPORTS_32BIT_KERNEL
905 select CPU_SUPPORTS_64BIT_KERNEL
906 select CPU_SUPPORTS_HIGHMEM
908 The Loongson 2E processor implements the MIPS III instruction set
909 with many extensions.
912 bool "MIPS32 Release 1"
913 depends on SYS_HAS_CPU_MIPS32_R1
915 select CPU_HAS_PREFETCH
916 select CPU_SUPPORTS_32BIT_KERNEL
917 select CPU_SUPPORTS_HIGHMEM
919 Choose this option to build a kernel for release 1 or later of the
920 MIPS32 architecture. Most modern embedded systems with a 32-bit
921 MIPS processor are based on a MIPS32 processor. If you know the
922 specific type of processor in your system, choose those that one
923 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
924 Release 2 of the MIPS32 architecture is available since several
925 years so chances are you even have a MIPS32 Release 2 processor
926 in which case you should choose CPU_MIPS32_R2 instead for better
930 bool "MIPS32 Release 2"
931 depends on SYS_HAS_CPU_MIPS32_R2
933 select CPU_HAS_PREFETCH
934 select CPU_SUPPORTS_32BIT_KERNEL
935 select CPU_SUPPORTS_HIGHMEM
937 Choose this option to build a kernel for release 2 or later of the
938 MIPS32 architecture. Most modern embedded systems with a 32-bit
939 MIPS processor are based on a MIPS32 processor. If you know the
940 specific type of processor in your system, choose those that one
941 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
944 bool "MIPS64 Release 1"
945 depends on SYS_HAS_CPU_MIPS64_R1
947 select CPU_HAS_PREFETCH
948 select CPU_SUPPORTS_32BIT_KERNEL
949 select CPU_SUPPORTS_64BIT_KERNEL
950 select CPU_SUPPORTS_HIGHMEM
952 Choose this option to build a kernel for release 1 or later of the
953 MIPS64 architecture. Many modern embedded systems with a 64-bit
954 MIPS processor are based on a MIPS64 processor. If you know the
955 specific type of processor in your system, choose those that one
956 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
957 Release 2 of the MIPS64 architecture is available since several
958 years so chances are you even have a MIPS64 Release 2 processor
959 in which case you should choose CPU_MIPS64_R2 instead for better
963 bool "MIPS64 Release 2"
964 depends on SYS_HAS_CPU_MIPS64_R2
966 select CPU_HAS_PREFETCH
967 select CPU_SUPPORTS_32BIT_KERNEL
968 select CPU_SUPPORTS_64BIT_KERNEL
969 select CPU_SUPPORTS_HIGHMEM
971 Choose this option to build a kernel for release 2 or later of the
972 MIPS64 architecture. Many modern embedded systems with a 64-bit
973 MIPS processor are based on a MIPS64 processor. If you know the
974 specific type of processor in your system, choose those that one
975 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
979 depends on SYS_HAS_CPU_R3000
981 select CPU_SUPPORTS_32BIT_KERNEL
982 select CPU_SUPPORTS_HIGHMEM
984 Please make sure to pick the right CPU type. Linux/MIPS is not
985 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
986 *not* work on R4000 machines and vice versa. However, since most
987 of the supported machines have an R4000 (or similar) CPU, R4x00
988 might be a safe bet. If the resulting kernel does not work,
989 try to recompile with R3000.
993 depends on SYS_HAS_CPU_TX39XX
994 select CPU_SUPPORTS_32BIT_KERNEL
998 depends on SYS_HAS_CPU_VR41XX
999 select CPU_SUPPORTS_32BIT_KERNEL
1000 select CPU_SUPPORTS_64BIT_KERNEL
1002 The options selects support for the NEC VR4100 series of processors.
1003 Only choose this option if you have one of these processors as a
1004 kernel built with this option will not run on any other type of
1005 processor or vice versa.
1009 depends on SYS_HAS_CPU_R4300
1011 select CPU_SUPPORTS_32BIT_KERNEL
1012 select CPU_SUPPORTS_64BIT_KERNEL
1014 MIPS Technologies R4300-series processors.
1018 depends on SYS_HAS_CPU_R4X00
1020 select CPU_SUPPORTS_32BIT_KERNEL
1021 select CPU_SUPPORTS_64BIT_KERNEL
1023 MIPS Technologies R4000-series processors other than 4300, including
1024 the R4000, R4400, R4600, and 4700.
1028 depends on SYS_HAS_CPU_TX49XX
1030 select CPU_HAS_PREFETCH
1031 select CPU_SUPPORTS_32BIT_KERNEL
1032 select CPU_SUPPORTS_64BIT_KERNEL
1036 depends on SYS_HAS_CPU_R5000
1038 select CPU_SUPPORTS_32BIT_KERNEL
1039 select CPU_SUPPORTS_64BIT_KERNEL
1041 MIPS Technologies R5000-series processors other than the Nevada.
1045 depends on SYS_HAS_CPU_R5432
1047 select CPU_SUPPORTS_32BIT_KERNEL
1048 select CPU_SUPPORTS_64BIT_KERNEL
1052 depends on EXPERIMENTAL
1054 depends on SYS_HAS_CPU_R6000
1055 select CPU_SUPPORTS_32BIT_KERNEL
1057 MIPS Technologies R6000 and R6000A series processors. Note these
1058 processors are extremely rare and the support for them is incomplete.
1062 depends on SYS_HAS_CPU_NEVADA
1064 select CPU_SUPPORTS_32BIT_KERNEL
1065 select CPU_SUPPORTS_64BIT_KERNEL
1067 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1071 depends on EXPERIMENTAL
1072 depends on SYS_HAS_CPU_R8000
1074 select CPU_HAS_PREFETCH
1075 select CPU_SUPPORTS_64BIT_KERNEL
1077 MIPS Technologies R8000 processors. Note these processors are
1078 uncommon and the support for them is incomplete.
1082 depends on SYS_HAS_CPU_R10000
1084 select CPU_HAS_PREFETCH
1085 select CPU_SUPPORTS_32BIT_KERNEL
1086 select CPU_SUPPORTS_64BIT_KERNEL
1087 select CPU_SUPPORTS_HIGHMEM
1089 MIPS Technologies R10000-series processors.
1093 depends on SYS_HAS_CPU_RM7000
1095 select CPU_HAS_PREFETCH
1096 select CPU_SUPPORTS_32BIT_KERNEL
1097 select CPU_SUPPORTS_64BIT_KERNEL
1098 select CPU_SUPPORTS_HIGHMEM
1102 depends on SYS_HAS_CPU_RM9000
1104 select CPU_HAS_PREFETCH
1105 select CPU_SUPPORTS_32BIT_KERNEL
1106 select CPU_SUPPORTS_64BIT_KERNEL
1107 select CPU_SUPPORTS_HIGHMEM
1108 select WEAK_ORDERING
1112 depends on SYS_HAS_CPU_SB1
1114 select CPU_SUPPORTS_32BIT_KERNEL
1115 select CPU_SUPPORTS_64BIT_KERNEL
1116 select CPU_SUPPORTS_HIGHMEM
1117 select WEAK_ORDERING
1121 config SYS_HAS_CPU_LOONGSON2
1124 config SYS_HAS_CPU_MIPS32_R1
1127 config SYS_HAS_CPU_MIPS32_R2
1130 config SYS_HAS_CPU_MIPS64_R1
1133 config SYS_HAS_CPU_MIPS64_R2
1136 config SYS_HAS_CPU_R3000
1139 config SYS_HAS_CPU_TX39XX
1142 config SYS_HAS_CPU_VR41XX
1145 config SYS_HAS_CPU_R4300
1148 config SYS_HAS_CPU_R4X00
1151 config SYS_HAS_CPU_TX49XX
1154 config SYS_HAS_CPU_R5000
1157 config SYS_HAS_CPU_R5432
1160 config SYS_HAS_CPU_R6000
1163 config SYS_HAS_CPU_NEVADA
1166 config SYS_HAS_CPU_R8000
1169 config SYS_HAS_CPU_R10000
1172 config SYS_HAS_CPU_RM7000
1175 config SYS_HAS_CPU_RM9000
1178 config SYS_HAS_CPU_SB1
1182 # CPU may reorder R->R, R->W, W->R, W->W
1183 # Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
1185 config WEAK_ORDERING
1189 # CPU may reorder reads and writes beyond LL/SC
1190 # CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
1192 config WEAK_REORDERING_BEYOND_LLSC
1197 # These two indicate any level of the MIPS32 and MIPS64 architecture
1201 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1205 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1208 # These two indicate the revision of the architecture, either Release 1 or Release 2
1212 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1216 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
1218 config SYS_SUPPORTS_32BIT_KERNEL
1220 config SYS_SUPPORTS_64BIT_KERNEL
1222 config CPU_SUPPORTS_32BIT_KERNEL
1224 config CPU_SUPPORTS_64BIT_KERNEL
1231 prompt "Kernel code model"
1233 You should only select this option if you have a workload that
1234 actually benefits from 64-bit processing or if your machine has
1235 large memory. You will only be presented a single option in this
1236 menu if your system does not support both 32-bit and 64-bit kernels.
1239 bool "32-bit kernel"
1240 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1243 Select this option if you want to build a 32-bit kernel.
1245 bool "64-bit kernel"
1246 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1248 Select this option if you want to build a 64-bit kernel.
1253 prompt "Kernel page size"
1254 default PAGE_SIZE_4KB
1256 config PAGE_SIZE_4KB
1259 This option select the standard 4kB Linux page size. On some
1260 R3000-family processors this is the only available page size. Using
1261 4kB page size will minimize memory consumption and is therefore
1262 recommended for low memory systems.
1264 config PAGE_SIZE_8KB
1266 depends on EXPERIMENTAL && CPU_R8000
1268 Using 8kB page size will result in higher performance kernel at
1269 the price of higher memory consumption. This option is available
1270 only on the R8000 processor. Not that at the time of this writing
1271 this option is still high experimental; there are also issues with
1272 compatibility of user applications.
1274 config PAGE_SIZE_16KB
1276 depends on !CPU_R3000 && !CPU_TX39XX
1278 Using 16kB page size will result in higher performance kernel at
1279 the price of higher memory consumption. This option is available on
1280 all non-R3000 family processors. Note that you will need a suitable
1281 Linux distribution to support this.
1283 config PAGE_SIZE_64KB
1285 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1287 Using 64kB page size will result in higher performance kernel at
1288 the price of higher memory consumption. This option is available on
1289 all non-R3000 family processor. Not that at the time of this
1290 writing this option is still high experimental.
1297 config IP22_CPU_SCACHE
1302 # Support for a MIPS32 / MIPS64 style S-caches
1304 config MIPS_CPU_SCACHE
1308 config R5000_CPU_SCACHE
1312 config RM7000_CPU_SCACHE
1316 config SIBYTE_DMA_PAGEOPS
1317 bool "Use DMA to clear/copy pages"
1320 Instead of using the CPU to zero and copy pages, use a Data Mover
1321 channel. These DMA channels are otherwise unused by the standard
1322 SiByte Linux port. Seems to give a small performance benefit.
1324 config CPU_HAS_PREFETCH
1328 prompt "MIPS MT options"
1330 config MIPS_MT_DISABLED
1331 bool "Disable multithreading support."
1333 Use this option if your workload can't take advantage of
1334 MIPS hardware multithreading support. On systems that don't have
1335 the option of an MT-enabled processor this option will be the only
1336 option in this menu.
1339 bool "Use 1 TC on each available VPE for SMP"
1340 depends on SYS_SUPPORTS_MULTITHREADING
1341 select CPU_MIPSR2_IRQ_VI
1342 select CPU_MIPSR2_IRQ_EI
1343 select CPU_MIPSR2_SRS
1345 select NR_CPUS_DEFAULT_2
1347 select SYS_SUPPORTS_SMP
1349 This is a kernel model which is also known a VSMP or lately
1350 has been marketesed into SMVP.
1353 bool "SMTC: Use all TCs on all VPEs for SMP"
1354 depends on CPU_MIPS32_R2
1355 #depends on CPU_MIPS64_R2 # once there is hardware ...
1356 depends on SYS_SUPPORTS_MULTITHREADING
1357 select CPU_MIPSR2_IRQ_VI
1358 select CPU_MIPSR2_IRQ_EI
1359 select CPU_MIPSR2_SRS
1361 select NR_CPUS_DEFAULT_8
1363 select SYS_SUPPORTS_SMP
1365 This is a kernel model which is known a SMTC or lately has been
1366 marketesed into SMVP.
1373 config SYS_SUPPORTS_MULTITHREADING
1376 config MIPS_MT_FPAFF
1377 bool "Dynamic FPU affinity for FP-intensive threads"
1379 depends on MIPS_MT_SMP || MIPS_MT_SMTC
1381 config MIPS_VPE_LOADER
1382 bool "VPE loader support."
1383 depends on SYS_SUPPORTS_MULTITHREADING
1384 select CPU_MIPSR2_IRQ_VI
1385 select CPU_MIPSR2_IRQ_EI
1386 select CPU_MIPSR2_SRS
1389 Includes a loader for loading an elf relocatable object
1390 onto another VPE and running it.
1392 config MIPS_MT_SMTC_INSTANT_REPLAY
1393 bool "Low-latency Dispatch of Deferred SMTC IPIs"
1394 depends on MIPS_MT_SMTC && !PREEMPT
1397 SMTC pseudo-interrupts between TCs are deferred and queued
1398 if the target TC is interrupt-inhibited (IXMT). In the first
1399 SMTC prototypes, these queued IPIs were serviced on return
1400 to user mode, or on entry into the kernel idle loop. The
1401 INSTANT_REPLAY option dispatches them as part of local_irq_restore()
1402 processing, which adds runtime overhead (hence the option to turn
1403 it off), but ensures that IPIs are handled promptly even under
1404 heavy I/O interrupt load.
1406 config MIPS_MT_SMTC_IM_BACKSTOP
1407 bool "Use per-TC register bits as backstop for inhibited IM bits"
1408 depends on MIPS_MT_SMTC
1411 To support multiple TC microthreads acting as "CPUs" within
1412 a VPE, VPE-wide interrupt mask bits must be specially manipulated
1413 during interrupt handling. To support legacy drivers and interrupt
1414 controller management code, SMTC has a "backstop" to track and
1415 if necessary restore the interrupt mask. This has some performance
1416 impact on interrupt service overhead. Disable it only if you know
1419 config MIPS_MT_SMTC_IRQAFF
1420 bool "Support IRQ affinity API"
1421 depends on MIPS_MT_SMTC
1424 Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.)
1425 for SMTC Linux kernel. Requires platform support, of which
1426 an example can be found in the MIPS kernel i8259 and Malta
1427 platform code. It is recommended that MIPS_MT_SMTC_INSTANT_REPLAY
1428 be enabled if MIPS_MT_SMTC_IRQAFF is used. Adds overhead to
1429 interrupt dispatch, and should be used only if you know what
1432 config MIPS_VPE_LOADER_TOM
1433 bool "Load VPE program into memory hidden from linux"
1434 depends on MIPS_VPE_LOADER
1437 The loader can use memory that is present but has been hidden from
1438 Linux using the kernel command line option "mem=xxMB". It's up to
1439 you to ensure the amount you put in the option and the space your
1440 program requires is less or equal to the amount physically present.
1442 # this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1443 config MIPS_VPE_APSP_API
1444 bool "Enable support for AP/SP API (RTLX)"
1445 depends on MIPS_VPE_LOADER
1448 config MIPS_APSP_KSPD
1450 depends on MIPS_VPE_APSP_API
1453 KSPD is a kernel daemon that accepts syscall requests from the SP
1454 side, actions them and returns the results. It also handles the
1455 "exit" syscall notifying other kernel modules the SP program is
1456 exiting. You probably want to say yes here.
1458 config SB1_PASS_1_WORKAROUNDS
1460 depends on CPU_SB1_PASS_1
1463 config SB1_PASS_2_WORKAROUNDS
1465 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1468 config SB1_PASS_2_1_WORKAROUNDS
1470 depends on CPU_SB1 && CPU_SB1_PASS_2
1473 config 64BIT_PHYS_ADDR
1479 config CPU_HAS_SMARTMIPS
1480 depends on SYS_SUPPORTS_SMARTMIPS
1481 bool "Support for the SmartMIPS ASE"
1483 SmartMIPS is a extension of the MIPS32 architecture aimed at
1484 increased security at both hardware and software level for
1485 smartcards. Enabling this option will allow proper use of the
1486 SmartMIPS instructions by Linux applications. However a kernel with
1487 this option will not work on a MIPS core without SmartMIPS core. If
1488 you don't know you probably don't have SmartMIPS and should say N
1494 config 64BIT_CONTEXT
1495 bool "Save 64bit integer registers"
1496 depends on 32BIT && CPU_LOONGSON2
1498 Loongson2 CPU is 64bit , when used in 32BIT mode, its integer
1499 registers can still be accessed as 64bit, mainly for multimedia
1500 instructions. We must have all 64bit save/restored to make sure
1501 those instructions to get correct result.
1504 # Vectored interrupt mode is an R2 feature
1506 config CPU_MIPSR2_IRQ_VI
1510 # Extended interrupt mode is an R2 feature
1512 config CPU_MIPSR2_IRQ_EI
1516 # Shadow registers are an R2 feature
1518 config CPU_MIPSR2_SRS
1523 depends on !CPU_R3000
1527 # Use the generic interrupt handling code in kernel/irq/:
1529 config GENERIC_HARDIRQS
1533 config GENERIC_IRQ_PROBE
1541 # - Highmem only makes sense for the 32-bit kernel.
1542 # - The current highmem code will only work properly on physically indexed
1543 # caches such as R3000, SB1, R7000 or those that look like they're virtually
1544 # indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1545 # moment we protect the user and offer the highmem option only on machines
1546 # where it's known to be safe. This will not offer highmem on a few systems
1547 # such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1548 # indexed CPUs but we're playing safe.
1549 # - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1550 # know they might have memory configurations that could make use of highmem
1554 bool "High Memory Support"
1555 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1557 config CPU_SUPPORTS_HIGHMEM
1560 config SYS_SUPPORTS_HIGHMEM
1563 config SYS_SUPPORTS_SMARTMIPS
1566 config ARCH_FLATMEM_ENABLE
1570 config ARCH_DISCONTIGMEM_ENABLE
1572 default y if SGI_IP27
1574 Say Y to support efficient handling of discontiguous physical memory,
1575 for architectures which are either NUMA (Non-Uniform Memory Access)
1576 or have huge holes in the physical address space for other reasons.
1577 See <file:Documentation/vm/numa> for more.
1579 config ARCH_SPARSEMEM_ENABLE
1581 select SPARSEMEM_STATIC
1585 depends on SYS_SUPPORTS_NUMA
1587 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1588 Access). This option improves performance on systems with more
1589 than two nodes; on two node systems it is generally better to
1590 leave it disabled; on single node systems disable this option
1593 config SYS_SUPPORTS_NUMA
1599 depends on NEED_MULTIPLE_NODES
1604 bool "Multi-Processing support"
1605 depends on SYS_SUPPORTS_SMP
1608 This enables support for systems with more than one CPU. If you have
1609 a system with only one CPU, like most personal computers, say N. If
1610 you have a system with more than one CPU, say Y.
1612 If you say N here, the kernel will run on single and multiprocessor
1613 machines, but will use only one CPU of a multiprocessor machine. If
1614 you say Y here, the kernel will run on many, but not all,
1615 singleprocessor machines. On a singleprocessor machine, the kernel
1616 will run faster if you say N here.
1618 People using multiprocessor machines who say Y here should also say
1619 Y to "Enhanced Real Time Clock Support", below.
1621 See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1622 available at <http://www.tldp.org/docs.html#howto>.
1624 If you don't know what to do here, say N.
1626 config SYS_SUPPORTS_SMP
1629 config NR_CPUS_DEFAULT_1
1632 config NR_CPUS_DEFAULT_2
1635 config NR_CPUS_DEFAULT_4
1638 config NR_CPUS_DEFAULT_8
1641 config NR_CPUS_DEFAULT_16
1644 config NR_CPUS_DEFAULT_32
1647 config NR_CPUS_DEFAULT_64
1651 int "Maximum number of CPUs (2-64)"
1652 range 1 64 if NR_CPUS_DEFAULT_1
1654 default "1" if NR_CPUS_DEFAULT_1
1655 default "2" if NR_CPUS_DEFAULT_2
1656 default "4" if NR_CPUS_DEFAULT_4
1657 default "8" if NR_CPUS_DEFAULT_8
1658 default "16" if NR_CPUS_DEFAULT_16
1659 default "32" if NR_CPUS_DEFAULT_32
1660 default "64" if NR_CPUS_DEFAULT_64
1662 This allows you to specify the maximum number of CPUs which this
1663 kernel will support. The maximum supported value is 32 for 32-bit
1664 kernel and 64 for 64-bit kernels; the minimum value which makes
1665 sense is 1 for Qemu (useful only for kernel debugging purposes)
1666 and 2 for all others.
1668 This is purely to save memory - each supported CPU adds
1669 approximately eight kilobytes to the kernel image. For best
1670 performance should round up your number of processors to the next
1674 # Timer Interrupt Frequency Configuration
1678 prompt "Timer frequency"
1681 Allows the configuration of the timer frequency.
1684 bool "48 HZ" if SYS_SUPPORTS_48HZ
1687 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1690 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1693 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1696 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1699 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1702 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1706 config SYS_SUPPORTS_48HZ
1709 config SYS_SUPPORTS_100HZ
1712 config SYS_SUPPORTS_128HZ
1715 config SYS_SUPPORTS_250HZ
1718 config SYS_SUPPORTS_256HZ
1721 config SYS_SUPPORTS_1000HZ
1724 config SYS_SUPPORTS_1024HZ
1727 config SYS_SUPPORTS_ARBIT_HZ
1729 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1730 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1731 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1732 !SYS_SUPPORTS_1024HZ
1737 default 100 if HZ_100
1738 default 128 if HZ_128
1739 default 250 if HZ_250
1740 default 256 if HZ_256
1741 default 1000 if HZ_1000
1742 default 1024 if HZ_1024
1744 source "kernel/Kconfig.preempt"
1746 config MIPS_INSANE_LARGE
1747 bool "Support for large 64-bit configurations"
1748 depends on CPU_R10000 && 64BIT
1750 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1751 previous 64-bit processors which only supported 40 bit / 1TB. If you
1752 need processes of more than 1TB virtual address space, say Y here.
1753 This will result in additional memory usage, so it is not
1754 recommended for normal users.
1757 bool "Kexec system call (EXPERIMENTAL)"
1758 depends on EXPERIMENTAL
1760 kexec is a system call that implements the ability to shutdown your
1761 current kernel, and to start another kernel. It is like a reboot
1762 but it is independent of the system firmware. And like a reboot
1763 you can start any kernel with it, not just Linux.
1765 The name comes from the similiarity to the exec system call.
1767 It is an ongoing process to be certain the hardware in a machine
1768 is properly shutdown, so do not be surprised if this code does not
1769 initially work for you. It may help to enable device hotplugging
1770 support. As of this writing the exact hardware interface is
1771 strongly in flux, so no good recommendation can be made.
1774 bool "Enable seccomp to safely compute untrusted bytecode"
1778 This kernel feature is useful for number crunching applications
1779 that may need to compute untrusted bytecode during their
1780 execution. By using pipes or other transports made available to
1781 the process as file descriptors supporting the read/write
1782 syscalls, it's possible to isolate those applications in
1783 their own address space using seccomp. Once seccomp is
1784 enabled via /proc/<pid>/seccomp, it cannot be disabled
1785 and the task is only allowed to execute a few safe syscalls
1786 defined by each seccomp mode.
1788 If unsure, say Y. Only embedded should say N here.
1792 config RWSEM_GENERIC_SPINLOCK
1796 config LOCKDEP_SUPPORT
1800 config STACKTRACE_SUPPORT
1804 source "init/Kconfig"
1806 menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1814 bool "Support for PCI controller"
1815 depends on HW_HAS_PCI
1818 Find out whether you have a PCI motherboard. PCI is the name of a
1819 bus system, i.e. the way the CPU talks to the other stuff inside
1820 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1823 The PCI-HOWTO, available from
1824 <http://www.tldp.org/docs.html#howto>, contains valuable
1825 information about which PCI hardware does work under Linux and which
1831 source "drivers/pci/Kconfig"
1834 # ISA support is now enabled via select. Too many systems still have the one
1835 # or other ISA chip on the board that users don't know about so don't expect
1836 # users to choose the right thing ...
1843 depends on HW_HAS_EISA
1845 select GENERIC_ISA_DMA
1847 The Extended Industry Standard Architecture (EISA) bus was
1848 developed as an open alternative to the IBM MicroChannel bus.
1850 The EISA bus provided some of the features of the IBM MicroChannel
1851 bus while maintaining backward compatibility with cards made for
1852 the older ISA bus. The EISA bus saw limited use between 1988 and
1853 1995 when it was made obsolete by the PCI bus.
1855 Say Y here if you are building a kernel for an EISA-based machine.
1859 source "drivers/eisa/Kconfig"
1862 bool "TURBOchannel support"
1863 depends on MACH_DECSTATION
1865 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1866 processors. Documentation on writing device drivers for TurboChannel
1868 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1871 # bool "Access.Bus support"
1881 source "drivers/pcmcia/Kconfig"
1883 source "drivers/pci/hotplug/Kconfig"
1887 menu "Executable file formats"
1889 source "fs/Kconfig.binfmt"
1895 bool "Include IRIX binary compatibility"
1896 depends on CPU_BIG_ENDIAN && 32BIT && BROKEN
1898 config MIPS32_COMPAT
1899 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
1902 Select this option if you want Linux/MIPS 32-bit binary
1903 compatibility. Since all software available for Linux/MIPS is
1904 currently 32-bit you should say Y here.
1908 depends on MIPS32_COMPAT
1911 config SYSVIPC_COMPAT
1913 depends on COMPAT && SYSVIPC
1917 bool "Kernel support for o32 binaries"
1918 depends on MIPS32_COMPAT
1920 Select this option if you want to run o32 binaries. These are pure
1921 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
1922 existing binaries are in this format.
1927 bool "Kernel support for n32 binaries"
1928 depends on MIPS32_COMPAT
1930 Select this option if you want to run n32 binaries. These are
1931 64-bit binaries using 32-bit quantities for addressing and certain
1932 data that would normally be 64-bit. They are used in special
1939 default y if MIPS32_O32 || MIPS32_N32
1943 menu "Power management options"
1945 source "kernel/power/Kconfig"
1949 source "net/Kconfig"
1951 source "drivers/Kconfig"
1955 source "arch/mips/oprofile/Kconfig"
1957 source "arch/mips/Kconfig.debug"
1959 source "security/Kconfig"
1961 source "crypto/Kconfig"
1963 source "lib/Kconfig"