7 # Horrible source of confusion. Die, die, die ...
11 mainmenu "Linux/MIPS Kernel Configuration"
13 menu "Machine selection"
23 bool "Alchemy processor based machines"
26 bool "Basler eXcite smart camera"
35 select SYS_HAS_CPU_RM9000
36 select SYS_SUPPORTS_32BIT_KERNEL
37 select SYS_SUPPORTS_BIG_ENDIAN
39 The eXcite is a smart camera platform manufactured by
40 Basler Vision Technologies AG.
43 bool "BCM47XX based boards"
46 select DMA_NONCOHERENT
49 select SYS_HAS_CPU_MIPS32_R1
50 select SYS_SUPPORTS_32BIT_KERNEL
51 select SYS_SUPPORTS_LITTLE_ENDIAN
53 select SSB_DRIVER_MIPS
54 select SSB_DRIVER_EXTIF
56 select SSB_PCICORE_HOSTMODE if PCI
58 select SYS_HAS_EARLY_PRINTK
61 Support for BCM47XX based boards
68 select DMA_NONCOHERENT
74 select PCI_GT64XXX_PCI0
75 select SYS_HAS_CPU_NEVADA
76 select SYS_HAS_EARLY_PRINTK
77 select SYS_SUPPORTS_32BIT_KERNEL
78 select SYS_SUPPORTS_64BIT_KERNEL
79 select SYS_SUPPORTS_LITTLE_ENDIAN
80 select GENERIC_HARDIRQS_NO__DO_IRQ
82 config MACH_DECSTATION
89 select CPU_DADDI_WORKAROUNDS if 64BIT
90 select CPU_R4000_WORKAROUNDS if 64BIT
91 select CPU_R4400_WORKAROUNDS if 64BIT
92 select DMA_NONCOHERENT
95 select SYS_HAS_CPU_R3000
96 select SYS_HAS_CPU_R4X00
97 select SYS_SUPPORTS_32BIT_KERNEL
98 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
99 select SYS_SUPPORTS_LITTLE_ENDIAN
100 select SYS_SUPPORTS_128HZ
101 select SYS_SUPPORTS_256HZ
102 select SYS_SUPPORTS_1024HZ
104 This enables support for DEC's MIPS based workstations. For details
105 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
106 DECstation porting pages on <http://decstation.unix-ag.org/>.
108 If you have one of the following DECstation Models you definitely
109 want to choose R4xx0 for the CPU Type:
116 otherwise choose R3000.
119 bool "Jazz family of machines"
122 select ARCH_MAY_HAVE_PC_FDC
125 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
126 select GENERIC_ISA_DMA
131 select SYS_HAS_CPU_R4X00
132 select SYS_SUPPORTS_32BIT_KERNEL
133 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
134 select SYS_SUPPORTS_100HZ
135 select GENERIC_HARDIRQS_NO__DO_IRQ
137 This a family of machines based on the MIPS R4030 chipset which was
138 used by several vendors to build RISC/os and Windows NT workstations.
139 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
140 Olivetti M700-10 workstations.
143 bool "LASAT Networks platforms"
146 select DMA_NONCOHERENT
147 select SYS_HAS_EARLY_PRINTK
150 select PCI_GT64XXX_PCI0
152 select R5000_CPU_SCACHE
153 select SYS_HAS_CPU_R5000
154 select SYS_SUPPORTS_32BIT_KERNEL
155 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
156 select SYS_SUPPORTS_LITTLE_ENDIAN
157 select GENERIC_HARDIRQS_NO__DO_IRQ
160 bool "Lemote Fulong mini-PC"
161 select ARCH_SPARSEMEM_ENABLE
164 select SYS_HAS_CPU_LOONGSON2
165 select DMA_NONCOHERENT
168 select HAVE_STD_PC_SERIAL_PORT
173 select SYS_SUPPORTS_32BIT_KERNEL
174 select SYS_SUPPORTS_64BIT_KERNEL
175 select SYS_SUPPORTS_LITTLE_ENDIAN
176 select SYS_SUPPORTS_HIGHMEM
177 select SYS_HAS_EARLY_PRINTK
178 select GENERIC_HARDIRQS_NO__DO_IRQ
179 select GENERIC_ISA_DMA_SUPPORT_BROKEN
182 Lemote Fulong mini-PC board based on the Chinese Loongson-2E CPU and
186 bool "MIPS Malta board"
187 select ARCH_MAY_HAVE_PC_FDC
192 select DMA_NONCOHERENT
193 select GENERIC_ISA_DMA
199 select MIPS_BOARDS_GEN
201 select MIPS_CPU_SCACHE
202 select PCI_GT64XXX_PCI0
205 select SYS_HAS_CPU_MIPS32_R1
206 select SYS_HAS_CPU_MIPS32_R2
207 select SYS_HAS_CPU_MIPS64_R1
208 select SYS_HAS_CPU_NEVADA
209 select SYS_HAS_CPU_RM7000
210 select SYS_HAS_EARLY_PRINTK
211 select SYS_SUPPORTS_32BIT_KERNEL
212 select SYS_SUPPORTS_64BIT_KERNEL
213 select SYS_SUPPORTS_BIG_ENDIAN
214 select SYS_SUPPORTS_LITTLE_ENDIAN
215 select SYS_SUPPORTS_MIPS_CMP if BROKEN # because SYNC_R4K is broken
216 select SYS_SUPPORTS_MULTITHREADING
217 select SYS_SUPPORTS_SMARTMIPS
219 This enables support for the MIPS Technologies Malta evaluation
223 bool 'MIPS simulator (MIPSsim)'
226 select DMA_NONCOHERENT
227 select SYS_HAS_EARLY_PRINTK
230 select SYS_HAS_CPU_MIPS32_R1
231 select SYS_HAS_CPU_MIPS32_R2
232 select SYS_HAS_EARLY_PRINTK
233 select SYS_SUPPORTS_32BIT_KERNEL
234 select SYS_SUPPORTS_BIG_ENDIAN
235 select SYS_SUPPORTS_MULTITHREADING
236 select SYS_SUPPORTS_LITTLE_ENDIAN
238 This option enables support for MIPS Technologies MIPSsim software
242 bool "NEC EMMA2RH Mark-eins board"
246 This enables support for the NEC Electronics Mark-eins boards.
249 bool "NEC VR4100 series based machines"
252 select SYS_HAS_CPU_VR41XX
253 select GENERIC_HARDIRQS_NO__DO_IRQ
256 bool "NXP STB220 board"
259 Support for NXP Semiconductors STB220 Development Board.
266 Support for NXP Semiconductors STB225 Development Board.
269 bool "NXP PNX8550 based JBS board"
271 select SYS_SUPPORTS_LITTLE_ENDIAN
273 config PNX8550_STB810
274 bool "NXP PNX8550 based STB810 board"
276 select SYS_SUPPORTS_LITTLE_ENDIAN
279 bool "PMC-Sierra MSP chipsets"
280 depends on EXPERIMENTAL
281 select DMA_NONCOHERENT
283 select NO_EXCEPT_FILL
285 select SYS_HAS_CPU_MIPS32_R1
286 select SYS_HAS_CPU_MIPS32_R2
287 select SYS_SUPPORTS_32BIT_KERNEL
288 select SYS_SUPPORTS_BIG_ENDIAN
291 select SERIAL_8250_CONSOLE
293 This adds support for the PMC-Sierra family of Multi-Service
294 Processor System-On-A-Chips. These parts include a number
295 of integrated peripherals, interfaces and DSPs in addition to
296 a variety of MIPS cores.
299 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_SMP
316 Yosemite is an evaluation board for the RM9000x2 processor
317 manufactured by PMC-Sierra.
320 bool "SGI IP22 (Indy/Indigo2)"
326 select DEFAULT_SGI_PARTITION
327 select DMA_NONCOHERENT
331 select IP22_CPU_SCACHE
333 select GENERIC_ISA_DMA_SUPPORT_BROKEN
335 select SGI_HAS_INDYDOG
341 select SYS_HAS_CPU_R4X00
342 select SYS_HAS_CPU_R5000
343 select SYS_HAS_EARLY_PRINTK
344 select SYS_SUPPORTS_32BIT_KERNEL
345 select SYS_SUPPORTS_64BIT_KERNEL
346 select SYS_SUPPORTS_BIG_ENDIAN
348 This are the SGI Indy, Challenge S and Indigo2, as well as certain
349 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
350 that runs on these, say Y here.
353 bool "SGI IP27 (Origin200/2000)"
357 select DEFAULT_SGI_PARTITION
359 select SYS_HAS_EARLY_PRINTK
361 select NR_CPUS_DEFAULT_64
362 select SYS_HAS_CPU_R10000
363 select SYS_SUPPORTS_64BIT_KERNEL
364 select SYS_SUPPORTS_BIG_ENDIAN
365 select SYS_SUPPORTS_NUMA
366 select SYS_SUPPORTS_SMP
367 select GENERIC_HARDIRQS_NO__DO_IRQ
369 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
370 workstations. To compile a Linux kernel that runs on these, say Y
374 bool "SGI IP28 (Indigo2 R10k) (EXPERIMENTAL)"
375 depends on EXPERIMENTAL
381 select DEFAULT_SGI_PARTITION
382 select DMA_NONCOHERENT
383 select GENERIC_ISA_DMA_SUPPORT_BROKEN
389 select SGI_HAS_INDYDOG
395 select SYS_HAS_CPU_R10000
396 select SYS_HAS_EARLY_PRINTK
397 select SYS_SUPPORTS_64BIT_KERNEL
398 select SYS_SUPPORTS_BIG_ENDIAN
400 This is the SGI Indigo2 with R10000 processor. To compile a Linux
401 kernel that runs on these, say Y here.
410 select DMA_NONCOHERENT
413 select R5000_CPU_SCACHE
414 select RM7000_CPU_SCACHE
415 select SYS_HAS_CPU_R5000
416 select SYS_HAS_CPU_R10000 if BROKEN
417 select SYS_HAS_CPU_RM7000
418 select SYS_HAS_CPU_NEVADA
419 select SYS_SUPPORTS_64BIT_KERNEL
420 select SYS_SUPPORTS_BIG_ENDIAN
422 If you want this kernel to run on SGI O2 workstation, say Y here.
425 bool "Sibyte BCM91120C-CRhine"
426 depends on EXPERIMENTAL
429 select SIBYTE_BCM1120
431 select SYS_HAS_CPU_SB1
432 select SYS_SUPPORTS_BIG_ENDIAN
433 select SYS_SUPPORTS_LITTLE_ENDIAN
436 bool "Sibyte BCM91120x-Carmel"
437 depends on EXPERIMENTAL
440 select SIBYTE_BCM1120
442 select SYS_HAS_CPU_SB1
443 select SYS_SUPPORTS_BIG_ENDIAN
444 select SYS_SUPPORTS_LITTLE_ENDIAN
447 bool "Sibyte BCM91125C-CRhone"
448 depends on EXPERIMENTAL
451 select SIBYTE_BCM1125
453 select SYS_HAS_CPU_SB1
454 select SYS_SUPPORTS_BIG_ENDIAN
455 select SYS_SUPPORTS_HIGHMEM
456 select SYS_SUPPORTS_LITTLE_ENDIAN
459 bool "Sibyte BCM91125E-Rhone"
460 depends on EXPERIMENTAL
463 select SIBYTE_BCM1125H
465 select SYS_HAS_CPU_SB1
466 select SYS_SUPPORTS_BIG_ENDIAN
467 select SYS_SUPPORTS_LITTLE_ENDIAN
470 bool "Sibyte BCM91250A-SWARM"
473 select NR_CPUS_DEFAULT_2
476 select SYS_HAS_CPU_SB1
477 select SYS_SUPPORTS_BIG_ENDIAN
478 select SYS_SUPPORTS_HIGHMEM
479 select SYS_SUPPORTS_LITTLE_ENDIAN
480 select ZONE_DMA32 if 64BIT
482 config SIBYTE_LITTLESUR
483 bool "Sibyte BCM91250C2-LittleSur"
484 depends on EXPERIMENTAL
487 select NR_CPUS_DEFAULT_2
490 select SYS_HAS_CPU_SB1
491 select SYS_SUPPORTS_BIG_ENDIAN
492 select SYS_SUPPORTS_HIGHMEM
493 select SYS_SUPPORTS_LITTLE_ENDIAN
495 config SIBYTE_SENTOSA
496 bool "Sibyte BCM91250E-Sentosa"
497 depends on EXPERIMENTAL
500 select NR_CPUS_DEFAULT_2
503 select SYS_HAS_CPU_SB1
504 select SYS_SUPPORTS_BIG_ENDIAN
505 select SYS_SUPPORTS_LITTLE_ENDIAN
508 bool "Sibyte BCM91480B-BigSur"
511 select NR_CPUS_DEFAULT_4
512 select SIBYTE_BCM1x80
514 select SYS_HAS_CPU_SB1
515 select SYS_SUPPORTS_BIG_ENDIAN
516 select SYS_SUPPORTS_HIGHMEM
517 select SYS_SUPPORTS_LITTLE_ENDIAN
518 select ZONE_DMA32 if 64BIT
521 bool "SNI RM200/300/400"
522 select ARC if CPU_LITTLE_ENDIAN
523 select ARC32 if CPU_LITTLE_ENDIAN
524 select SNIPROM if CPU_BIG_ENDIAN
525 select ARCH_MAY_HAVE_PC_FDC
529 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
530 select DMA_NONCOHERENT
531 select GENERIC_ISA_DMA
538 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
539 select SYS_HAS_CPU_R4X00
540 select SYS_HAS_CPU_R5000
541 select SYS_HAS_CPU_R10000
542 select R5000_CPU_SCACHE
543 select SYS_HAS_EARLY_PRINTK
544 select SYS_SUPPORTS_32BIT_KERNEL
545 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
546 select SYS_SUPPORTS_BIG_ENDIAN
547 select SYS_SUPPORTS_HIGHMEM
548 select SYS_SUPPORTS_LITTLE_ENDIAN
550 The SNI RM200/300/400 are MIPS-based machines manufactured by
551 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
552 Technology and now in turn merged with Fujitsu. Say Y here to
553 support this machine type.
556 bool "Toshiba TX39 series based machines"
559 bool "Toshiba TX49 series based machines"
561 config MIKROTIK_RB532
562 bool "Mikrotik RB532 boards"
565 select DMA_NONCOHERENT
566 select GENERIC_HARDIRQS_NO__DO_IRQ
569 select SYS_HAS_CPU_MIPS32_R1
570 select SYS_SUPPORTS_32BIT_KERNEL
571 select SYS_SUPPORTS_LITTLE_ENDIAN
574 select ARCH_REQUIRE_GPIOLIB
576 Support the Mikrotik(tm) RouterBoard 532 series,
577 based on the IDT RC32434 SoC.
580 bool "Wind River PPMC board"
585 select DMA_NONCOHERENT
587 select PCI_GT64XXX_PCI0
589 select SYS_HAS_CPU_MIPS32_R1
590 select SYS_HAS_CPU_MIPS32_R2
591 select SYS_HAS_CPU_MIPS64_R1
592 select SYS_HAS_CPU_NEVADA
593 select SYS_HAS_CPU_RM7000
594 select SYS_SUPPORTS_32BIT_KERNEL
595 select SYS_SUPPORTS_64BIT_KERNEL
596 select SYS_SUPPORTS_BIG_ENDIAN
597 select SYS_SUPPORTS_LITTLE_ENDIAN
599 This enables support for the Wind River MIPS32 4KC PPMC evaluation
600 board, which is based on GT64120 bridge chip.
602 config CAVIUM_OCTEON_SIMULATOR
603 bool "Support for the Cavium Networks Octeon Simulator"
605 select 64BIT_PHYS_ADDR
607 select SYS_SUPPORTS_64BIT_KERNEL
608 select SYS_SUPPORTS_BIG_ENDIAN
609 select SYS_SUPPORTS_HIGHMEM
610 select SYS_HAS_CPU_CAVIUM_OCTEON
612 The Octeon simulator is software performance model of the Cavium
613 Octeon Processor. It supports simulating Octeon processors on x86
616 config CAVIUM_OCTEON_REFERENCE_BOARD
617 bool "Support for the Cavium Networks Octeon reference board"
619 select 64BIT_PHYS_ADDR
621 select SYS_SUPPORTS_64BIT_KERNEL
622 select SYS_SUPPORTS_BIG_ENDIAN
623 select SYS_SUPPORTS_HIGHMEM
624 select SYS_HAS_EARLY_PRINTK
625 select SYS_HAS_CPU_CAVIUM_OCTEON
628 This option supports all of the Octeon reference boards from Cavium
629 Networks. It builds a kernel that dynamically determines the Octeon
630 CPU type and supports all known board reference implementations.
631 Some of the supported boards are:
638 Say Y here for most Octeon reference boards.
642 source "arch/mips/alchemy/Kconfig"
643 source "arch/mips/basler/excite/Kconfig"
644 source "arch/mips/jazz/Kconfig"
645 source "arch/mips/lasat/Kconfig"
646 source "arch/mips/pmc-sierra/Kconfig"
647 source "arch/mips/sgi-ip27/Kconfig"
648 source "arch/mips/sibyte/Kconfig"
649 source "arch/mips/txx9/Kconfig"
650 source "arch/mips/vr41xx/Kconfig"
651 source "arch/mips/cavium-octeon/Kconfig"
655 config RWSEM_GENERIC_SPINLOCK
659 config RWSEM_XCHGADD_ALGORITHM
662 config ARCH_HAS_ILOG2_U32
666 config ARCH_HAS_ILOG2_U64
670 config ARCH_SUPPORTS_OPROFILE
672 default y if !MIPS_MT_SMTC
674 config GENERIC_FIND_NEXT_BIT
678 config GENERIC_HWEIGHT
682 config GENERIC_CALIBRATE_DELAY
686 config GENERIC_CLOCKEVENTS
694 config GENERIC_CMOS_UPDATE
698 config SCHED_OMIT_FRAME_POINTER
702 config GENERIC_HARDIRQS_NO__DO_IRQ
707 # Select some configuration options automatically based on user selections.
712 config ARCH_MAY_HAVE_PC_FDC
758 select ARCH_REQUIRE_GPIOLIB
767 config DMA_NONCOHERENT
769 select DMA_NEED_PCI_MAP_STATE
771 config DMA_NEED_PCI_MAP_STATE
775 bool "Early printk" if EMBEDDED && DEBUG_KERNEL
776 depends on SYS_HAS_EARLY_PRINTK
779 This option enables special console drivers which allow the kernel
780 to print messages very early in the bootup process.
782 This is useful for kernel debugging when your machine crashes very
783 early before the console code is initialized. For normal operation,
784 it is not recommended because it looks ugly on some machines and
785 doesn't cooperate with an X server. You should normally say N here,
786 unless you want to debug such a crash.
788 config SYS_HAS_EARLY_PRINTK
807 config MIPS_DISABLE_OBSOLETE_IDE
816 config GENERIC_ISA_DMA
818 select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
820 config GENERIC_ISA_DMA_SUPPORT_BROKEN
822 select GENERIC_ISA_DMA
828 # Endianess selection. Sufficiently obscure so many users don't know what to
829 # answer,so we try hard to limit the available choices. Also the use of a
830 # choice statement should be more obvious to the user.
833 prompt "Endianess selection"
835 Some MIPS machines can be configured for either little or big endian
836 byte order. These modes require different kernels and a different
837 Linux distribution. In general there is one preferred byteorder for a
838 particular system but some systems are just as commonly used in the
839 one or the other endianness.
841 config CPU_BIG_ENDIAN
843 depends on SYS_SUPPORTS_BIG_ENDIAN
845 config CPU_LITTLE_ENDIAN
847 depends on SYS_SUPPORTS_LITTLE_ENDIAN
852 config SYS_SUPPORTS_APM_EMULATION
855 config SYS_SUPPORTS_BIG_ENDIAN
858 config SYS_SUPPORTS_LITTLE_ENDIAN
885 config IRQ_CPU_OCTEON
888 config MIPS_BOARDS_GEN
891 config PCI_GT64XXX_PCI0
894 config NO_EXCEPT_FILL
905 select DMA_NONCOHERENT
908 select SYS_HAS_CPU_R5500
909 select SYS_SUPPORTS_32BIT_KERNEL
910 select SYS_SUPPORTS_64BIT_KERNEL
911 select SYS_SUPPORTS_BIG_ENDIAN
918 select DMA_NONCOHERENT
919 select SYS_HAS_CPU_MIPS32_R2
920 select SYS_SUPPORTS_32BIT_KERNEL
921 select SYS_SUPPORTS_LITTLE_ENDIAN
922 select SYS_SUPPORTS_BIG_ENDIAN
923 select GENERIC_HARDIRQS_NO__DO_IRQ
925 select CPU_MIPSR2_IRQ_VI
937 select DMA_NONCOHERENT
939 select SYS_HAS_CPU_MIPS32_R1
940 select SYS_HAS_EARLY_PRINTK
941 select SYS_SUPPORTS_32BIT_KERNEL
942 select GENERIC_HARDIRQS_NO__DO_IRQ
951 config SGI_HAS_INDYDOG
969 config DEFAULT_SGI_PARTITION
981 config MIPS_L1_CACHE_SHIFT
983 default "4" if MACH_DECSTATION || MIKROTIK_RB532
984 default "7" if SGI_IP22 || SGI_IP27 || SGI_IP28 || SNI_RM || CPU_CAVIUM_OCTEON
985 default "4" if PMC_MSP4200_EVAL
988 config HAVE_STD_PC_SERIAL_PORT
992 bool "ARC console support"
993 depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN)
997 depends on MACH_JAZZ || SNI_RM || SGI_IP32
1002 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP28 || SGI_IP32
1011 menu "CPU selection"
1017 config CPU_LOONGSON2
1019 depends on SYS_HAS_CPU_LOONGSON2
1020 select CPU_SUPPORTS_32BIT_KERNEL
1021 select CPU_SUPPORTS_64BIT_KERNEL
1022 select CPU_SUPPORTS_HIGHMEM
1024 The Loongson 2E processor implements the MIPS III instruction set
1025 with many extensions.
1027 config CPU_MIPS32_R1
1028 bool "MIPS32 Release 1"
1029 depends on SYS_HAS_CPU_MIPS32_R1
1031 select CPU_HAS_PREFETCH
1032 select CPU_SUPPORTS_32BIT_KERNEL
1033 select CPU_SUPPORTS_HIGHMEM
1035 Choose this option to build a kernel for release 1 or later of the
1036 MIPS32 architecture. Most modern embedded systems with a 32-bit
1037 MIPS processor are based on a MIPS32 processor. If you know the
1038 specific type of processor in your system, choose those that one
1039 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1040 Release 2 of the MIPS32 architecture is available since several
1041 years so chances are you even have a MIPS32 Release 2 processor
1042 in which case you should choose CPU_MIPS32_R2 instead for better
1045 config CPU_MIPS32_R2
1046 bool "MIPS32 Release 2"
1047 depends on SYS_HAS_CPU_MIPS32_R2
1049 select CPU_HAS_PREFETCH
1050 select CPU_SUPPORTS_32BIT_KERNEL
1051 select CPU_SUPPORTS_HIGHMEM
1053 Choose this option to build a kernel for release 2 or later of the
1054 MIPS32 architecture. Most modern embedded systems with a 32-bit
1055 MIPS processor are based on a MIPS32 processor. If you know the
1056 specific type of processor in your system, choose those that one
1057 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1059 config CPU_MIPS64_R1
1060 bool "MIPS64 Release 1"
1061 depends on SYS_HAS_CPU_MIPS64_R1
1063 select CPU_HAS_PREFETCH
1064 select CPU_SUPPORTS_32BIT_KERNEL
1065 select CPU_SUPPORTS_64BIT_KERNEL
1066 select CPU_SUPPORTS_HIGHMEM
1068 Choose this option to build a kernel for release 1 or later of the
1069 MIPS64 architecture. Many modern embedded systems with a 64-bit
1070 MIPS processor are based on a MIPS64 processor. If you know the
1071 specific type of processor in your system, choose those that one
1072 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1073 Release 2 of the MIPS64 architecture is available since several
1074 years so chances are you even have a MIPS64 Release 2 processor
1075 in which case you should choose CPU_MIPS64_R2 instead for better
1078 config CPU_MIPS64_R2
1079 bool "MIPS64 Release 2"
1080 depends on SYS_HAS_CPU_MIPS64_R2
1082 select CPU_HAS_PREFETCH
1083 select CPU_SUPPORTS_32BIT_KERNEL
1084 select CPU_SUPPORTS_64BIT_KERNEL
1085 select CPU_SUPPORTS_HIGHMEM
1087 Choose this option to build a kernel for release 2 or later of the
1088 MIPS64 architecture. Many modern embedded systems with a 64-bit
1089 MIPS processor are based on a MIPS64 processor. If you know the
1090 specific type of processor in your system, choose those that one
1091 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1095 depends on SYS_HAS_CPU_R3000
1097 select CPU_SUPPORTS_32BIT_KERNEL
1098 select CPU_SUPPORTS_HIGHMEM
1100 Please make sure to pick the right CPU type. Linux/MIPS is not
1101 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1102 *not* work on R4000 machines and vice versa. However, since most
1103 of the supported machines have an R4000 (or similar) CPU, R4x00
1104 might be a safe bet. If the resulting kernel does not work,
1105 try to recompile with R3000.
1109 depends on SYS_HAS_CPU_TX39XX
1110 select CPU_SUPPORTS_32BIT_KERNEL
1114 depends on SYS_HAS_CPU_VR41XX
1115 select CPU_SUPPORTS_32BIT_KERNEL
1116 select CPU_SUPPORTS_64BIT_KERNEL
1118 The options selects support for the NEC VR4100 series of processors.
1119 Only choose this option if you have one of these processors as a
1120 kernel built with this option will not run on any other type of
1121 processor or vice versa.
1125 depends on SYS_HAS_CPU_R4300
1127 select CPU_SUPPORTS_32BIT_KERNEL
1128 select CPU_SUPPORTS_64BIT_KERNEL
1130 MIPS Technologies R4300-series processors.
1134 depends on SYS_HAS_CPU_R4X00
1136 select CPU_SUPPORTS_32BIT_KERNEL
1137 select CPU_SUPPORTS_64BIT_KERNEL
1139 MIPS Technologies R4000-series processors other than 4300, including
1140 the R4000, R4400, R4600, and 4700.
1144 depends on SYS_HAS_CPU_TX49XX
1146 select CPU_HAS_PREFETCH
1147 select CPU_SUPPORTS_32BIT_KERNEL
1148 select CPU_SUPPORTS_64BIT_KERNEL
1152 depends on SYS_HAS_CPU_R5000
1154 select CPU_SUPPORTS_32BIT_KERNEL
1155 select CPU_SUPPORTS_64BIT_KERNEL
1157 MIPS Technologies R5000-series processors other than the Nevada.
1161 depends on SYS_HAS_CPU_R5432
1163 select CPU_SUPPORTS_32BIT_KERNEL
1164 select CPU_SUPPORTS_64BIT_KERNEL
1168 depends on SYS_HAS_CPU_R5500
1170 select CPU_SUPPORTS_32BIT_KERNEL
1171 select CPU_SUPPORTS_64BIT_KERNEL
1173 NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV
1178 depends on EXPERIMENTAL
1180 depends on SYS_HAS_CPU_R6000
1181 select CPU_SUPPORTS_32BIT_KERNEL
1183 MIPS Technologies R6000 and R6000A series processors. Note these
1184 processors are extremely rare and the support for them is incomplete.
1188 depends on SYS_HAS_CPU_NEVADA
1190 select CPU_SUPPORTS_32BIT_KERNEL
1191 select CPU_SUPPORTS_64BIT_KERNEL
1193 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1197 depends on EXPERIMENTAL
1198 depends on SYS_HAS_CPU_R8000
1200 select CPU_HAS_PREFETCH
1201 select CPU_SUPPORTS_64BIT_KERNEL
1203 MIPS Technologies R8000 processors. Note these processors are
1204 uncommon and the support for them is incomplete.
1208 depends on SYS_HAS_CPU_R10000
1210 select CPU_HAS_PREFETCH
1211 select CPU_SUPPORTS_32BIT_KERNEL
1212 select CPU_SUPPORTS_64BIT_KERNEL
1213 select CPU_SUPPORTS_HIGHMEM
1215 MIPS Technologies R10000-series processors.
1219 depends on SYS_HAS_CPU_RM7000
1221 select CPU_HAS_PREFETCH
1222 select CPU_SUPPORTS_32BIT_KERNEL
1223 select CPU_SUPPORTS_64BIT_KERNEL
1224 select CPU_SUPPORTS_HIGHMEM
1228 depends on SYS_HAS_CPU_RM9000
1230 select CPU_HAS_PREFETCH
1231 select CPU_SUPPORTS_32BIT_KERNEL
1232 select CPU_SUPPORTS_64BIT_KERNEL
1233 select CPU_SUPPORTS_HIGHMEM
1234 select WEAK_ORDERING
1238 depends on SYS_HAS_CPU_SB1
1240 select CPU_SUPPORTS_32BIT_KERNEL
1241 select CPU_SUPPORTS_64BIT_KERNEL
1242 select CPU_SUPPORTS_HIGHMEM
1243 select WEAK_ORDERING
1245 config CPU_CAVIUM_OCTEON
1246 bool "Cavium Octeon processor"
1247 depends on SYS_HAS_CPU_CAVIUM_OCTEON
1249 select IRQ_CPU_OCTEON
1250 select CPU_HAS_PREFETCH
1251 select CPU_SUPPORTS_64BIT_KERNEL
1252 select SYS_SUPPORTS_SMP
1253 select NR_CPUS_DEFAULT_16
1254 select WEAK_ORDERING
1255 select WEAK_REORDERING_BEYOND_LLSC
1256 select CPU_SUPPORTS_HIGHMEM
1258 The Cavium Octeon processor is a highly integrated chip containing
1259 many ethernet hardware widgets for networking tasks. The processor
1260 can have up to 16 Mips64v2 cores and 8 integrated gigabit ethernets.
1261 Full details can be found at http://www.caviumnetworks.com.
1265 config SYS_HAS_CPU_LOONGSON2
1268 config SYS_HAS_CPU_MIPS32_R1
1271 config SYS_HAS_CPU_MIPS32_R2
1274 config SYS_HAS_CPU_MIPS64_R1
1277 config SYS_HAS_CPU_MIPS64_R2
1280 config SYS_HAS_CPU_R3000
1283 config SYS_HAS_CPU_TX39XX
1286 config SYS_HAS_CPU_VR41XX
1289 config SYS_HAS_CPU_R4300
1292 config SYS_HAS_CPU_R4X00
1295 config SYS_HAS_CPU_TX49XX
1298 config SYS_HAS_CPU_R5000
1301 config SYS_HAS_CPU_R5432
1304 config SYS_HAS_CPU_R5500
1307 config SYS_HAS_CPU_R6000
1310 config SYS_HAS_CPU_NEVADA
1313 config SYS_HAS_CPU_R8000
1316 config SYS_HAS_CPU_R10000
1319 config SYS_HAS_CPU_RM7000
1322 config SYS_HAS_CPU_RM9000
1325 config SYS_HAS_CPU_SB1
1328 config SYS_HAS_CPU_CAVIUM_OCTEON
1332 # CPU may reorder R->R, R->W, W->R, W->W
1333 # Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
1335 config WEAK_ORDERING
1339 # CPU may reorder reads and writes beyond LL/SC
1340 # CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
1342 config WEAK_REORDERING_BEYOND_LLSC
1347 # These two indicate any level of the MIPS32 and MIPS64 architecture
1351 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1355 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1358 # These two indicate the revision of the architecture, either Release 1 or Release 2
1362 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1366 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 || CPU_CAVIUM_OCTEON
1368 config SYS_SUPPORTS_32BIT_KERNEL
1370 config SYS_SUPPORTS_64BIT_KERNEL
1372 config CPU_SUPPORTS_32BIT_KERNEL
1374 config CPU_SUPPORTS_64BIT_KERNEL
1378 # Set to y for ptrace access to watch registers.
1380 config HARDWARE_WATCHPOINTS
1382 default y if CPU_MIPSR1 || CPU_MIPSR2
1388 prompt "Kernel code model"
1390 You should only select this option if you have a workload that
1391 actually benefits from 64-bit processing or if your machine has
1392 large memory. You will only be presented a single option in this
1393 menu if your system does not support both 32-bit and 64-bit kernels.
1396 bool "32-bit kernel"
1397 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1400 Select this option if you want to build a 32-bit kernel.
1402 bool "64-bit kernel"
1403 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1404 select HAVE_SYSCALL_WRAPPERS
1406 Select this option if you want to build a 64-bit kernel.
1411 prompt "Kernel page size"
1412 default PAGE_SIZE_4KB
1414 config PAGE_SIZE_4KB
1417 This option select the standard 4kB Linux page size. On some
1418 R3000-family processors this is the only available page size. Using
1419 4kB page size will minimize memory consumption and is therefore
1420 recommended for low memory systems.
1422 config PAGE_SIZE_8KB
1424 depends on EXPERIMENTAL && CPU_R8000
1426 Using 8kB page size will result in higher performance kernel at
1427 the price of higher memory consumption. This option is available
1428 only on the R8000 processor. Not that at the time of this writing
1429 this option is still high experimental; there are also issues with
1430 compatibility of user applications.
1432 config PAGE_SIZE_16KB
1434 depends on !CPU_R3000 && !CPU_TX39XX
1436 Using 16kB page size will result in higher performance kernel at
1437 the price of higher memory consumption. This option is available on
1438 all non-R3000 family processors. Note that you will need a suitable
1439 Linux distribution to support this.
1441 config PAGE_SIZE_64KB
1443 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1445 Using 64kB page size will result in higher performance kernel at
1446 the price of higher memory consumption. This option is available on
1447 all non-R3000 family processor. Not that at the time of this
1448 writing this option is still high experimental.
1455 config IP22_CPU_SCACHE
1460 # Support for a MIPS32 / MIPS64 style S-caches
1462 config MIPS_CPU_SCACHE
1466 config R5000_CPU_SCACHE
1470 config RM7000_CPU_SCACHE
1474 config SIBYTE_DMA_PAGEOPS
1475 bool "Use DMA to clear/copy pages"
1478 Instead of using the CPU to zero and copy pages, use a Data Mover
1479 channel. These DMA channels are otherwise unused by the standard
1480 SiByte Linux port. Seems to give a small performance benefit.
1482 config CPU_HAS_PREFETCH
1486 prompt "MIPS MT options"
1488 config MIPS_MT_DISABLED
1489 bool "Disable multithreading support."
1491 Use this option if your workload can't take advantage of
1492 MIPS hardware multithreading support. On systems that don't have
1493 the option of an MT-enabled processor this option will be the only
1494 option in this menu.
1497 bool "Use 1 TC on each available VPE for SMP"
1498 depends on SYS_SUPPORTS_MULTITHREADING
1499 select CPU_MIPSR2_IRQ_VI
1500 select CPU_MIPSR2_IRQ_EI
1502 select NR_CPUS_DEFAULT_2
1504 select SYS_SUPPORTS_SCHED_SMT if SMP
1505 select SYS_SUPPORTS_SMP
1508 This is a kernel model which is also known a VSMP or lately
1509 has been marketesed into SMVP.
1512 bool "SMTC: Use all TCs on all VPEs for SMP"
1513 depends on CPU_MIPS32_R2
1514 #depends on CPU_MIPS64_R2 # once there is hardware ...
1515 depends on SYS_SUPPORTS_MULTITHREADING
1516 select CPU_MIPSR2_IRQ_VI
1517 select CPU_MIPSR2_IRQ_EI
1519 select NR_CPUS_DEFAULT_8
1521 select SYS_SUPPORTS_SMP
1524 This is a kernel model which is known a SMTC or lately has been
1525 marketesed into SMVP.
1533 bool "SMT (multithreading) scheduler support"
1534 depends on SYS_SUPPORTS_SCHED_SMT
1537 SMT scheduler support improves the CPU scheduler's decision making
1538 when dealing with MIPS MT enabled cores at a cost of slightly
1539 increased overhead in some places. If unsure say N here.
1541 config SYS_SUPPORTS_SCHED_SMT
1545 config SYS_SUPPORTS_MULTITHREADING
1548 config MIPS_MT_FPAFF
1549 bool "Dynamic FPU affinity for FP-intensive threads"
1551 depends on MIPS_MT_SMP || MIPS_MT_SMTC
1553 config MIPS_VPE_LOADER
1554 bool "VPE loader support."
1555 depends on SYS_SUPPORTS_MULTITHREADING
1556 select CPU_MIPSR2_IRQ_VI
1557 select CPU_MIPSR2_IRQ_EI
1560 Includes a loader for loading an elf relocatable object
1561 onto another VPE and running it.
1563 config MIPS_MT_SMTC_IM_BACKSTOP
1564 bool "Use per-TC register bits as backstop for inhibited IM bits"
1565 depends on MIPS_MT_SMTC
1568 To support multiple TC microthreads acting as "CPUs" within
1569 a VPE, VPE-wide interrupt mask bits must be specially manipulated
1570 during interrupt handling. To support legacy drivers and interrupt
1571 controller management code, SMTC has a "backstop" to track and
1572 if necessary restore the interrupt mask. This has some performance
1573 impact on interrupt service overhead.
1575 config MIPS_MT_SMTC_IRQAFF
1576 bool "Support IRQ affinity API"
1577 depends on MIPS_MT_SMTC
1580 Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.)
1581 for SMTC Linux kernel. Requires platform support, of which
1582 an example can be found in the MIPS kernel i8259 and Malta
1583 platform code. Adds some overhead to interrupt dispatch, and
1584 should be used only if you know what you are doing.
1586 config MIPS_VPE_LOADER_TOM
1587 bool "Load VPE program into memory hidden from linux"
1588 depends on MIPS_VPE_LOADER
1591 The loader can use memory that is present but has been hidden from
1592 Linux using the kernel command line option "mem=xxMB". It's up to
1593 you to ensure the amount you put in the option and the space your
1594 program requires is less or equal to the amount physically present.
1596 # this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1597 config MIPS_VPE_APSP_API
1598 bool "Enable support for AP/SP API (RTLX)"
1599 depends on MIPS_VPE_LOADER
1602 config MIPS_APSP_KSPD
1604 depends on MIPS_VPE_APSP_API
1607 KSPD is a kernel daemon that accepts syscall requests from the SP
1608 side, actions them and returns the results. It also handles the
1609 "exit" syscall notifying other kernel modules the SP program is
1610 exiting. You probably want to say yes here.
1613 bool "MIPS CMP framework support"
1614 depends on SYS_SUPPORTS_MIPS_CMP
1615 select SYNC_R4K if BROKEN
1616 select SYS_SUPPORTS_SMP
1617 select SYS_SUPPORTS_SCHED_SMT if SMP
1618 select WEAK_ORDERING
1621 This is a placeholder option for the GCMP work. It will need to
1622 be handled differently...
1624 config SB1_PASS_1_WORKAROUNDS
1626 depends on CPU_SB1_PASS_1
1629 config SB1_PASS_2_WORKAROUNDS
1631 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1634 config SB1_PASS_2_1_WORKAROUNDS
1636 depends on CPU_SB1 && CPU_SB1_PASS_2
1639 config 64BIT_PHYS_ADDR
1645 config CPU_HAS_SMARTMIPS
1646 depends on SYS_SUPPORTS_SMARTMIPS
1647 bool "Support for the SmartMIPS ASE"
1649 SmartMIPS is a extension of the MIPS32 architecture aimed at
1650 increased security at both hardware and software level for
1651 smartcards. Enabling this option will allow proper use of the
1652 SmartMIPS instructions by Linux applications. However a kernel with
1653 this option will not work on a MIPS core without SmartMIPS core. If
1654 you don't know you probably don't have SmartMIPS and should say N
1661 # Vectored interrupt mode is an R2 feature
1663 config CPU_MIPSR2_IRQ_VI
1667 # Extended interrupt mode is an R2 feature
1669 config CPU_MIPSR2_IRQ_EI
1674 depends on !CPU_R3000
1677 config GENERIC_CLOCKEVENTS_BROADCAST
1683 config CPU_DADDI_WORKAROUNDS
1686 config CPU_R4000_WORKAROUNDS
1688 select CPU_R4400_WORKAROUNDS
1690 config CPU_R4400_WORKAROUNDS
1694 # Use the generic interrupt handling code in kernel/irq/:
1696 config GENERIC_HARDIRQS
1700 config GENERIC_IRQ_PROBE
1708 # - Highmem only makes sense for the 32-bit kernel.
1709 # - The current highmem code will only work properly on physically indexed
1710 # caches such as R3000, SB1, R7000 or those that look like they're virtually
1711 # indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1712 # moment we protect the user and offer the highmem option only on machines
1713 # where it's known to be safe. This will not offer highmem on a few systems
1714 # such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1715 # indexed CPUs but we're playing safe.
1716 # - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1717 # know they might have memory configurations that could make use of highmem
1721 bool "High Memory Support"
1722 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1724 config CPU_SUPPORTS_HIGHMEM
1727 config SYS_SUPPORTS_HIGHMEM
1730 config SYS_SUPPORTS_SMARTMIPS
1733 config ARCH_FLATMEM_ENABLE
1737 config ARCH_DISCONTIGMEM_ENABLE
1739 default y if SGI_IP27
1741 Say Y to support efficient handling of discontiguous physical memory,
1742 for architectures which are either NUMA (Non-Uniform Memory Access)
1743 or have huge holes in the physical address space for other reasons.
1744 See <file:Documentation/vm/numa> for more.
1746 config ARCH_POPULATES_NODE_MAP
1749 config ARCH_SPARSEMEM_ENABLE
1751 select SPARSEMEM_STATIC
1755 depends on SYS_SUPPORTS_NUMA
1757 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1758 Access). This option improves performance on systems with more
1759 than two nodes; on two node systems it is generally better to
1760 leave it disabled; on single node systems disable this option
1763 config SYS_SUPPORTS_NUMA
1769 depends on NEED_MULTIPLE_NODES
1774 bool "Multi-Processing support"
1775 depends on SYS_SUPPORTS_SMP
1777 select USE_GENERIC_SMP_HELPERS
1779 This enables support for systems with more than one CPU. If you have
1780 a system with only one CPU, like most personal computers, say N. If
1781 you have a system with more than one CPU, say Y.
1783 If you say N here, the kernel will run on single and multiprocessor
1784 machines, but will use only one CPU of a multiprocessor machine. If
1785 you say Y here, the kernel will run on many, but not all,
1786 singleprocessor machines. On a singleprocessor machine, the kernel
1787 will run faster if you say N here.
1789 People using multiprocessor machines who say Y here should also say
1790 Y to "Enhanced Real Time Clock Support", below.
1792 See also the SMP-HOWTO available at
1793 <http://www.tldp.org/docs.html#howto>.
1795 If you don't know what to do here, say N.
1800 config SYS_SUPPORTS_MIPS_CMP
1803 config SYS_SUPPORTS_SMP
1806 config NR_CPUS_DEFAULT_1
1809 config NR_CPUS_DEFAULT_2
1812 config NR_CPUS_DEFAULT_4
1815 config NR_CPUS_DEFAULT_8
1818 config NR_CPUS_DEFAULT_16
1821 config NR_CPUS_DEFAULT_32
1824 config NR_CPUS_DEFAULT_64
1828 int "Maximum number of CPUs (2-64)"
1829 range 1 64 if NR_CPUS_DEFAULT_1
1831 default "1" if NR_CPUS_DEFAULT_1
1832 default "2" if NR_CPUS_DEFAULT_2
1833 default "4" if NR_CPUS_DEFAULT_4
1834 default "8" if NR_CPUS_DEFAULT_8
1835 default "16" if NR_CPUS_DEFAULT_16
1836 default "32" if NR_CPUS_DEFAULT_32
1837 default "64" if NR_CPUS_DEFAULT_64
1839 This allows you to specify the maximum number of CPUs which this
1840 kernel will support. The maximum supported value is 32 for 32-bit
1841 kernel and 64 for 64-bit kernels; the minimum value which makes
1842 sense is 1 for Qemu (useful only for kernel debugging purposes)
1843 and 2 for all others.
1845 This is purely to save memory - each supported CPU adds
1846 approximately eight kilobytes to the kernel image. For best
1847 performance should round up your number of processors to the next
1850 source "kernel/time/Kconfig"
1853 # Timer Interrupt Frequency Configuration
1857 prompt "Timer frequency"
1860 Allows the configuration of the timer frequency.
1863 bool "48 HZ" if SYS_SUPPORTS_48HZ || SYS_SUPPORTS_ARBIT_HZ
1866 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1869 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1872 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1875 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1878 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1881 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1885 config SYS_SUPPORTS_48HZ
1888 config SYS_SUPPORTS_100HZ
1891 config SYS_SUPPORTS_128HZ
1894 config SYS_SUPPORTS_250HZ
1897 config SYS_SUPPORTS_256HZ
1900 config SYS_SUPPORTS_1000HZ
1903 config SYS_SUPPORTS_1024HZ
1906 config SYS_SUPPORTS_ARBIT_HZ
1908 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1909 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1910 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1911 !SYS_SUPPORTS_1024HZ
1916 default 100 if HZ_100
1917 default 128 if HZ_128
1918 default 250 if HZ_250
1919 default 256 if HZ_256
1920 default 1000 if HZ_1000
1921 default 1024 if HZ_1024
1923 source "kernel/Kconfig.preempt"
1925 config MIPS_INSANE_LARGE
1926 bool "Support for large 64-bit configurations"
1927 depends on CPU_R10000 && 64BIT
1929 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1930 previous 64-bit processors which only supported 40 bit / 1TB. If you
1931 need processes of more than 1TB virtual address space, say Y here.
1932 This will result in additional memory usage, so it is not
1933 recommended for normal users.
1936 bool "Kexec system call (EXPERIMENTAL)"
1937 depends on EXPERIMENTAL
1939 kexec is a system call that implements the ability to shutdown your
1940 current kernel, and to start another kernel. It is like a reboot
1941 but it is independent of the system firmware. And like a reboot
1942 you can start any kernel with it, not just Linux.
1944 The name comes from the similarity to the exec system call.
1946 It is an ongoing process to be certain the hardware in a machine
1947 is properly shutdown, so do not be surprised if this code does not
1948 initially work for you. It may help to enable device hotplugging
1949 support. As of this writing the exact hardware interface is
1950 strongly in flux, so no good recommendation can be made.
1953 bool "Enable seccomp to safely compute untrusted bytecode"
1957 This kernel feature is useful for number crunching applications
1958 that may need to compute untrusted bytecode during their
1959 execution. By using pipes or other transports made available to
1960 the process as file descriptors supporting the read/write
1961 syscalls, it's possible to isolate those applications in
1962 their own address space using seccomp. Once seccomp is
1963 enabled via /proc/<pid>/seccomp, it cannot be disabled
1964 and the task is only allowed to execute a few safe syscalls
1965 defined by each seccomp mode.
1967 If unsure, say Y. Only embedded should say N here.
1971 config RWSEM_GENERIC_SPINLOCK
1975 config LOCKDEP_SUPPORT
1979 config STACKTRACE_SUPPORT
1983 source "init/Kconfig"
1985 config PROBE_INITRD_HEADER
1986 bool "Probe initrd header created by addinitrd"
1987 depends on BLK_DEV_INITRD
1989 Probe initrd header at the last page of kernel image.
1990 Say Y here if you are using arch/mips/boot/addinitrd.c to
1991 add initrd or initramfs image to the kernel image.
1994 source "kernel/Kconfig.freezer"
1996 menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
2004 bool "Support for PCI controller"
2005 depends on HW_HAS_PCI
2008 Find out whether you have a PCI motherboard. PCI is the name of a
2009 bus system, i.e. the way the CPU talks to the other stuff inside
2010 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
2016 source "drivers/pci/Kconfig"
2019 # ISA support is now enabled via select. Too many systems still have the one
2020 # or other ISA chip on the board that users don't know about so don't expect
2021 # users to choose the right thing ...
2028 depends on HW_HAS_EISA
2030 select GENERIC_ISA_DMA
2032 The Extended Industry Standard Architecture (EISA) bus was
2033 developed as an open alternative to the IBM MicroChannel bus.
2035 The EISA bus provided some of the features of the IBM MicroChannel
2036 bus while maintaining backward compatibility with cards made for
2037 the older ISA bus. The EISA bus saw limited use between 1988 and
2038 1995 when it was made obsolete by the PCI bus.
2040 Say Y here if you are building a kernel for an EISA-based machine.
2044 source "drivers/eisa/Kconfig"
2047 bool "TURBOchannel support"
2048 depends on MACH_DECSTATION
2050 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
2051 processors. Documentation on writing device drivers for TurboChannel
2053 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
2056 # bool "Access.Bus support"
2069 source "drivers/pcmcia/Kconfig"
2071 source "drivers/pci/hotplug/Kconfig"
2075 menu "Executable file formats"
2077 source "fs/Kconfig.binfmt"
2082 config MIPS32_COMPAT
2083 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
2086 Select this option if you want Linux/MIPS 32-bit binary
2087 compatibility. Since all software available for Linux/MIPS is
2088 currently 32-bit you should say Y here.
2092 depends on MIPS32_COMPAT
2095 config SYSVIPC_COMPAT
2097 depends on COMPAT && SYSVIPC
2101 bool "Kernel support for o32 binaries"
2102 depends on MIPS32_COMPAT
2104 Select this option if you want to run o32 binaries. These are pure
2105 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
2106 existing binaries are in this format.
2111 bool "Kernel support for n32 binaries"
2112 depends on MIPS32_COMPAT
2114 Select this option if you want to run n32 binaries. These are
2115 64-bit binaries using 32-bit quantities for addressing and certain
2116 data that would normally be 64-bit. They are used in special
2123 default y if MIPS32_O32 || MIPS32_N32
2127 menu "Power management options"
2129 config ARCH_SUSPEND_POSSIBLE
2133 source "kernel/power/Kconfig"
2137 source "net/Kconfig"
2139 source "drivers/Kconfig"
2143 source "arch/mips/Kconfig.debug"
2145 source "security/Kconfig"
2147 source "crypto/Kconfig"
2149 source "lib/Kconfig"