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_64BIT_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.
50 select DMA_NONCOHERENT
54 select PCI_GT64XXX_PCI0
55 select SYS_HAS_CPU_NEVADA
56 select SYS_HAS_EARLY_PRINTK
57 select SYS_SUPPORTS_32BIT_KERNEL
58 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
59 select SYS_SUPPORTS_LITTLE_ENDIAN
60 select GENERIC_HARDIRQS_NO__DO_IRQ
62 config MACH_DECSTATION
65 select DMA_NONCOHERENT
68 select SYS_HAS_CPU_R3000
69 select SYS_HAS_CPU_R4X00
70 select SYS_SUPPORTS_32BIT_KERNEL
71 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
72 select SYS_SUPPORTS_LITTLE_ENDIAN
73 select SYS_SUPPORTS_128HZ
74 select SYS_SUPPORTS_256HZ
75 select SYS_SUPPORTS_1024HZ
77 This enables support for DEC's MIPS based workstations. For details
78 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
79 DECstation porting pages on <http://decstation.unix-ag.org/>.
81 If you have one of the following DECstation Models you definitely
82 want to choose R4xx0 for the CPU Type:
89 otherwise choose R3000.
92 bool "Jazz family of machines"
95 select ARCH_MAY_HAVE_PC_FDC
96 select GENERIC_ISA_DMA
100 select SYS_HAS_CPU_R4X00
101 select SYS_SUPPORTS_32BIT_KERNEL
102 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
103 select SYS_SUPPORTS_100HZ
104 select GENERIC_HARDIRQS_NO__DO_IRQ
106 This a family of machines based on the MIPS R4030 chipset which was
107 used by several vendors to build RISC/os and Windows NT workstations.
108 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
109 Olivetti M700-10 workstations.
112 bool "Lemote Fulong mini-PC"
113 select ARCH_SPARSEMEM_ENABLE
114 select SYS_HAS_CPU_LOONGSON2
115 select DMA_NONCOHERENT
118 select HAVE_STD_PC_SERIAL_PORT
123 select SYS_SUPPORTS_32BIT_KERNEL
124 select SYS_SUPPORTS_64BIT_KERNEL
125 select SYS_SUPPORTS_LITTLE_ENDIAN
126 select SYS_SUPPORTS_HIGHMEM
127 select SYS_HAS_EARLY_PRINTK
128 select GENERIC_HARDIRQS_NO__DO_IRQ
131 Lemote Fulong mini-PC board based on the Chinese Loongson-2E CPU and
135 bool "MIPS Atlas board"
137 select DMA_NONCOHERENT
138 select SYS_HAS_EARLY_PRINTK
141 select MIPS_BOARDS_GEN
143 select PCI_GT64XXX_PCI0
145 select RM7000_CPU_SCACHE
147 select SYS_HAS_CPU_MIPS32_R1
148 select SYS_HAS_CPU_MIPS32_R2
149 select SYS_HAS_CPU_MIPS64_R1
150 select SYS_HAS_CPU_NEVADA
151 select SYS_HAS_CPU_RM7000
152 select SYS_SUPPORTS_32BIT_KERNEL
153 select SYS_SUPPORTS_64BIT_KERNEL
154 select SYS_SUPPORTS_BIG_ENDIAN
155 select SYS_SUPPORTS_LITTLE_ENDIAN
156 select SYS_SUPPORTS_MULTITHREADING if EXPERIMENTAL
157 select SYS_SUPPORTS_SMARTMIPS
158 select GENERIC_HARDIRQS_NO__DO_IRQ
160 This enables support for the MIPS Technologies Atlas evaluation
164 bool "MIPS Malta board"
165 select ARCH_MAY_HAVE_PC_FDC
167 select DMA_NONCOHERENT
168 select GENERIC_ISA_DMA
172 select MIPS_BOARDS_GEN
174 select MIPS_CPU_SCACHE
175 select PCI_GT64XXX_PCI0
178 select SYS_HAS_CPU_MIPS32_R1
179 select SYS_HAS_CPU_MIPS32_R2
180 select SYS_HAS_CPU_MIPS64_R1
181 select SYS_HAS_CPU_NEVADA
182 select SYS_HAS_CPU_RM7000
183 select SYS_HAS_EARLY_PRINTK
184 select SYS_SUPPORTS_32BIT_KERNEL
185 select SYS_SUPPORTS_64BIT_KERNEL
186 select SYS_SUPPORTS_BIG_ENDIAN
187 select SYS_SUPPORTS_LITTLE_ENDIAN
188 select SYS_SUPPORTS_MULTITHREADING
189 select SYS_SUPPORTS_SMARTMIPS
191 This enables support for the MIPS Technologies Malta evaluation
195 bool "MIPS SEAD board (EXPERIMENTAL)"
196 depends on EXPERIMENTAL
198 select DMA_NONCOHERENT
199 select SYS_HAS_EARLY_PRINTK
200 select MIPS_BOARDS_GEN
201 select SYS_HAS_CPU_MIPS32_R1
202 select SYS_HAS_CPU_MIPS32_R2
203 select SYS_HAS_CPU_MIPS64_R1
204 select SYS_SUPPORTS_32BIT_KERNEL
205 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
206 select SYS_SUPPORTS_BIG_ENDIAN
207 select SYS_SUPPORTS_LITTLE_ENDIAN
208 select SYS_SUPPORTS_SMARTMIPS
210 This enables support for the MIPS Technologies SEAD evaluation
214 bool 'MIPS simulator (MIPSsim)'
215 select DMA_NONCOHERENT
216 select SYS_HAS_EARLY_PRINTK
219 select SYS_HAS_CPU_MIPS32_R1
220 select SYS_HAS_CPU_MIPS32_R2
221 select SYS_HAS_EARLY_PRINTK
222 select SYS_SUPPORTS_32BIT_KERNEL
223 select SYS_SUPPORTS_BIG_ENDIAN
224 select SYS_SUPPORTS_MULTITHREADING
225 select SYS_SUPPORTS_LITTLE_ENDIAN
227 This option enables support for MIPS Technologies MIPSsim software
231 bool "NEC DDB Vrc-5477"
232 select DDB5XXX_COMMON
233 select DMA_NONCOHERENT
237 select SYS_HAS_CPU_R5432
238 select SYS_SUPPORTS_32BIT_KERNEL
239 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
240 select SYS_SUPPORTS_KGDB
241 select SYS_SUPPORTS_KGDB
242 select SYS_SUPPORTS_LITTLE_ENDIAN
244 This enables support for the R5432-based NEC DDB Vrc-5477,
245 or Rockhopper/SolutionGear boards with R5432/R5500 CPUs.
247 Features : kernel debugging, serial terminal, NFS root fs, on-board
248 ether port USB, AC97, PCI, etc.
251 bool "NEC EMMA2RH Mark-eins"
252 select DMA_NONCOHERENT
256 select SYS_SUPPORTS_32BIT_KERNEL
257 select SYS_SUPPORTS_BIG_ENDIAN
258 select SYS_SUPPORTS_LITTLE_ENDIAN
259 select SYS_HAS_CPU_R5000
261 This enables support for the R5432-based NEC Mark-eins
262 boards with R5500 CPU.
265 bool "NEC VR4100 series based machines"
266 select SYS_HAS_CPU_VR41XX
267 select GENERIC_HARDIRQS_NO__DO_IRQ
270 bool "Philips PNX8550 based JBS board"
272 select SYS_SUPPORTS_LITTLE_ENDIAN
274 config PNX8550_STB810
275 bool "Philips PNX8550 based STB810 board"
277 select SYS_SUPPORTS_LITTLE_ENDIAN
280 bool "PMC-Sierra MSP chipsets"
281 depends on EXPERIMENTAL
282 select DMA_NONCOHERENT
284 select NO_EXCEPT_FILL
286 select SYS_HAS_CPU_MIPS32_R1
287 select SYS_HAS_CPU_MIPS32_R2
288 select SYS_SUPPORTS_32BIT_KERNEL
289 select SYS_SUPPORTS_BIG_ENDIAN
290 select SYS_SUPPORTS_KGDB
293 select SERIAL_8250_CONSOLE
295 This adds support for the PMC-Sierra family of Multi-Service
296 Processor System-On-A-Chips. These parts include a number
297 of integrated peripherals, interfaces and DSPs in addition to
298 a variety of MIPS cores.
301 bool "PMC-Sierra Yosemite eval board"
308 select SYS_HAS_CPU_RM9000
309 select SYS_HAS_EARLY_PRINTK
310 select SYS_SUPPORTS_32BIT_KERNEL
311 select SYS_SUPPORTS_64BIT_KERNEL
312 select SYS_SUPPORTS_BIG_ENDIAN
313 select SYS_SUPPORTS_HIGHMEM
314 select SYS_SUPPORTS_KGDB
315 select SYS_SUPPORTS_SMP
317 Yosemite is an evaluation board for the RM9000x2 processor
318 manufactured by PMC-Sierra.
323 select GENERIC_ISA_DMA
324 select HAVE_STD_PC_SERIAL_PORT
329 select SYS_HAS_CPU_MIPS32_R1
330 select SYS_SUPPORTS_32BIT_KERNEL
331 select SYS_SUPPORTS_BIG_ENDIAN
332 select SYS_SUPPORTS_LITTLE_ENDIAN
333 select ARCH_SPARSEMEM_ENABLE
334 select GENERIC_HARDIRQS_NO__DO_IRQ
335 select NR_CPUS_DEFAULT_1
336 select SYS_SUPPORTS_SMP
338 Qemu is a software emulator which among other architectures also
339 can simulate a MIPS32 4Kc system. This patch adds support for the
340 system architecture that currently is being simulated by Qemu. It
341 will eventually be removed again when Qemu has the capability to
342 simulate actual MIPS hardware platforms. More information on Qemu
343 can be found at http://www.linux-mips.org/wiki/Qemu.
346 bool "SGI IP22 (Indy/Indigo2)"
350 select DMA_NONCOHERENT
352 select IP22_CPU_SCACHE
354 select GENERIC_ISA_DMA_SUPPORT_BROKEN
356 select SYS_HAS_CPU_R4X00
357 select SYS_HAS_CPU_R5000
358 select SYS_HAS_EARLY_PRINTK
359 select SYS_SUPPORTS_32BIT_KERNEL
360 select SYS_SUPPORTS_64BIT_KERNEL
361 select SYS_SUPPORTS_BIG_ENDIAN
363 This are the SGI Indy, Challenge S and Indigo2, as well as certain
364 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
365 that runs on these, say Y here.
368 bool "SGI IP27 (Origin200/2000)"
373 select SYS_HAS_EARLY_PRINTK
375 select NR_CPUS_DEFAULT_64
377 select SYS_HAS_CPU_R10000
378 select SYS_SUPPORTS_64BIT_KERNEL
379 select SYS_SUPPORTS_BIG_ENDIAN
380 select SYS_SUPPORTS_KGDB
381 select SYS_SUPPORTS_NUMA
382 select SYS_SUPPORTS_SMP
383 select GENERIC_HARDIRQS_NO__DO_IRQ
385 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
386 workstations. To compile a Linux kernel that runs on these, say Y
394 select DMA_NONCOHERENT
396 select R5000_CPU_SCACHE
397 select RM7000_CPU_SCACHE
398 select SYS_HAS_CPU_R5000
399 select SYS_HAS_CPU_R10000 if BROKEN
400 select SYS_HAS_CPU_RM7000
401 select SYS_HAS_CPU_NEVADA
402 select SYS_SUPPORTS_64BIT_KERNEL
403 select SYS_SUPPORTS_BIG_ENDIAN
405 If you want this kernel to run on SGI O2 workstation, say Y here.
408 bool "Sibyte BCM91120C-CRhine"
409 depends on EXPERIMENTAL
412 select SIBYTE_BCM1120
414 select SYS_HAS_CPU_SB1
415 select SYS_SUPPORTS_BIG_ENDIAN
416 select SYS_SUPPORTS_LITTLE_ENDIAN
419 bool "Sibyte BCM91120x-Carmel"
420 depends on EXPERIMENTAL
423 select SIBYTE_BCM1120
425 select SYS_HAS_CPU_SB1
426 select SYS_SUPPORTS_BIG_ENDIAN
427 select SYS_SUPPORTS_LITTLE_ENDIAN
430 bool "Sibyte BCM91125C-CRhone"
431 depends on EXPERIMENTAL
434 select SIBYTE_BCM1125
436 select SYS_HAS_CPU_SB1
437 select SYS_SUPPORTS_BIG_ENDIAN
438 select SYS_SUPPORTS_HIGHMEM
439 select SYS_SUPPORTS_LITTLE_ENDIAN
442 bool "Sibyte BCM91125E-Rhone"
443 depends on EXPERIMENTAL
446 select SIBYTE_BCM1125H
448 select SYS_HAS_CPU_SB1
449 select SYS_SUPPORTS_BIG_ENDIAN
450 select SYS_SUPPORTS_LITTLE_ENDIAN
453 bool "Sibyte BCM91250A-SWARM"
456 select NR_CPUS_DEFAULT_2
459 select SYS_HAS_CPU_SB1
460 select SYS_SUPPORTS_BIG_ENDIAN
461 select SYS_SUPPORTS_HIGHMEM
462 select SYS_SUPPORTS_KGDB
463 select SYS_SUPPORTS_LITTLE_ENDIAN
465 config SIBYTE_LITTLESUR
466 bool "Sibyte BCM91250C2-LittleSur"
467 depends on EXPERIMENTAL
470 select NR_CPUS_DEFAULT_2
473 select SYS_HAS_CPU_SB1
474 select SYS_SUPPORTS_BIG_ENDIAN
475 select SYS_SUPPORTS_HIGHMEM
476 select SYS_SUPPORTS_LITTLE_ENDIAN
478 config SIBYTE_SENTOSA
479 bool "Sibyte BCM91250E-Sentosa"
480 depends on EXPERIMENTAL
483 select NR_CPUS_DEFAULT_2
486 select SYS_HAS_CPU_SB1
487 select SYS_SUPPORTS_BIG_ENDIAN
488 select SYS_SUPPORTS_LITTLE_ENDIAN
490 config SIBYTE_PTSWARM
491 bool "Sibyte BCM91250PT-PTSWARM"
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_HIGHMEM
501 select SYS_SUPPORTS_LITTLE_ENDIAN
504 bool "Sibyte BCM91480B-BigSur"
507 select NR_CPUS_DEFAULT_4
509 select SIBYTE_BCM1x80
511 select SYS_HAS_CPU_SB1
512 select SYS_SUPPORTS_BIG_ENDIAN
513 select SYS_SUPPORTS_LITTLE_ENDIAN
516 bool "SNI RM200/300/400"
517 select ARC if CPU_LITTLE_ENDIAN
518 select ARC32 if CPU_LITTLE_ENDIAN
519 select ARCH_MAY_HAVE_PC_FDC
521 select DMA_NONCOHERENT
522 select GENERIC_ISA_DMA
529 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
530 select SYS_HAS_CPU_R4X00
531 select SYS_HAS_CPU_R5000
532 select SYS_HAS_CPU_R10000
533 select R5000_CPU_SCACHE
534 select SYS_HAS_EARLY_PRINTK
535 select SYS_SUPPORTS_32BIT_KERNEL
536 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
537 select SYS_SUPPORTS_BIG_ENDIAN
538 select SYS_SUPPORTS_HIGHMEM
539 select SYS_SUPPORTS_LITTLE_ENDIAN
541 The SNI RM200/300/400 are MIPS-based machines manufactured by
542 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
543 Technology and now in turn merged with Fujitsu. Say Y here to
544 support this machine type.
546 config TOSHIBA_JMR3927
547 bool "Toshiba JMR-TX3927 board"
548 select DMA_NONCOHERENT
552 select SYS_HAS_CPU_TX39XX
553 select SYS_SUPPORTS_32BIT_KERNEL
554 select SYS_SUPPORTS_LITTLE_ENDIAN
555 select SYS_SUPPORTS_BIG_ENDIAN
556 select GENERIC_HARDIRQS_NO__DO_IRQ
558 config TOSHIBA_RBTX4927
559 bool "Toshiba RBTX49[23]7 board"
560 select DMA_NONCOHERENT
561 select HAS_TXX9_SERIAL
565 select SYS_HAS_CPU_TX49XX
566 select SYS_SUPPORTS_32BIT_KERNEL
567 select SYS_SUPPORTS_64BIT_KERNEL
568 select SYS_SUPPORTS_LITTLE_ENDIAN
569 select SYS_SUPPORTS_BIG_ENDIAN
570 select SYS_SUPPORTS_KGDB
571 select GENERIC_HARDIRQS_NO__DO_IRQ
573 This Toshiba board is based on the TX4927 processor. Say Y here to
574 support this machine type
576 config TOSHIBA_RBTX4938
577 bool "Toshiba RBTX4938 board"
578 select HAVE_STD_PC_SERIAL_PORT
579 select DMA_NONCOHERENT
580 select GENERIC_ISA_DMA
581 select HAS_TXX9_SERIAL
585 select SYS_HAS_CPU_TX49XX
586 select SYS_SUPPORTS_32BIT_KERNEL
587 select SYS_SUPPORTS_LITTLE_ENDIAN
588 select SYS_SUPPORTS_BIG_ENDIAN
589 select SYS_SUPPORTS_KGDB
590 select GENERIC_HARDIRQS_NO__DO_IRQ
593 This Toshiba board is based on the TX4938 processor. Say Y here to
594 support this machine type
597 bool "Wind River PPMC board"
600 select DMA_NONCOHERENT
602 select PCI_GT64XXX_PCI0
604 select SYS_HAS_CPU_MIPS32_R1
605 select SYS_HAS_CPU_MIPS32_R2
606 select SYS_HAS_CPU_MIPS64_R1
607 select SYS_HAS_CPU_NEVADA
608 select SYS_HAS_CPU_RM7000
609 select SYS_SUPPORTS_32BIT_KERNEL
610 select SYS_SUPPORTS_64BIT_KERNEL
611 select SYS_SUPPORTS_BIG_ENDIAN
612 select SYS_SUPPORTS_LITTLE_ENDIAN
614 This enables support for the Wind River MIPS32 4KC PPMC evaluation
615 board, which is based on GT64120 bridge chip.
619 source "arch/mips/au1000/Kconfig"
620 source "arch/mips/ddb5xxx/Kconfig"
621 source "arch/mips/jazz/Kconfig"
622 source "arch/mips/pmc-sierra/Kconfig"
623 source "arch/mips/sgi-ip27/Kconfig"
624 source "arch/mips/sibyte/Kconfig"
625 source "arch/mips/tx4927/Kconfig"
626 source "arch/mips/tx4938/Kconfig"
627 source "arch/mips/vr41xx/Kconfig"
628 source "arch/mips/philips/pnx8550/common/Kconfig"
632 config RWSEM_GENERIC_SPINLOCK
636 config RWSEM_XCHGADD_ALGORITHM
639 config ARCH_HAS_ILOG2_U32
643 config ARCH_HAS_ILOG2_U64
647 config GENERIC_FIND_NEXT_BIT
651 config GENERIC_HWEIGHT
655 config GENERIC_CALIBRATE_DELAY
663 config SCHED_NO_NO_OMIT_FRAME_POINTER
667 config GENERIC_HARDIRQS_NO__DO_IRQ
672 # Select some configuration options automatically based on user selections.
677 config ARCH_MAY_HAVE_PC_FDC
691 select DMA_NEED_PCI_MAP_STATE
693 config DMA_NONCOHERENT
695 select DMA_NEED_PCI_MAP_STATE
697 config DMA_NEED_PCI_MAP_STATE
701 bool "Early printk" if EMBEDDED && DEBUG_KERNEL
702 depends on SYS_HAS_EARLY_PRINTK
705 This option enables special console drivers which allow the kernel
706 to print messages very early in the bootup process.
708 This is useful for kernel debugging when your machine crashes very
709 early before the console code is initialized. For normal operation,
710 it is not recommended because it looks ugly on some machines and
711 doesn't cooperate with an X server. You should normally say N here,
712 unless you want to debug such a crash.
714 config SYS_HAS_EARLY_PRINTK
717 config GENERIC_ISA_DMA
730 config MIPS_DISABLE_OBSOLETE_IDE
736 config GENERIC_ISA_DMA_SUPPORT_BROKEN
744 # Endianess selection. Sufficiently obscure so many users don't know what to
745 # answer,so we try hard to limit the available choices. Also the use of a
746 # choice statement should be more obvious to the user.
749 prompt "Endianess selection"
751 Some MIPS machines can be configured for either little or big endian
752 byte order. These modes require different kernels and a different
753 Linux distribution. In general there is one preferred byteorder for a
754 particular system but some systems are just as commonly used in the
755 one or the other endianness.
757 config CPU_BIG_ENDIAN
759 depends on SYS_SUPPORTS_BIG_ENDIAN
761 config CPU_LITTLE_ENDIAN
763 depends on SYS_SUPPORTS_LITTLE_ENDIAN
768 config SYS_SUPPORTS_APM_EMULATION
771 config SYS_SUPPORTS_BIG_ENDIAN
774 config SYS_SUPPORTS_LITTLE_ENDIAN
792 config DDB5XXX_COMMON
794 select SYS_SUPPORTS_KGDB
796 config MIPS_BOARDS_GEN
799 config PCI_GT64XXX_PCI0
802 config NO_EXCEPT_FILL
807 select HAS_TXX9_SERIAL
819 select DMA_NONCOHERENT
821 select SYS_HAS_CPU_MIPS32_R1
822 select SYS_HAS_EARLY_PRINTK
823 select SYS_SUPPORTS_32BIT_KERNEL
824 select GENERIC_HARDIRQS_NO__DO_IRQ
825 select SYS_SUPPORTS_KGDB
840 # Unfortunately not all GT64120 systems run the chip at the same clock.
841 # As the user for the clock rate and try to minimize the available options.
844 prompt "Galileo Chip Clock"
845 depends on MOMENCO_OCELOT
846 default SYSCLK_100 if MOMENCO_OCELOT
849 bool "100" if MOMENCO_OCELOT
859 config MIPS_L1_CACHE_SHIFT
861 default "4" if MACH_DECSTATION
862 default "7" if SGI_IP27 || SNI_RM
863 default "4" if PMC_MSP4200_EVAL
866 config HAVE_STD_PC_SERIAL_PORT
870 bool "ARC console support"
871 depends on SGI_IP22 || (SNI_RM && CPU_LITTLE_ENDIAN)
875 depends on MACH_JAZZ || SNI_RM || SGI_IP32
880 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP32
897 depends on SYS_HAS_CPU_LOONGSON2
898 select CPU_SUPPORTS_32BIT_KERNEL
899 select CPU_SUPPORTS_64BIT_KERNEL
900 select CPU_SUPPORTS_HIGHMEM
902 The Loongson 2E processor implements the MIPS III instruction set
903 with many extensions.
906 bool "MIPS32 Release 1"
907 depends on SYS_HAS_CPU_MIPS32_R1
909 select CPU_HAS_PREFETCH
910 select CPU_SUPPORTS_32BIT_KERNEL
911 select CPU_SUPPORTS_HIGHMEM
913 Choose this option to build a kernel for release 1 or later of the
914 MIPS32 architecture. Most modern embedded systems with a 32-bit
915 MIPS processor are based on a MIPS32 processor. If you know the
916 specific type of processor in your system, choose those that one
917 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
918 Release 2 of the MIPS32 architecture is available since several
919 years so chances are you even have a MIPS32 Release 2 processor
920 in which case you should choose CPU_MIPS32_R2 instead for better
924 bool "MIPS32 Release 2"
925 depends on SYS_HAS_CPU_MIPS32_R2
927 select CPU_HAS_PREFETCH
928 select CPU_SUPPORTS_32BIT_KERNEL
929 select CPU_SUPPORTS_HIGHMEM
931 Choose this option to build a kernel for release 2 or later of the
932 MIPS32 architecture. Most modern embedded systems with a 32-bit
933 MIPS processor are based on a MIPS32 processor. If you know the
934 specific type of processor in your system, choose those that one
935 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
938 bool "MIPS64 Release 1"
939 depends on SYS_HAS_CPU_MIPS64_R1
941 select CPU_HAS_PREFETCH
942 select CPU_SUPPORTS_32BIT_KERNEL
943 select CPU_SUPPORTS_64BIT_KERNEL
944 select CPU_SUPPORTS_HIGHMEM
946 Choose this option to build a kernel for release 1 or later of the
947 MIPS64 architecture. Many modern embedded systems with a 64-bit
948 MIPS processor are based on a MIPS64 processor. If you know the
949 specific type of processor in your system, choose those that one
950 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
951 Release 2 of the MIPS64 architecture is available since several
952 years so chances are you even have a MIPS64 Release 2 processor
953 in which case you should choose CPU_MIPS64_R2 instead for better
957 bool "MIPS64 Release 2"
958 depends on SYS_HAS_CPU_MIPS64_R2
960 select CPU_HAS_PREFETCH
961 select CPU_SUPPORTS_32BIT_KERNEL
962 select CPU_SUPPORTS_64BIT_KERNEL
963 select CPU_SUPPORTS_HIGHMEM
965 Choose this option to build a kernel for release 2 or later of the
966 MIPS64 architecture. Many modern embedded systems with a 64-bit
967 MIPS processor are based on a MIPS64 processor. If you know the
968 specific type of processor in your system, choose those that one
969 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
973 depends on SYS_HAS_CPU_R3000
975 select CPU_SUPPORTS_32BIT_KERNEL
976 select CPU_SUPPORTS_HIGHMEM
978 Please make sure to pick the right CPU type. Linux/MIPS is not
979 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
980 *not* work on R4000 machines and vice versa. However, since most
981 of the supported machines have an R4000 (or similar) CPU, R4x00
982 might be a safe bet. If the resulting kernel does not work,
983 try to recompile with R3000.
987 depends on SYS_HAS_CPU_TX39XX
988 select CPU_SUPPORTS_32BIT_KERNEL
992 depends on SYS_HAS_CPU_VR41XX
993 select CPU_SUPPORTS_32BIT_KERNEL
994 select CPU_SUPPORTS_64BIT_KERNEL
996 The options selects support for the NEC VR4100 series of processors.
997 Only choose this option if you have one of these processors as a
998 kernel built with this option will not run on any other type of
999 processor or vice versa.
1003 depends on SYS_HAS_CPU_R4300
1005 select CPU_SUPPORTS_32BIT_KERNEL
1006 select CPU_SUPPORTS_64BIT_KERNEL
1008 MIPS Technologies R4300-series processors.
1012 depends on SYS_HAS_CPU_R4X00
1014 select CPU_SUPPORTS_32BIT_KERNEL
1015 select CPU_SUPPORTS_64BIT_KERNEL
1017 MIPS Technologies R4000-series processors other than 4300, including
1018 the R4000, R4400, R4600, and 4700.
1022 depends on SYS_HAS_CPU_TX49XX
1024 select CPU_HAS_PREFETCH
1025 select CPU_SUPPORTS_32BIT_KERNEL
1026 select CPU_SUPPORTS_64BIT_KERNEL
1030 depends on SYS_HAS_CPU_R5000
1032 select CPU_SUPPORTS_32BIT_KERNEL
1033 select CPU_SUPPORTS_64BIT_KERNEL
1035 MIPS Technologies R5000-series processors other than the Nevada.
1039 depends on SYS_HAS_CPU_R5432
1041 select CPU_SUPPORTS_32BIT_KERNEL
1042 select CPU_SUPPORTS_64BIT_KERNEL
1046 depends on EXPERIMENTAL
1048 depends on SYS_HAS_CPU_R6000
1049 select CPU_SUPPORTS_32BIT_KERNEL
1051 MIPS Technologies R6000 and R6000A series processors. Note these
1052 processors are extremely rare and the support for them is incomplete.
1056 depends on SYS_HAS_CPU_NEVADA
1058 select CPU_SUPPORTS_32BIT_KERNEL
1059 select CPU_SUPPORTS_64BIT_KERNEL
1061 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1065 depends on EXPERIMENTAL
1066 depends on SYS_HAS_CPU_R8000
1068 select CPU_HAS_PREFETCH
1069 select CPU_SUPPORTS_64BIT_KERNEL
1071 MIPS Technologies R8000 processors. Note these processors are
1072 uncommon and the support for them is incomplete.
1076 depends on SYS_HAS_CPU_R10000
1078 select CPU_HAS_PREFETCH
1079 select CPU_SUPPORTS_32BIT_KERNEL
1080 select CPU_SUPPORTS_64BIT_KERNEL
1081 select CPU_SUPPORTS_HIGHMEM
1083 MIPS Technologies R10000-series processors.
1087 depends on SYS_HAS_CPU_RM7000
1089 select CPU_HAS_PREFETCH
1090 select CPU_SUPPORTS_32BIT_KERNEL
1091 select CPU_SUPPORTS_64BIT_KERNEL
1092 select CPU_SUPPORTS_HIGHMEM
1096 depends on SYS_HAS_CPU_RM9000
1098 select CPU_HAS_PREFETCH
1099 select CPU_SUPPORTS_32BIT_KERNEL
1100 select CPU_SUPPORTS_64BIT_KERNEL
1101 select CPU_SUPPORTS_HIGHMEM
1102 select WEAK_ORDERING
1106 depends on SYS_HAS_CPU_SB1
1108 select CPU_SUPPORTS_32BIT_KERNEL
1109 select CPU_SUPPORTS_64BIT_KERNEL
1110 select CPU_SUPPORTS_HIGHMEM
1111 select WEAK_ORDERING
1115 config SYS_HAS_CPU_LOONGSON2
1118 config SYS_HAS_CPU_MIPS32_R1
1121 config SYS_HAS_CPU_MIPS32_R2
1124 config SYS_HAS_CPU_MIPS64_R1
1127 config SYS_HAS_CPU_MIPS64_R2
1130 config SYS_HAS_CPU_R3000
1133 config SYS_HAS_CPU_TX39XX
1136 config SYS_HAS_CPU_VR41XX
1139 config SYS_HAS_CPU_R4300
1142 config SYS_HAS_CPU_R4X00
1145 config SYS_HAS_CPU_TX49XX
1148 config SYS_HAS_CPU_R5000
1151 config SYS_HAS_CPU_R5432
1154 config SYS_HAS_CPU_R6000
1157 config SYS_HAS_CPU_NEVADA
1160 config SYS_HAS_CPU_R8000
1163 config SYS_HAS_CPU_R10000
1166 config SYS_HAS_CPU_RM7000
1169 config SYS_HAS_CPU_RM9000
1172 config SYS_HAS_CPU_SB1
1176 # CPU may reorder R->R, R->W, W->R, W->W
1177 # Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
1179 config WEAK_ORDERING
1183 # CPU may reorder reads and writes beyond LL/SC
1184 # CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
1186 config WEAK_REORDERING_BEYOND_LLSC
1191 # These two indicate any level of the MIPS32 and MIPS64 architecture
1195 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1199 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1202 # These two indicate the revision of the architecture, either Release 1 or Release 2
1206 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1210 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
1212 config SYS_SUPPORTS_32BIT_KERNEL
1214 config SYS_SUPPORTS_64BIT_KERNEL
1216 config CPU_SUPPORTS_32BIT_KERNEL
1218 config CPU_SUPPORTS_64BIT_KERNEL
1225 prompt "Kernel code model"
1227 You should only select this option if you have a workload that
1228 actually benefits from 64-bit processing or if your machine has
1229 large memory. You will only be presented a single option in this
1230 menu if your system does not support both 32-bit and 64-bit kernels.
1233 bool "32-bit kernel"
1234 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1237 Select this option if you want to build a 32-bit kernel.
1239 bool "64-bit kernel"
1240 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1242 Select this option if you want to build a 64-bit kernel.
1247 prompt "Kernel page size"
1248 default PAGE_SIZE_4KB
1250 config PAGE_SIZE_4KB
1253 This option select the standard 4kB Linux page size. On some
1254 R3000-family processors this is the only available page size. Using
1255 4kB page size will minimize memory consumption and is therefore
1256 recommended for low memory systems.
1258 config PAGE_SIZE_8KB
1260 depends on EXPERIMENTAL && CPU_R8000
1262 Using 8kB page size will result in higher performance kernel at
1263 the price of higher memory consumption. This option is available
1264 only on the R8000 processor. Not that at the time of this writing
1265 this option is still high experimental; there are also issues with
1266 compatibility of user applications.
1268 config PAGE_SIZE_16KB
1270 depends on !CPU_R3000 && !CPU_TX39XX
1272 Using 16kB page size will result in higher performance kernel at
1273 the price of higher memory consumption. This option is available on
1274 all non-R3000 family processors. Note that you will need a suitable
1275 Linux distribution to support this.
1277 config PAGE_SIZE_64KB
1279 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1281 Using 64kB page size will result in higher performance kernel at
1282 the price of higher memory consumption. This option is available on
1283 all non-R3000 family processor. Not that at the time of this
1284 writing this option is still high experimental.
1291 config IP22_CPU_SCACHE
1296 # Support for a MIPS32 / MIPS64 style S-caches
1298 config MIPS_CPU_SCACHE
1302 config R5000_CPU_SCACHE
1306 config RM7000_CPU_SCACHE
1310 config SIBYTE_DMA_PAGEOPS
1311 bool "Use DMA to clear/copy pages"
1314 Instead of using the CPU to zero and copy pages, use a Data Mover
1315 channel. These DMA channels are otherwise unused by the standard
1316 SiByte Linux port. Seems to give a small performance benefit.
1318 config CPU_HAS_PREFETCH
1322 prompt "MIPS MT options"
1324 config MIPS_MT_DISABLED
1325 bool "Disable multithreading support."
1327 Use this option if your workload can't take advantage of
1328 MIPS hardware multithreading support. On systems that don't have
1329 the option of an MT-enabled processor this option will be the only
1330 option in this menu.
1333 bool "Use 1 TC on each available VPE for SMP"
1334 depends on SYS_SUPPORTS_MULTITHREADING
1335 select CPU_MIPSR2_IRQ_VI
1336 select CPU_MIPSR2_IRQ_EI
1337 select CPU_MIPSR2_SRS
1339 select NR_CPUS_DEFAULT_2
1341 select SYS_SUPPORTS_SMP
1343 This is a kernel model which is also known a VSMP or lately
1344 has been marketesed into SMVP.
1347 bool "SMTC: Use all TCs on all VPEs for SMP"
1348 depends on CPU_MIPS32_R2
1349 #depends on CPU_MIPS64_R2 # once there is hardware ...
1350 depends on SYS_SUPPORTS_MULTITHREADING
1351 select CPU_MIPSR2_IRQ_VI
1352 select CPU_MIPSR2_IRQ_EI
1353 select CPU_MIPSR2_SRS
1355 select NR_CPUS_DEFAULT_8
1357 select SYS_SUPPORTS_SMP
1359 This is a kernel model which is known a SMTC or lately has been
1360 marketesed into SMVP.
1367 config SYS_SUPPORTS_MULTITHREADING
1370 config MIPS_MT_FPAFF
1371 bool "Dynamic FPU affinity for FP-intensive threads"
1373 depends on MIPS_MT_SMP || MIPS_MT_SMTC
1375 config MIPS_VPE_LOADER
1376 bool "VPE loader support."
1377 depends on SYS_SUPPORTS_MULTITHREADING
1378 select CPU_MIPSR2_IRQ_VI
1379 select CPU_MIPSR2_IRQ_EI
1380 select CPU_MIPSR2_SRS
1383 Includes a loader for loading an elf relocatable object
1384 onto another VPE and running it.
1386 config MIPS_MT_SMTC_INSTANT_REPLAY
1387 bool "Low-latency Dispatch of Deferred SMTC IPIs"
1388 depends on MIPS_MT_SMTC && !PREEMPT
1391 SMTC pseudo-interrupts between TCs are deferred and queued
1392 if the target TC is interrupt-inhibited (IXMT). In the first
1393 SMTC prototypes, these queued IPIs were serviced on return
1394 to user mode, or on entry into the kernel idle loop. The
1395 INSTANT_REPLAY option dispatches them as part of local_irq_restore()
1396 processing, which adds runtime overhead (hence the option to turn
1397 it off), but ensures that IPIs are handled promptly even under
1398 heavy I/O interrupt load.
1400 config MIPS_MT_SMTC_IM_BACKSTOP
1401 bool "Use per-TC register bits as backstop for inhibited IM bits"
1402 depends on MIPS_MT_SMTC
1405 To support multiple TC microthreads acting as "CPUs" within
1406 a VPE, VPE-wide interrupt mask bits must be specially manipulated
1407 during interrupt handling. To support legacy drivers and interrupt
1408 controller management code, SMTC has a "backstop" to track and
1409 if necessary restore the interrupt mask. This has some performance
1410 impact on interrupt service overhead. Disable it only if you know
1413 config MIPS_VPE_LOADER_TOM
1414 bool "Load VPE program into memory hidden from linux"
1415 depends on MIPS_VPE_LOADER
1418 The loader can use memory that is present but has been hidden from
1419 Linux using the kernel command line option "mem=xxMB". It's up to
1420 you to ensure the amount you put in the option and the space your
1421 program requires is less or equal to the amount physically present.
1423 # this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1424 config MIPS_VPE_APSP_API
1425 bool "Enable support for AP/SP API (RTLX)"
1426 depends on MIPS_VPE_LOADER
1429 config MIPS_APSP_KSPD
1431 depends on MIPS_VPE_APSP_API
1434 KSPD is a kernel daemon that accepts syscall requests from the SP
1435 side, actions them and returns the results. It also handles the
1436 "exit" syscall notifying other kernel modules the SP program is
1437 exiting. You probably want to say yes here.
1439 config SB1_PASS_1_WORKAROUNDS
1441 depends on CPU_SB1_PASS_1
1444 config SB1_PASS_2_WORKAROUNDS
1446 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1449 config SB1_PASS_2_1_WORKAROUNDS
1451 depends on CPU_SB1 && CPU_SB1_PASS_2
1454 config 64BIT_PHYS_ADDR
1455 bool "Support for 64-bit physical address space"
1456 depends on (CPU_R4X00 || CPU_R5000 || CPU_RM7000 || CPU_RM9000 || CPU_R10000 || CPU_SB1 || CPU_MIPS32 || CPU_MIPS64) && 32BIT
1461 config CPU_HAS_SMARTMIPS
1462 depends on SYS_SUPPORTS_SMARTMIPS
1463 bool "Support for the SmartMIPS ASE"
1465 SmartMIPS is a extension of the MIPS32 architecture aimed at
1466 increased security at both hardware and software level for
1467 smartcards. Enabling this option will allow proper use of the
1468 SmartMIPS instructions by Linux applications. However a kernel with
1469 this option will not work on a MIPS core without SmartMIPS core. If
1470 you don't know you probably don't have SmartMIPS and should say N
1476 config 64BIT_CONTEXT
1477 bool "Save 64bit integer registers"
1478 depends on 32BIT && CPU_LOONGSON2
1480 Loongson2 CPU is 64bit , when used in 32BIT mode, its integer
1481 registers can still be accessed as 64bit, mainly for multimedia
1482 instructions. We must have all 64bit save/restored to make sure
1483 those instructions to get correct result.
1486 # Vectored interrupt mode is an R2 feature
1488 config CPU_MIPSR2_IRQ_VI
1492 # Extended interrupt mode is an R2 feature
1494 config CPU_MIPSR2_IRQ_EI
1498 # Shadow registers are an R2 feature
1500 config CPU_MIPSR2_SRS
1505 depends on !CPU_R3000
1509 # Use the generic interrupt handling code in kernel/irq/:
1511 config GENERIC_HARDIRQS
1515 config GENERIC_IRQ_PROBE
1523 # - Highmem only makes sense for the 32-bit kernel.
1524 # - The current highmem code will only work properly on physically indexed
1525 # caches such as R3000, SB1, R7000 or those that look like they're virtually
1526 # indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1527 # moment we protect the user and offer the highmem option only on machines
1528 # where it's known to be safe. This will not offer highmem on a few systems
1529 # such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1530 # indexed CPUs but we're playing safe.
1531 # - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1532 # know they might have memory configurations that could make use of highmem
1536 bool "High Memory Support"
1537 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1539 config CPU_SUPPORTS_HIGHMEM
1542 config SYS_SUPPORTS_HIGHMEM
1545 config SYS_SUPPORTS_SMARTMIPS
1548 config ARCH_FLATMEM_ENABLE
1552 config ARCH_DISCONTIGMEM_ENABLE
1554 default y if SGI_IP27
1556 Say Y to support efficient handling of discontiguous physical memory,
1557 for architectures which are either NUMA (Non-Uniform Memory Access)
1558 or have huge holes in the physical address space for other reasons.
1559 See <file:Documentation/vm/numa> for more.
1561 config ARCH_SPARSEMEM_ENABLE
1563 select SPARSEMEM_STATIC
1567 depends on SYS_SUPPORTS_NUMA
1569 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1570 Access). This option improves performance on systems with more
1571 than two nodes; on two node systems it is generally better to
1572 leave it disabled; on single node systems disable this option
1575 config SYS_SUPPORTS_NUMA
1581 depends on NEED_MULTIPLE_NODES
1586 bool "Multi-Processing support"
1587 depends on SYS_SUPPORTS_SMP
1590 This enables support for systems with more than one CPU. If you have
1591 a system with only one CPU, like most personal computers, say N. If
1592 you have a system with more than one CPU, say Y.
1594 If you say N here, the kernel will run on single and multiprocessor
1595 machines, but will use only one CPU of a multiprocessor machine. If
1596 you say Y here, the kernel will run on many, but not all,
1597 singleprocessor machines. On a singleprocessor machine, the kernel
1598 will run faster if you say N here.
1600 People using multiprocessor machines who say Y here should also say
1601 Y to "Enhanced Real Time Clock Support", below.
1603 See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1604 available at <http://www.tldp.org/docs.html#howto>.
1606 If you don't know what to do here, say N.
1608 config SYS_SUPPORTS_SMP
1611 config NR_CPUS_DEFAULT_1
1614 config NR_CPUS_DEFAULT_2
1617 config NR_CPUS_DEFAULT_4
1620 config NR_CPUS_DEFAULT_8
1623 config NR_CPUS_DEFAULT_16
1626 config NR_CPUS_DEFAULT_32
1629 config NR_CPUS_DEFAULT_64
1633 int "Maximum number of CPUs (2-64)"
1634 range 1 64 if NR_CPUS_DEFAULT_1
1636 default "1" if NR_CPUS_DEFAULT_1
1637 default "2" if NR_CPUS_DEFAULT_2
1638 default "4" if NR_CPUS_DEFAULT_4
1639 default "8" if NR_CPUS_DEFAULT_8
1640 default "16" if NR_CPUS_DEFAULT_16
1641 default "32" if NR_CPUS_DEFAULT_32
1642 default "64" if NR_CPUS_DEFAULT_64
1644 This allows you to specify the maximum number of CPUs which this
1645 kernel will support. The maximum supported value is 32 for 32-bit
1646 kernel and 64 for 64-bit kernels; the minimum value which makes
1647 sense is 1 for Qemu (useful only for kernel debugging purposes)
1648 and 2 for all others.
1650 This is purely to save memory - each supported CPU adds
1651 approximately eight kilobytes to the kernel image. For best
1652 performance should round up your number of processors to the next
1656 # Timer Interrupt Frequency Configuration
1660 prompt "Timer frequency"
1663 Allows the configuration of the timer frequency.
1666 bool "48 HZ" if SYS_SUPPORTS_48HZ
1669 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1672 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1675 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1678 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1681 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1684 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1688 config SYS_SUPPORTS_48HZ
1691 config SYS_SUPPORTS_100HZ
1694 config SYS_SUPPORTS_128HZ
1697 config SYS_SUPPORTS_250HZ
1700 config SYS_SUPPORTS_256HZ
1703 config SYS_SUPPORTS_1000HZ
1706 config SYS_SUPPORTS_1024HZ
1709 config SYS_SUPPORTS_ARBIT_HZ
1711 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1712 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1713 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1714 !SYS_SUPPORTS_1024HZ
1719 default 100 if HZ_100
1720 default 128 if HZ_128
1721 default 250 if HZ_250
1722 default 256 if HZ_256
1723 default 1000 if HZ_1000
1724 default 1024 if HZ_1024
1726 source "kernel/Kconfig.preempt"
1728 config MIPS_INSANE_LARGE
1729 bool "Support for large 64-bit configurations"
1730 depends on CPU_R10000 && 64BIT
1732 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1733 previous 64-bit processors which only supported 40 bit / 1TB. If you
1734 need processes of more than 1TB virtual address space, say Y here.
1735 This will result in additional memory usage, so it is not
1736 recommended for normal users.
1739 bool "Kexec system call (EXPERIMENTAL)"
1740 depends on EXPERIMENTAL
1742 kexec is a system call that implements the ability to shutdown your
1743 current kernel, and to start another kernel. It is like a reboot
1744 but it is independent of the system firmware. And like a reboot
1745 you can start any kernel with it, not just Linux.
1747 The name comes from the similiarity to the exec system call.
1749 It is an ongoing process to be certain the hardware in a machine
1750 is properly shutdown, so do not be surprised if this code does not
1751 initially work for you. It may help to enable device hotplugging
1752 support. As of this writing the exact hardware interface is
1753 strongly in flux, so no good recommendation can be made.
1756 bool "Enable seccomp to safely compute untrusted bytecode"
1760 This kernel feature is useful for number crunching applications
1761 that may need to compute untrusted bytecode during their
1762 execution. By using pipes or other transports made available to
1763 the process as file descriptors supporting the read/write
1764 syscalls, it's possible to isolate those applications in
1765 their own address space using seccomp. Once seccomp is
1766 enabled via /proc/<pid>/seccomp, it cannot be disabled
1767 and the task is only allowed to execute a few safe syscalls
1768 defined by each seccomp mode.
1770 If unsure, say Y. Only embedded should say N here.
1774 config RWSEM_GENERIC_SPINLOCK
1778 config LOCKDEP_SUPPORT
1782 config STACKTRACE_SUPPORT
1786 source "init/Kconfig"
1788 menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1796 bool "Support for PCI controller"
1797 depends on HW_HAS_PCI
1799 Find out whether you have a PCI motherboard. PCI is the name of a
1800 bus system, i.e. the way the CPU talks to the other stuff inside
1801 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1804 The PCI-HOWTO, available from
1805 <http://www.tldp.org/docs.html#howto>, contains valuable
1806 information about which PCI hardware does work under Linux and which
1813 source "drivers/pci/Kconfig"
1816 # ISA support is now enabled via select. Too many systems still have the one
1817 # or other ISA chip on the board that users don't know about so don't expect
1818 # users to choose the right thing ...
1825 depends on HW_HAS_EISA
1827 select GENERIC_ISA_DMA
1829 The Extended Industry Standard Architecture (EISA) bus was
1830 developed as an open alternative to the IBM MicroChannel bus.
1832 The EISA bus provided some of the features of the IBM MicroChannel
1833 bus while maintaining backward compatibility with cards made for
1834 the older ISA bus. The EISA bus saw limited use between 1988 and
1835 1995 when it was made obsolete by the PCI bus.
1837 Say Y here if you are building a kernel for an EISA-based machine.
1841 source "drivers/eisa/Kconfig"
1844 bool "TURBOchannel support"
1845 depends on MACH_DECSTATION
1847 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1848 processors. Documentation on writing device drivers for TurboChannel
1850 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1853 # bool "Access.Bus support"
1863 source "drivers/pcmcia/Kconfig"
1865 source "drivers/pci/hotplug/Kconfig"
1869 menu "Executable file formats"
1871 source "fs/Kconfig.binfmt"
1877 bool "Use 64-bit ELF format for building"
1880 A 64-bit kernel is usually built using the 64-bit ELF binary object
1881 format as it's one that allows arbitrary 64-bit constructs. For
1882 kernels that are loaded within the KSEG compatibility segments the
1883 32-bit ELF format can optionally be used resulting in a somewhat
1884 smaller binary, but this option is not explicitly supported by the
1885 toolchain and since binutils 2.14 it does not even work at all.
1887 Say Y to use the 64-bit format or N to use the 32-bit one.
1892 bool "Include IRIX binary compatibility"
1893 depends on CPU_BIG_ENDIAN && 32BIT && BROKEN
1895 config MIPS32_COMPAT
1896 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
1899 Select this option if you want Linux/MIPS 32-bit binary
1900 compatibility. Since all software available for Linux/MIPS is
1901 currently 32-bit you should say Y here.
1905 depends on MIPS32_COMPAT
1908 config SYSVIPC_COMPAT
1910 depends on COMPAT && SYSVIPC
1914 bool "Kernel support for o32 binaries"
1915 depends on MIPS32_COMPAT
1917 Select this option if you want to run o32 binaries. These are pure
1918 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
1919 existing binaries are in this format.
1924 bool "Kernel support for n32 binaries"
1925 depends on MIPS32_COMPAT
1927 Select this option if you want to run n32 binaries. These are
1928 64-bit binaries using 32-bit quantities for addressing and certain
1929 data that would normally be 64-bit. They are used in special
1936 default y if MIPS32_O32 || MIPS32_N32
1940 menu "Power management options"
1942 source "kernel/power/Kconfig"
1946 source "net/Kconfig"
1948 source "drivers/Kconfig"
1952 source "arch/mips/oprofile/Kconfig"
1954 source "arch/mips/Kconfig.debug"
1956 source "security/Kconfig"
1958 source "crypto/Kconfig"
1960 source "lib/Kconfig"