4 # Horrible source of confusion. Die, die, die ...
8 mainmenu "Linux/MIPS Kernel Configuration"
10 menu "Machine selection"
20 bool "Alchemy processor based machines"
23 bool "Basler eXcite smart camera"
30 select SYS_HAS_CPU_RM9000
31 select SYS_SUPPORTS_32BIT_KERNEL
32 select SYS_SUPPORTS_BIG_ENDIAN
33 select SYS_SUPPORTS_KGDB
35 The eXcite is a smart camera platform manufactured by
36 Basler Vision Technologies AG.
38 config BASLER_EXCITE_PROTOTYPE
39 bool "Support for pre-release units"
40 depends on BASLER_EXCITE
43 Pre-series (prototype) units are different from later ones in
44 some ways. Select this option if you have one of these. Please
45 note that a kernel built with this option selected will not be
46 able to run on normal units.
49 bool "BCM47XX based boards"
50 select DMA_NONCOHERENT
53 select SYS_HAS_CPU_MIPS32_R1
54 select SYS_SUPPORTS_32BIT_KERNEL
55 select SYS_SUPPORTS_LITTLE_ENDIAN
57 select SSB_DRIVER_MIPS
59 select SYS_HAS_EARLY_PRINTK
62 Support for BCM47XX based boards
66 select DMA_NONCOHERENT
71 select PCI_GT64XXX_PCI0
72 select SYS_HAS_CPU_NEVADA
73 select SYS_HAS_EARLY_PRINTK
74 select SYS_SUPPORTS_32BIT_KERNEL
75 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
76 select SYS_SUPPORTS_LITTLE_ENDIAN
77 select GENERIC_HARDIRQS_NO__DO_IRQ
79 config MACH_DECSTATION
82 select DMA_NONCOHERENT
85 select SYS_HAS_CPU_R3000
86 select SYS_HAS_CPU_R4X00
87 select SYS_SUPPORTS_32BIT_KERNEL
88 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
89 select SYS_SUPPORTS_LITTLE_ENDIAN
90 select SYS_SUPPORTS_128HZ
91 select SYS_SUPPORTS_256HZ
92 select SYS_SUPPORTS_1024HZ
94 This enables support for DEC's MIPS based workstations. For details
95 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
96 DECstation porting pages on <http://decstation.unix-ag.org/>.
98 If you have one of the following DECstation Models you definitely
99 want to choose R4xx0 for the CPU Type:
106 otherwise choose R3000.
109 bool "Jazz family of machines"
112 select ARCH_MAY_HAVE_PC_FDC
113 select GENERIC_ISA_DMA
118 select SYS_HAS_CPU_R4X00
119 select SYS_SUPPORTS_32BIT_KERNEL
120 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
121 select SYS_SUPPORTS_100HZ
122 select GENERIC_HARDIRQS_NO__DO_IRQ
124 This a family of machines based on the MIPS R4030 chipset which was
125 used by several vendors to build RISC/os and Windows NT workstations.
126 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
127 Olivetti M700-10 workstations.
130 bool "LASAT Networks platforms"
131 select DMA_NONCOHERENT
132 select SYS_HAS_EARLY_PRINTK
134 select PCI_GT64XXX_PCI0
136 select R5000_CPU_SCACHE
137 select SYS_HAS_CPU_R5000
138 select SYS_SUPPORTS_32BIT_KERNEL
139 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
140 select SYS_SUPPORTS_LITTLE_ENDIAN
141 select GENERIC_HARDIRQS_NO__DO_IRQ
144 bool "Lemote Fulong mini-PC"
145 select ARCH_SPARSEMEM_ENABLE
146 select SYS_HAS_CPU_LOONGSON2
147 select DMA_NONCOHERENT
150 select HAVE_STD_PC_SERIAL_PORT
155 select SYS_SUPPORTS_32BIT_KERNEL
156 select SYS_SUPPORTS_64BIT_KERNEL
157 select SYS_SUPPORTS_LITTLE_ENDIAN
158 select SYS_SUPPORTS_HIGHMEM
159 select SYS_HAS_EARLY_PRINTK
160 select GENERIC_HARDIRQS_NO__DO_IRQ
161 select GENERIC_ISA_DMA_SUPPORT_BROKEN
164 Lemote Fulong mini-PC board based on the Chinese Loongson-2E CPU and
168 bool "MIPS Atlas board"
170 select DMA_NONCOHERENT
171 select SYS_HAS_EARLY_PRINTK
174 select MIPS_BOARDS_GEN
176 select PCI_GT64XXX_PCI0
178 select RM7000_CPU_SCACHE
180 select SYS_HAS_CPU_MIPS32_R1
181 select SYS_HAS_CPU_MIPS32_R2
182 select SYS_HAS_CPU_MIPS64_R1
183 select SYS_HAS_CPU_NEVADA
184 select SYS_HAS_CPU_RM7000
185 select SYS_SUPPORTS_32BIT_KERNEL
186 select SYS_SUPPORTS_64BIT_KERNEL
187 select SYS_SUPPORTS_BIG_ENDIAN
188 select SYS_SUPPORTS_LITTLE_ENDIAN
189 select SYS_SUPPORTS_MULTITHREADING if EXPERIMENTAL
190 select SYS_SUPPORTS_SMARTMIPS
191 select GENERIC_HARDIRQS_NO__DO_IRQ
193 This enables support for the MIPS Technologies Atlas evaluation
197 bool "MIPS Malta board"
198 select ARCH_MAY_HAVE_PC_FDC
200 select DMA_NONCOHERENT
201 select GENERIC_ISA_DMA
205 select MIPS_BOARDS_GEN
207 select MIPS_CPU_SCACHE
208 select PCI_GT64XXX_PCI0
211 select SYS_HAS_CPU_MIPS32_R1
212 select SYS_HAS_CPU_MIPS32_R2
213 select SYS_HAS_CPU_MIPS64_R1
214 select SYS_HAS_CPU_NEVADA
215 select SYS_HAS_CPU_RM7000
216 select SYS_HAS_EARLY_PRINTK
217 select SYS_SUPPORTS_32BIT_KERNEL
218 select SYS_SUPPORTS_64BIT_KERNEL
219 select SYS_SUPPORTS_BIG_ENDIAN
220 select SYS_SUPPORTS_LITTLE_ENDIAN
221 select SYS_SUPPORTS_MULTITHREADING
222 select SYS_SUPPORTS_SMARTMIPS
224 This enables support for the MIPS Technologies Malta evaluation
228 bool "MIPS SEAD board"
230 select DMA_NONCOHERENT
231 select SYS_HAS_EARLY_PRINTK
232 select MIPS_BOARDS_GEN
233 select SYS_HAS_CPU_MIPS32_R1
234 select SYS_HAS_CPU_MIPS32_R2
235 select SYS_HAS_CPU_MIPS64_R1
236 select SYS_SUPPORTS_32BIT_KERNEL
237 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
238 select SYS_SUPPORTS_BIG_ENDIAN
239 select SYS_SUPPORTS_LITTLE_ENDIAN
240 select SYS_SUPPORTS_SMARTMIPS
242 This enables support for the MIPS Technologies SEAD evaluation
246 bool 'MIPS simulator (MIPSsim)'
247 select DMA_NONCOHERENT
248 select SYS_HAS_EARLY_PRINTK
251 select SYS_HAS_CPU_MIPS32_R1
252 select SYS_HAS_CPU_MIPS32_R2
253 select SYS_HAS_EARLY_PRINTK
254 select SYS_SUPPORTS_32BIT_KERNEL
255 select SYS_SUPPORTS_BIG_ENDIAN
256 select SYS_SUPPORTS_MULTITHREADING
257 select SYS_SUPPORTS_LITTLE_ENDIAN
259 This option enables support for MIPS Technologies MIPSsim software
263 bool "NEC EMMA2RH Mark-eins"
264 select DMA_NONCOHERENT
268 select SYS_SUPPORTS_32BIT_KERNEL
269 select SYS_SUPPORTS_BIG_ENDIAN
270 select SYS_SUPPORTS_LITTLE_ENDIAN
271 select SYS_HAS_CPU_R5000
273 This enables support for the R5432-based NEC Mark-eins
274 boards with R5500 CPU.
277 bool "NEC VR4100 series based machines"
278 select SYS_HAS_CPU_VR41XX
279 select GENERIC_HARDIRQS_NO__DO_IRQ
282 bool "Philips PNX8550 based JBS board"
284 select SYS_SUPPORTS_LITTLE_ENDIAN
286 config PNX8550_STB810
287 bool "Philips PNX8550 based STB810 board"
289 select SYS_SUPPORTS_LITTLE_ENDIAN
292 bool "PMC-Sierra MSP chipsets"
293 depends on EXPERIMENTAL
294 select DMA_NONCOHERENT
296 select NO_EXCEPT_FILL
298 select SYS_HAS_CPU_MIPS32_R1
299 select SYS_HAS_CPU_MIPS32_R2
300 select SYS_SUPPORTS_32BIT_KERNEL
301 select SYS_SUPPORTS_BIG_ENDIAN
302 select SYS_SUPPORTS_KGDB
305 select SERIAL_8250_CONSOLE
307 This adds support for the PMC-Sierra family of Multi-Service
308 Processor System-On-A-Chips. These parts include a number
309 of integrated peripherals, interfaces and DSPs in addition to
310 a variety of MIPS cores.
313 bool "PMC-Sierra Yosemite eval board"
320 select SYS_HAS_CPU_RM9000
321 select SYS_HAS_EARLY_PRINTK
322 select SYS_SUPPORTS_32BIT_KERNEL
323 select SYS_SUPPORTS_64BIT_KERNEL
324 select SYS_SUPPORTS_BIG_ENDIAN
325 select SYS_SUPPORTS_HIGHMEM
326 select SYS_SUPPORTS_KGDB
327 select SYS_SUPPORTS_SMP
329 Yosemite is an evaluation board for the RM9000x2 processor
330 manufactured by PMC-Sierra.
335 select GENERIC_ISA_DMA
336 select HAVE_STD_PC_SERIAL_PORT
342 select SYS_HAS_CPU_MIPS32_R1
343 select SYS_SUPPORTS_32BIT_KERNEL
344 select SYS_SUPPORTS_BIG_ENDIAN
345 select SYS_SUPPORTS_LITTLE_ENDIAN
346 select ARCH_SPARSEMEM_ENABLE
347 select GENERIC_HARDIRQS_NO__DO_IRQ
348 select NR_CPUS_DEFAULT_1
349 select SYS_SUPPORTS_SMP
351 Qemu is a software emulator which among other architectures also
352 can simulate a MIPS32 4Kc system. This patch adds support for the
353 system architecture that currently is being simulated by Qemu. It
354 will eventually be removed again when Qemu has the capability to
355 simulate actual MIPS hardware platforms. More information on Qemu
356 can be found at http://www.linux-mips.org/wiki/Qemu.
359 bool "SGI IP22 (Indy/Indigo2)"
363 select DMA_NONCOHERENT
365 select IP22_CPU_SCACHE
367 select GENERIC_ISA_DMA_SUPPORT_BROKEN
369 select SYS_HAS_CPU_R4X00
370 select SYS_HAS_CPU_R5000
371 select SYS_HAS_EARLY_PRINTK
372 select SYS_SUPPORTS_32BIT_KERNEL
373 select SYS_SUPPORTS_64BIT_KERNEL
374 select SYS_SUPPORTS_BIG_ENDIAN
376 This are the SGI Indy, Challenge S and Indigo2, as well as certain
377 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
378 that runs on these, say Y here.
381 bool "SGI IP27 (Origin200/2000)"
386 select SYS_HAS_EARLY_PRINTK
388 select NR_CPUS_DEFAULT_64
389 select SYS_HAS_CPU_R10000
390 select SYS_SUPPORTS_64BIT_KERNEL
391 select SYS_SUPPORTS_BIG_ENDIAN
392 select SYS_SUPPORTS_KGDB
393 select SYS_SUPPORTS_NUMA
394 select SYS_SUPPORTS_SMP
395 select GENERIC_HARDIRQS_NO__DO_IRQ
397 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
398 workstations. To compile a Linux kernel that runs on these, say Y
406 select DMA_NONCOHERENT
408 select R5000_CPU_SCACHE
409 select RM7000_CPU_SCACHE
410 select SYS_HAS_CPU_R5000
411 select SYS_HAS_CPU_R10000 if BROKEN
412 select SYS_HAS_CPU_RM7000
413 select SYS_HAS_CPU_NEVADA
414 select SYS_SUPPORTS_64BIT_KERNEL
415 select SYS_SUPPORTS_BIG_ENDIAN
417 If you want this kernel to run on SGI O2 workstation, say Y here.
420 bool "Sibyte BCM91120C-CRhine"
421 depends on EXPERIMENTAL
424 select SIBYTE_BCM1120
426 select SYS_HAS_CPU_SB1
427 select SYS_SUPPORTS_BIG_ENDIAN
428 select SYS_SUPPORTS_LITTLE_ENDIAN
431 bool "Sibyte BCM91120x-Carmel"
432 depends on EXPERIMENTAL
435 select SIBYTE_BCM1120
437 select SYS_HAS_CPU_SB1
438 select SYS_SUPPORTS_BIG_ENDIAN
439 select SYS_SUPPORTS_LITTLE_ENDIAN
442 bool "Sibyte BCM91125C-CRhone"
443 depends on EXPERIMENTAL
446 select SIBYTE_BCM1125
448 select SYS_HAS_CPU_SB1
449 select SYS_SUPPORTS_BIG_ENDIAN
450 select SYS_SUPPORTS_HIGHMEM
451 select SYS_SUPPORTS_LITTLE_ENDIAN
454 bool "Sibyte BCM91125E-Rhone"
455 depends on EXPERIMENTAL
458 select SIBYTE_BCM1125H
460 select SYS_HAS_CPU_SB1
461 select SYS_SUPPORTS_BIG_ENDIAN
462 select SYS_SUPPORTS_LITTLE_ENDIAN
465 bool "Sibyte BCM91250A-SWARM"
468 select NR_CPUS_DEFAULT_2
471 select SYS_HAS_CPU_SB1
472 select SYS_SUPPORTS_BIG_ENDIAN
473 select SYS_SUPPORTS_HIGHMEM
474 select SYS_SUPPORTS_KGDB
475 select SYS_SUPPORTS_LITTLE_ENDIAN
477 config SIBYTE_LITTLESUR
478 bool "Sibyte BCM91250C2-LittleSur"
479 depends on EXPERIMENTAL
482 select NR_CPUS_DEFAULT_2
485 select SYS_HAS_CPU_SB1
486 select SYS_SUPPORTS_BIG_ENDIAN
487 select SYS_SUPPORTS_HIGHMEM
488 select SYS_SUPPORTS_LITTLE_ENDIAN
490 config SIBYTE_SENTOSA
491 bool "Sibyte BCM91250E-Sentosa"
492 depends on EXPERIMENTAL
495 select NR_CPUS_DEFAULT_2
498 select SYS_HAS_CPU_SB1
499 select SYS_SUPPORTS_BIG_ENDIAN
500 select SYS_SUPPORTS_LITTLE_ENDIAN
502 config SIBYTE_PTSWARM
503 bool "Sibyte BCM91250PT-PTSWARM"
504 depends on EXPERIMENTAL
507 select NR_CPUS_DEFAULT_2
510 select SYS_HAS_CPU_SB1
511 select SYS_SUPPORTS_BIG_ENDIAN
512 select SYS_SUPPORTS_HIGHMEM
513 select SYS_SUPPORTS_LITTLE_ENDIAN
516 bool "Sibyte BCM91480B-BigSur"
519 select NR_CPUS_DEFAULT_4
520 select SIBYTE_BCM1x80
522 select SYS_HAS_CPU_SB1
523 select SYS_SUPPORTS_BIG_ENDIAN
524 select SYS_SUPPORTS_LITTLE_ENDIAN
527 bool "SNI RM200/300/400"
528 select ARC if CPU_LITTLE_ENDIAN
529 select ARC32 if CPU_LITTLE_ENDIAN
530 select ARCH_MAY_HAVE_PC_FDC
532 select DMA_NONCOHERENT
533 select GENERIC_ISA_DMA
540 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
541 select SYS_HAS_CPU_R4X00
542 select SYS_HAS_CPU_R5000
543 select SYS_HAS_CPU_R10000
544 select R5000_CPU_SCACHE
545 select SYS_HAS_EARLY_PRINTK
546 select SYS_SUPPORTS_32BIT_KERNEL
547 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
548 select SYS_SUPPORTS_BIG_ENDIAN
549 select SYS_SUPPORTS_HIGHMEM
550 select SYS_SUPPORTS_LITTLE_ENDIAN
552 The SNI RM200/300/400 are MIPS-based machines manufactured by
553 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
554 Technology and now in turn merged with Fujitsu. Say Y here to
555 support this machine type.
557 config TOSHIBA_JMR3927
558 bool "Toshiba JMR-TX3927 board"
559 select DMA_NONCOHERENT
564 select SYS_HAS_CPU_TX39XX
565 select SYS_SUPPORTS_32BIT_KERNEL
566 select SYS_SUPPORTS_LITTLE_ENDIAN
567 select SYS_SUPPORTS_BIG_ENDIAN
568 select GENERIC_HARDIRQS_NO__DO_IRQ
570 config TOSHIBA_RBTX4927
571 bool "Toshiba RBTX49[23]7 board"
572 select DMA_NONCOHERENT
573 select HAS_TXX9_SERIAL
577 select I8259 if TOSHIBA_FPCIB0
579 select SYS_HAS_CPU_TX49XX
580 select SYS_SUPPORTS_32BIT_KERNEL
581 select SYS_SUPPORTS_64BIT_KERNEL
582 select SYS_SUPPORTS_LITTLE_ENDIAN
583 select SYS_SUPPORTS_BIG_ENDIAN
584 select SYS_SUPPORTS_KGDB
585 select GENERIC_HARDIRQS_NO__DO_IRQ
587 This Toshiba board is based on the TX4927 processor. Say Y here to
588 support this machine type
590 config TOSHIBA_RBTX4938
591 bool "Toshiba RBTX4938 board"
592 select DMA_NONCOHERENT
593 select HAS_TXX9_SERIAL
598 select SYS_HAS_CPU_TX49XX
599 select SYS_SUPPORTS_32BIT_KERNEL
600 select SYS_SUPPORTS_LITTLE_ENDIAN
601 select SYS_SUPPORTS_BIG_ENDIAN
602 select SYS_SUPPORTS_KGDB
603 select GENERIC_HARDIRQS_NO__DO_IRQ
606 This Toshiba board is based on the TX4938 processor. Say Y here to
607 support this machine type
610 bool "Wind River PPMC board"
613 select DMA_NONCOHERENT
615 select PCI_GT64XXX_PCI0
617 select SYS_HAS_CPU_MIPS32_R1
618 select SYS_HAS_CPU_MIPS32_R2
619 select SYS_HAS_CPU_MIPS64_R1
620 select SYS_HAS_CPU_NEVADA
621 select SYS_HAS_CPU_RM7000
622 select SYS_SUPPORTS_32BIT_KERNEL
623 select SYS_SUPPORTS_64BIT_KERNEL
624 select SYS_SUPPORTS_BIG_ENDIAN
625 select SYS_SUPPORTS_LITTLE_ENDIAN
627 This enables support for the Wind River MIPS32 4KC PPMC evaluation
628 board, which is based on GT64120 bridge chip.
632 source "arch/mips/au1000/Kconfig"
633 source "arch/mips/jazz/Kconfig"
634 source "arch/mips/lasat/Kconfig"
635 source "arch/mips/pmc-sierra/Kconfig"
636 source "arch/mips/sgi-ip27/Kconfig"
637 source "arch/mips/sibyte/Kconfig"
638 source "arch/mips/tx4927/Kconfig"
639 source "arch/mips/tx4938/Kconfig"
640 source "arch/mips/vr41xx/Kconfig"
644 config RWSEM_GENERIC_SPINLOCK
648 config RWSEM_XCHGADD_ALGORITHM
651 config ARCH_HAS_ILOG2_U32
655 config ARCH_HAS_ILOG2_U64
659 config GENERIC_FIND_NEXT_BIT
663 config GENERIC_HWEIGHT
667 config GENERIC_CALIBRATE_DELAY
671 config GENERIC_CLOCKEVENTS
679 config GENERIC_CMOS_UPDATE
683 config SCHED_NO_NO_OMIT_FRAME_POINTER
687 config GENERIC_HARDIRQS_NO__DO_IRQ
692 # Select some configuration options automatically based on user selections.
697 config ARCH_MAY_HAVE_PC_FDC
714 select DMA_NEED_PCI_MAP_STATE
716 config DMA_NONCOHERENT
718 select DMA_NEED_PCI_MAP_STATE
720 config DMA_NEED_PCI_MAP_STATE
724 bool "Early printk" if EMBEDDED && DEBUG_KERNEL
725 depends on SYS_HAS_EARLY_PRINTK
728 This option enables special console drivers which allow the kernel
729 to print messages very early in the bootup process.
731 This is useful for kernel debugging when your machine crashes very
732 early before the console code is initialized. For normal operation,
733 it is not recommended because it looks ugly on some machines and
734 doesn't cooperate with an X server. You should normally say N here,
735 unless you want to debug such a crash.
737 config SYS_HAS_EARLY_PRINTK
756 config MIPS_DISABLE_OBSOLETE_IDE
762 config GENERIC_ISA_DMA
764 select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
766 config GENERIC_ISA_DMA_SUPPORT_BROKEN
768 select GENERIC_ISA_DMA
774 # Endianess selection. Sufficiently obscure so many users don't know what to
775 # answer,so we try hard to limit the available choices. Also the use of a
776 # choice statement should be more obvious to the user.
779 prompt "Endianess selection"
781 Some MIPS machines can be configured for either little or big endian
782 byte order. These modes require different kernels and a different
783 Linux distribution. In general there is one preferred byteorder for a
784 particular system but some systems are just as commonly used in the
785 one or the other endianness.
787 config CPU_BIG_ENDIAN
789 depends on SYS_SUPPORTS_BIG_ENDIAN
791 config CPU_LITTLE_ENDIAN
793 depends on SYS_SUPPORTS_LITTLE_ENDIAN
798 config SYS_SUPPORTS_APM_EMULATION
801 config SYS_SUPPORTS_BIG_ENDIAN
804 config SYS_SUPPORTS_LITTLE_ENDIAN
828 config MIPS_BOARDS_GEN
831 config PCI_GT64XXX_PCI0
834 config NO_EXCEPT_FILL
839 select HAS_TXX9_SERIAL
851 select DMA_NONCOHERENT
853 select SYS_HAS_CPU_MIPS32_R1
854 select SYS_HAS_EARLY_PRINTK
855 select SYS_SUPPORTS_32BIT_KERNEL
856 select GENERIC_HARDIRQS_NO__DO_IRQ
857 select SYS_SUPPORTS_KGDB
877 config MIPS_L1_CACHE_SHIFT
879 default "4" if MACH_DECSTATION
880 default "7" if SGI_IP27 || SNI_RM
881 default "4" if PMC_MSP4200_EVAL
884 config HAVE_STD_PC_SERIAL_PORT
888 bool "ARC console support"
889 depends on SGI_IP22 || (SNI_RM && CPU_LITTLE_ENDIAN)
893 depends on MACH_JAZZ || SNI_RM || SGI_IP32
898 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP32
909 source "kernel/time/Kconfig"
917 depends on SYS_HAS_CPU_LOONGSON2
918 select CPU_SUPPORTS_32BIT_KERNEL
919 select CPU_SUPPORTS_64BIT_KERNEL
920 select CPU_SUPPORTS_HIGHMEM
922 The Loongson 2E processor implements the MIPS III instruction set
923 with many extensions.
926 bool "MIPS32 Release 1"
927 depends on SYS_HAS_CPU_MIPS32_R1
929 select CPU_HAS_PREFETCH
930 select CPU_SUPPORTS_32BIT_KERNEL
931 select CPU_SUPPORTS_HIGHMEM
933 Choose this option to build a kernel for release 1 or later of the
934 MIPS32 architecture. Most modern embedded systems with a 32-bit
935 MIPS processor are based on a MIPS32 processor. If you know the
936 specific type of processor in your system, choose those that one
937 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
938 Release 2 of the MIPS32 architecture is available since several
939 years so chances are you even have a MIPS32 Release 2 processor
940 in which case you should choose CPU_MIPS32_R2 instead for better
944 bool "MIPS32 Release 2"
945 depends on SYS_HAS_CPU_MIPS32_R2
947 select CPU_HAS_PREFETCH
948 select CPU_SUPPORTS_32BIT_KERNEL
949 select CPU_SUPPORTS_HIGHMEM
951 Choose this option to build a kernel for release 2 or later of the
952 MIPS32 architecture. Most modern embedded systems with a 32-bit
953 MIPS processor are based on a MIPS32 processor. If you know the
954 specific type of processor in your system, choose those that one
955 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
958 bool "MIPS64 Release 1"
959 depends on SYS_HAS_CPU_MIPS64_R1
961 select CPU_HAS_PREFETCH
962 select CPU_SUPPORTS_32BIT_KERNEL
963 select CPU_SUPPORTS_64BIT_KERNEL
964 select CPU_SUPPORTS_HIGHMEM
966 Choose this option to build a kernel for release 1 or later of the
967 MIPS64 architecture. Many modern embedded systems with a 64-bit
968 MIPS processor are based on a MIPS64 processor. If you know the
969 specific type of processor in your system, choose those that one
970 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
971 Release 2 of the MIPS64 architecture is available since several
972 years so chances are you even have a MIPS64 Release 2 processor
973 in which case you should choose CPU_MIPS64_R2 instead for better
977 bool "MIPS64 Release 2"
978 depends on SYS_HAS_CPU_MIPS64_R2
980 select CPU_HAS_PREFETCH
981 select CPU_SUPPORTS_32BIT_KERNEL
982 select CPU_SUPPORTS_64BIT_KERNEL
983 select CPU_SUPPORTS_HIGHMEM
985 Choose this option to build a kernel for release 2 or later of the
986 MIPS64 architecture. Many modern embedded systems with a 64-bit
987 MIPS processor are based on a MIPS64 processor. If you know the
988 specific type of processor in your system, choose those that one
989 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
993 depends on SYS_HAS_CPU_R3000
995 select CPU_SUPPORTS_32BIT_KERNEL
996 select CPU_SUPPORTS_HIGHMEM
998 Please make sure to pick the right CPU type. Linux/MIPS is not
999 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1000 *not* work on R4000 machines and vice versa. However, since most
1001 of the supported machines have an R4000 (or similar) CPU, R4x00
1002 might be a safe bet. If the resulting kernel does not work,
1003 try to recompile with R3000.
1007 depends on SYS_HAS_CPU_TX39XX
1008 select CPU_SUPPORTS_32BIT_KERNEL
1012 depends on SYS_HAS_CPU_VR41XX
1013 select CPU_SUPPORTS_32BIT_KERNEL
1014 select CPU_SUPPORTS_64BIT_KERNEL
1016 The options selects support for the NEC VR4100 series of processors.
1017 Only choose this option if you have one of these processors as a
1018 kernel built with this option will not run on any other type of
1019 processor or vice versa.
1023 depends on SYS_HAS_CPU_R4300
1025 select CPU_SUPPORTS_32BIT_KERNEL
1026 select CPU_SUPPORTS_64BIT_KERNEL
1028 MIPS Technologies R4300-series processors.
1032 depends on SYS_HAS_CPU_R4X00
1034 select CPU_SUPPORTS_32BIT_KERNEL
1035 select CPU_SUPPORTS_64BIT_KERNEL
1037 MIPS Technologies R4000-series processors other than 4300, including
1038 the R4000, R4400, R4600, and 4700.
1042 depends on SYS_HAS_CPU_TX49XX
1044 select CPU_HAS_PREFETCH
1045 select CPU_SUPPORTS_32BIT_KERNEL
1046 select CPU_SUPPORTS_64BIT_KERNEL
1050 depends on SYS_HAS_CPU_R5000
1052 select CPU_SUPPORTS_32BIT_KERNEL
1053 select CPU_SUPPORTS_64BIT_KERNEL
1055 MIPS Technologies R5000-series processors other than the Nevada.
1059 depends on SYS_HAS_CPU_R5432
1061 select CPU_SUPPORTS_32BIT_KERNEL
1062 select CPU_SUPPORTS_64BIT_KERNEL
1066 depends on EXPERIMENTAL
1068 depends on SYS_HAS_CPU_R6000
1069 select CPU_SUPPORTS_32BIT_KERNEL
1071 MIPS Technologies R6000 and R6000A series processors. Note these
1072 processors are extremely rare and the support for them is incomplete.
1076 depends on SYS_HAS_CPU_NEVADA
1078 select CPU_SUPPORTS_32BIT_KERNEL
1079 select CPU_SUPPORTS_64BIT_KERNEL
1081 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1085 depends on EXPERIMENTAL
1086 depends on SYS_HAS_CPU_R8000
1088 select CPU_HAS_PREFETCH
1089 select CPU_SUPPORTS_64BIT_KERNEL
1091 MIPS Technologies R8000 processors. Note these processors are
1092 uncommon and the support for them is incomplete.
1096 depends on SYS_HAS_CPU_R10000
1098 select CPU_HAS_PREFETCH
1099 select CPU_SUPPORTS_32BIT_KERNEL
1100 select CPU_SUPPORTS_64BIT_KERNEL
1101 select CPU_SUPPORTS_HIGHMEM
1103 MIPS Technologies R10000-series processors.
1107 depends on SYS_HAS_CPU_RM7000
1109 select CPU_HAS_PREFETCH
1110 select CPU_SUPPORTS_32BIT_KERNEL
1111 select CPU_SUPPORTS_64BIT_KERNEL
1112 select CPU_SUPPORTS_HIGHMEM
1116 depends on SYS_HAS_CPU_RM9000
1118 select CPU_HAS_PREFETCH
1119 select CPU_SUPPORTS_32BIT_KERNEL
1120 select CPU_SUPPORTS_64BIT_KERNEL
1121 select CPU_SUPPORTS_HIGHMEM
1122 select WEAK_ORDERING
1126 depends on SYS_HAS_CPU_SB1
1128 select CPU_SUPPORTS_32BIT_KERNEL
1129 select CPU_SUPPORTS_64BIT_KERNEL
1130 select CPU_SUPPORTS_HIGHMEM
1131 select WEAK_ORDERING
1135 config SYS_HAS_CPU_LOONGSON2
1138 config SYS_HAS_CPU_MIPS32_R1
1141 config SYS_HAS_CPU_MIPS32_R2
1144 config SYS_HAS_CPU_MIPS64_R1
1147 config SYS_HAS_CPU_MIPS64_R2
1150 config SYS_HAS_CPU_R3000
1153 config SYS_HAS_CPU_TX39XX
1156 config SYS_HAS_CPU_VR41XX
1159 config SYS_HAS_CPU_R4300
1162 config SYS_HAS_CPU_R4X00
1165 config SYS_HAS_CPU_TX49XX
1168 config SYS_HAS_CPU_R5000
1171 config SYS_HAS_CPU_R5432
1174 config SYS_HAS_CPU_R6000
1177 config SYS_HAS_CPU_NEVADA
1180 config SYS_HAS_CPU_R8000
1183 config SYS_HAS_CPU_R10000
1186 config SYS_HAS_CPU_RM7000
1189 config SYS_HAS_CPU_RM9000
1192 config SYS_HAS_CPU_SB1
1196 # CPU may reorder R->R, R->W, W->R, W->W
1197 # Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
1199 config WEAK_ORDERING
1203 # CPU may reorder reads and writes beyond LL/SC
1204 # CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
1206 config WEAK_REORDERING_BEYOND_LLSC
1211 # These two indicate any level of the MIPS32 and MIPS64 architecture
1215 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1219 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1222 # These two indicate the revision of the architecture, either Release 1 or Release 2
1226 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1230 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
1232 config SYS_SUPPORTS_32BIT_KERNEL
1234 config SYS_SUPPORTS_64BIT_KERNEL
1236 config CPU_SUPPORTS_32BIT_KERNEL
1238 config CPU_SUPPORTS_64BIT_KERNEL
1245 prompt "Kernel code model"
1247 You should only select this option if you have a workload that
1248 actually benefits from 64-bit processing or if your machine has
1249 large memory. You will only be presented a single option in this
1250 menu if your system does not support both 32-bit and 64-bit kernels.
1253 bool "32-bit kernel"
1254 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1257 Select this option if you want to build a 32-bit kernel.
1259 bool "64-bit kernel"
1260 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1262 Select this option if you want to build a 64-bit kernel.
1267 prompt "Kernel page size"
1268 default PAGE_SIZE_4KB
1270 config PAGE_SIZE_4KB
1273 This option select the standard 4kB Linux page size. On some
1274 R3000-family processors this is the only available page size. Using
1275 4kB page size will minimize memory consumption and is therefore
1276 recommended for low memory systems.
1278 config PAGE_SIZE_8KB
1280 depends on EXPERIMENTAL && CPU_R8000
1282 Using 8kB page size will result in higher performance kernel at
1283 the price of higher memory consumption. This option is available
1284 only on the R8000 processor. Not that at the time of this writing
1285 this option is still high experimental; there are also issues with
1286 compatibility of user applications.
1288 config PAGE_SIZE_16KB
1290 depends on !CPU_R3000 && !CPU_TX39XX
1292 Using 16kB page size will result in higher performance kernel at
1293 the price of higher memory consumption. This option is available on
1294 all non-R3000 family processors. Note that you will need a suitable
1295 Linux distribution to support this.
1297 config PAGE_SIZE_64KB
1299 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1301 Using 64kB page size will result in higher performance kernel at
1302 the price of higher memory consumption. This option is available on
1303 all non-R3000 family processor. Not that at the time of this
1304 writing this option is still high experimental.
1311 config IP22_CPU_SCACHE
1316 # Support for a MIPS32 / MIPS64 style S-caches
1318 config MIPS_CPU_SCACHE
1322 config R5000_CPU_SCACHE
1326 config RM7000_CPU_SCACHE
1330 config SIBYTE_DMA_PAGEOPS
1331 bool "Use DMA to clear/copy pages"
1334 Instead of using the CPU to zero and copy pages, use a Data Mover
1335 channel. These DMA channels are otherwise unused by the standard
1336 SiByte Linux port. Seems to give a small performance benefit.
1338 config CPU_HAS_PREFETCH
1342 prompt "MIPS MT options"
1344 config MIPS_MT_DISABLED
1345 bool "Disable multithreading support."
1347 Use this option if your workload can't take advantage of
1348 MIPS hardware multithreading support. On systems that don't have
1349 the option of an MT-enabled processor this option will be the only
1350 option in this menu.
1353 bool "Use 1 TC on each available VPE for SMP"
1354 depends on SYS_SUPPORTS_MULTITHREADING
1355 select CPU_MIPSR2_IRQ_VI
1356 select CPU_MIPSR2_IRQ_EI
1357 select CPU_MIPSR2_SRS
1359 select NR_CPUS_DEFAULT_2
1361 select SYS_SUPPORTS_SMP
1363 This is a kernel model which is also known a VSMP or lately
1364 has been marketesed into SMVP.
1367 bool "SMTC: Use all TCs on all VPEs for SMP"
1368 depends on CPU_MIPS32_R2
1369 #depends on CPU_MIPS64_R2 # once there is hardware ...
1370 depends on SYS_SUPPORTS_MULTITHREADING
1371 select CPU_MIPSR2_IRQ_VI
1372 select CPU_MIPSR2_IRQ_EI
1373 select CPU_MIPSR2_SRS
1375 select NR_CPUS_DEFAULT_8
1377 select SYS_SUPPORTS_SMP
1379 This is a kernel model which is known a SMTC or lately has been
1380 marketesed into SMVP.
1387 config SYS_SUPPORTS_MULTITHREADING
1390 config MIPS_MT_FPAFF
1391 bool "Dynamic FPU affinity for FP-intensive threads"
1393 depends on MIPS_MT_SMP || MIPS_MT_SMTC
1395 config MIPS_VPE_LOADER
1396 bool "VPE loader support."
1397 depends on SYS_SUPPORTS_MULTITHREADING
1398 select CPU_MIPSR2_IRQ_VI
1399 select CPU_MIPSR2_IRQ_EI
1400 select CPU_MIPSR2_SRS
1403 Includes a loader for loading an elf relocatable object
1404 onto another VPE and running it.
1406 config MIPS_MT_SMTC_INSTANT_REPLAY
1407 bool "Low-latency Dispatch of Deferred SMTC IPIs"
1408 depends on MIPS_MT_SMTC && !PREEMPT
1411 SMTC pseudo-interrupts between TCs are deferred and queued
1412 if the target TC is interrupt-inhibited (IXMT). In the first
1413 SMTC prototypes, these queued IPIs were serviced on return
1414 to user mode, or on entry into the kernel idle loop. The
1415 INSTANT_REPLAY option dispatches them as part of local_irq_restore()
1416 processing, which adds runtime overhead (hence the option to turn
1417 it off), but ensures that IPIs are handled promptly even under
1418 heavy I/O interrupt load.
1420 config MIPS_MT_SMTC_IM_BACKSTOP
1421 bool "Use per-TC register bits as backstop for inhibited IM bits"
1422 depends on MIPS_MT_SMTC
1425 To support multiple TC microthreads acting as "CPUs" within
1426 a VPE, VPE-wide interrupt mask bits must be specially manipulated
1427 during interrupt handling. To support legacy drivers and interrupt
1428 controller management code, SMTC has a "backstop" to track and
1429 if necessary restore the interrupt mask. This has some performance
1430 impact on interrupt service overhead. Disable it only if you know
1433 config MIPS_MT_SMTC_IRQAFF
1434 bool "Support IRQ affinity API"
1435 depends on MIPS_MT_SMTC
1438 Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.)
1439 for SMTC Linux kernel. Requires platform support, of which
1440 an example can be found in the MIPS kernel i8259 and Malta
1441 platform code. It is recommended that MIPS_MT_SMTC_INSTANT_REPLAY
1442 be enabled if MIPS_MT_SMTC_IRQAFF is used. Adds overhead to
1443 interrupt dispatch, and should be used only if you know what
1446 config MIPS_VPE_LOADER_TOM
1447 bool "Load VPE program into memory hidden from linux"
1448 depends on MIPS_VPE_LOADER
1451 The loader can use memory that is present but has been hidden from
1452 Linux using the kernel command line option "mem=xxMB". It's up to
1453 you to ensure the amount you put in the option and the space your
1454 program requires is less or equal to the amount physically present.
1456 # this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1457 config MIPS_VPE_APSP_API
1458 bool "Enable support for AP/SP API (RTLX)"
1459 depends on MIPS_VPE_LOADER
1462 config MIPS_APSP_KSPD
1464 depends on MIPS_VPE_APSP_API
1467 KSPD is a kernel daemon that accepts syscall requests from the SP
1468 side, actions them and returns the results. It also handles the
1469 "exit" syscall notifying other kernel modules the SP program is
1470 exiting. You probably want to say yes here.
1472 config SB1_PASS_1_WORKAROUNDS
1474 depends on CPU_SB1_PASS_1
1477 config SB1_PASS_2_WORKAROUNDS
1479 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1482 config SB1_PASS_2_1_WORKAROUNDS
1484 depends on CPU_SB1 && CPU_SB1_PASS_2
1487 config 64BIT_PHYS_ADDR
1493 config CPU_HAS_SMARTMIPS
1494 depends on SYS_SUPPORTS_SMARTMIPS
1495 bool "Support for the SmartMIPS ASE"
1497 SmartMIPS is a extension of the MIPS32 architecture aimed at
1498 increased security at both hardware and software level for
1499 smartcards. Enabling this option will allow proper use of the
1500 SmartMIPS instructions by Linux applications. However a kernel with
1501 this option will not work on a MIPS core without SmartMIPS core. If
1502 you don't know you probably don't have SmartMIPS and should say N
1508 config 64BIT_CONTEXT
1509 bool "Save 64bit integer registers"
1510 depends on 32BIT && CPU_LOONGSON2
1512 Loongson2 CPU is 64bit , when used in 32BIT mode, its integer
1513 registers can still be accessed as 64bit, mainly for multimedia
1514 instructions. We must have all 64bit save/restored to make sure
1515 those instructions to get correct result.
1518 # Vectored interrupt mode is an R2 feature
1520 config CPU_MIPSR2_IRQ_VI
1524 # Extended interrupt mode is an R2 feature
1526 config CPU_MIPSR2_IRQ_EI
1530 # Shadow registers are an R2 feature
1532 config CPU_MIPSR2_SRS
1537 depends on !CPU_R3000
1541 # Use the generic interrupt handling code in kernel/irq/:
1543 config GENERIC_HARDIRQS
1547 config GENERIC_IRQ_PROBE
1555 # - Highmem only makes sense for the 32-bit kernel.
1556 # - The current highmem code will only work properly on physically indexed
1557 # caches such as R3000, SB1, R7000 or those that look like they're virtually
1558 # indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1559 # moment we protect the user and offer the highmem option only on machines
1560 # where it's known to be safe. This will not offer highmem on a few systems
1561 # such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1562 # indexed CPUs but we're playing safe.
1563 # - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1564 # know they might have memory configurations that could make use of highmem
1568 bool "High Memory Support"
1569 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1571 config CPU_SUPPORTS_HIGHMEM
1574 config SYS_SUPPORTS_HIGHMEM
1577 config SYS_SUPPORTS_SMARTMIPS
1580 config ARCH_FLATMEM_ENABLE
1584 config ARCH_DISCONTIGMEM_ENABLE
1586 default y if SGI_IP27
1588 Say Y to support efficient handling of discontiguous physical memory,
1589 for architectures which are either NUMA (Non-Uniform Memory Access)
1590 or have huge holes in the physical address space for other reasons.
1591 See <file:Documentation/vm/numa> for more.
1593 config ARCH_SPARSEMEM_ENABLE
1595 select SPARSEMEM_STATIC
1599 depends on SYS_SUPPORTS_NUMA
1601 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1602 Access). This option improves performance on systems with more
1603 than two nodes; on two node systems it is generally better to
1604 leave it disabled; on single node systems disable this option
1607 config SYS_SUPPORTS_NUMA
1613 depends on NEED_MULTIPLE_NODES
1618 bool "Multi-Processing support"
1619 depends on SYS_SUPPORTS_SMP
1622 This enables support for systems with more than one CPU. If you have
1623 a system with only one CPU, like most personal computers, say N. If
1624 you have a system with more than one CPU, say Y.
1626 If you say N here, the kernel will run on single and multiprocessor
1627 machines, but will use only one CPU of a multiprocessor machine. If
1628 you say Y here, the kernel will run on many, but not all,
1629 singleprocessor machines. On a singleprocessor machine, the kernel
1630 will run faster if you say N here.
1632 People using multiprocessor machines who say Y here should also say
1633 Y to "Enhanced Real Time Clock Support", below.
1635 See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1636 available at <http://www.tldp.org/docs.html#howto>.
1638 If you don't know what to do here, say N.
1640 config SYS_SUPPORTS_SMP
1643 config NR_CPUS_DEFAULT_1
1646 config NR_CPUS_DEFAULT_2
1649 config NR_CPUS_DEFAULT_4
1652 config NR_CPUS_DEFAULT_8
1655 config NR_CPUS_DEFAULT_16
1658 config NR_CPUS_DEFAULT_32
1661 config NR_CPUS_DEFAULT_64
1665 int "Maximum number of CPUs (2-64)"
1666 range 1 64 if NR_CPUS_DEFAULT_1
1668 default "1" if NR_CPUS_DEFAULT_1
1669 default "2" if NR_CPUS_DEFAULT_2
1670 default "4" if NR_CPUS_DEFAULT_4
1671 default "8" if NR_CPUS_DEFAULT_8
1672 default "16" if NR_CPUS_DEFAULT_16
1673 default "32" if NR_CPUS_DEFAULT_32
1674 default "64" if NR_CPUS_DEFAULT_64
1676 This allows you to specify the maximum number of CPUs which this
1677 kernel will support. The maximum supported value is 32 for 32-bit
1678 kernel and 64 for 64-bit kernels; the minimum value which makes
1679 sense is 1 for Qemu (useful only for kernel debugging purposes)
1680 and 2 for all others.
1682 This is purely to save memory - each supported CPU adds
1683 approximately eight kilobytes to the kernel image. For best
1684 performance should round up your number of processors to the next
1688 # Timer Interrupt Frequency Configuration
1692 prompt "Timer frequency"
1695 Allows the configuration of the timer frequency.
1698 bool "48 HZ" if SYS_SUPPORTS_48HZ
1701 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1704 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1707 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1710 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1713 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1716 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1720 config SYS_SUPPORTS_48HZ
1723 config SYS_SUPPORTS_100HZ
1726 config SYS_SUPPORTS_128HZ
1729 config SYS_SUPPORTS_250HZ
1732 config SYS_SUPPORTS_256HZ
1735 config SYS_SUPPORTS_1000HZ
1738 config SYS_SUPPORTS_1024HZ
1741 config SYS_SUPPORTS_ARBIT_HZ
1743 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1744 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1745 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1746 !SYS_SUPPORTS_1024HZ
1751 default 100 if HZ_100
1752 default 128 if HZ_128
1753 default 250 if HZ_250
1754 default 256 if HZ_256
1755 default 1000 if HZ_1000
1756 default 1024 if HZ_1024
1758 source "kernel/Kconfig.preempt"
1760 config MIPS_INSANE_LARGE
1761 bool "Support for large 64-bit configurations"
1762 depends on CPU_R10000 && 64BIT
1764 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1765 previous 64-bit processors which only supported 40 bit / 1TB. If you
1766 need processes of more than 1TB virtual address space, say Y here.
1767 This will result in additional memory usage, so it is not
1768 recommended for normal users.
1771 bool "Kexec system call (EXPERIMENTAL)"
1772 depends on EXPERIMENTAL
1774 kexec is a system call that implements the ability to shutdown your
1775 current kernel, and to start another kernel. It is like a reboot
1776 but it is independent of the system firmware. And like a reboot
1777 you can start any kernel with it, not just Linux.
1779 The name comes from the similiarity to the exec system call.
1781 It is an ongoing process to be certain the hardware in a machine
1782 is properly shutdown, so do not be surprised if this code does not
1783 initially work for you. It may help to enable device hotplugging
1784 support. As of this writing the exact hardware interface is
1785 strongly in flux, so no good recommendation can be made.
1788 bool "Enable seccomp to safely compute untrusted bytecode"
1792 This kernel feature is useful for number crunching applications
1793 that may need to compute untrusted bytecode during their
1794 execution. By using pipes or other transports made available to
1795 the process as file descriptors supporting the read/write
1796 syscalls, it's possible to isolate those applications in
1797 their own address space using seccomp. Once seccomp is
1798 enabled via /proc/<pid>/seccomp, it cannot be disabled
1799 and the task is only allowed to execute a few safe syscalls
1800 defined by each seccomp mode.
1802 If unsure, say Y. Only embedded should say N here.
1806 config RWSEM_GENERIC_SPINLOCK
1810 config LOCKDEP_SUPPORT
1814 config STACKTRACE_SUPPORT
1818 source "init/Kconfig"
1820 menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1828 bool "Support for PCI controller"
1829 depends on HW_HAS_PCI
1832 Find out whether you have a PCI motherboard. PCI is the name of a
1833 bus system, i.e. the way the CPU talks to the other stuff inside
1834 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1837 The PCI-HOWTO, available from
1838 <http://www.tldp.org/docs.html#howto>, contains valuable
1839 information about which PCI hardware does work under Linux and which
1845 source "drivers/pci/Kconfig"
1848 # ISA support is now enabled via select. Too many systems still have the one
1849 # or other ISA chip on the board that users don't know about so don't expect
1850 # users to choose the right thing ...
1857 depends on HW_HAS_EISA
1859 select GENERIC_ISA_DMA
1861 The Extended Industry Standard Architecture (EISA) bus was
1862 developed as an open alternative to the IBM MicroChannel bus.
1864 The EISA bus provided some of the features of the IBM MicroChannel
1865 bus while maintaining backward compatibility with cards made for
1866 the older ISA bus. The EISA bus saw limited use between 1988 and
1867 1995 when it was made obsolete by the PCI bus.
1869 Say Y here if you are building a kernel for an EISA-based machine.
1873 source "drivers/eisa/Kconfig"
1876 bool "TURBOchannel support"
1877 depends on MACH_DECSTATION
1879 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1880 processors. Documentation on writing device drivers for TurboChannel
1882 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1885 # bool "Access.Bus support"
1895 source "drivers/pcmcia/Kconfig"
1897 source "drivers/pci/hotplug/Kconfig"
1901 menu "Executable file formats"
1903 source "fs/Kconfig.binfmt"
1909 bool "Include IRIX binary compatibility"
1910 depends on CPU_BIG_ENDIAN && 32BIT && BROKEN
1912 config MIPS32_COMPAT
1913 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
1916 Select this option if you want Linux/MIPS 32-bit binary
1917 compatibility. Since all software available for Linux/MIPS is
1918 currently 32-bit you should say Y here.
1922 depends on MIPS32_COMPAT
1925 config SYSVIPC_COMPAT
1927 depends on COMPAT && SYSVIPC
1931 bool "Kernel support for o32 binaries"
1932 depends on MIPS32_COMPAT
1934 Select this option if you want to run o32 binaries. These are pure
1935 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
1936 existing binaries are in this format.
1941 bool "Kernel support for n32 binaries"
1942 depends on MIPS32_COMPAT
1944 Select this option if you want to run n32 binaries. These are
1945 64-bit binaries using 32-bit quantities for addressing and certain
1946 data that would normally be 64-bit. They are used in special
1953 default y if MIPS32_O32 || MIPS32_N32
1957 menu "Power management options"
1959 source "kernel/power/Kconfig"
1963 source "net/Kconfig"
1965 source "drivers/Kconfig"
1969 source "arch/mips/oprofile/Kconfig"
1971 source "arch/mips/Kconfig.debug"
1973 source "security/Kconfig"
1975 source "crypto/Kconfig"
1977 source "lib/Kconfig"