7 # Horrible source of confusion. Die, die, die ...
9 select RTC_LIB if !LEMOTE_FULOONG2E
11 mainmenu "Linux/MIPS Kernel Configuration"
13 menu "Machine selection"
23 bool "Alchemy processor based machines"
26 bool "Texas Instruments AR7"
28 select DMA_NONCOHERENT
34 select SYS_HAS_CPU_MIPS32_R1
35 select SYS_HAS_EARLY_PRINTK
36 select SYS_SUPPORTS_32BIT_KERNEL
37 select SYS_SUPPORTS_LITTLE_ENDIAN
42 Support for the Texas Instruments AR7 System-on-a-Chip
43 family: TNETD7100, 7200 and 7300.
46 bool "Basler eXcite smart camera"
55 select SYS_HAS_CPU_RM9000
56 select SYS_SUPPORTS_32BIT_KERNEL
57 select SYS_SUPPORTS_BIG_ENDIAN
59 The eXcite is a smart camera platform manufactured by
60 Basler Vision Technologies AG.
63 bool "BCM47XX based boards"
66 select DMA_NONCOHERENT
69 select SYS_HAS_CPU_MIPS32_R1
70 select SYS_SUPPORTS_32BIT_KERNEL
71 select SYS_SUPPORTS_LITTLE_ENDIAN
73 select SSB_DRIVER_MIPS
74 select SSB_DRIVER_EXTIF
76 select SSB_PCICORE_HOSTMODE if PCI
78 select SYS_HAS_EARLY_PRINTK
81 Support for BCM47XX based boards
84 bool "Broadcom BCM63XX based boards"
87 select DMA_NONCOHERENT
89 select SYS_HAS_CPU_MIPS32_R1
90 select SYS_SUPPORTS_32BIT_KERNEL
91 select SYS_SUPPORTS_BIG_ENDIAN
92 select SYS_HAS_EARLY_PRINTK
94 select ARCH_REQUIRE_GPIOLIB
96 Support for BCM63XX based boards
103 select DMA_NONCOHERENT
109 select PCI_GT64XXX_PCI0
111 select SYS_HAS_CPU_NEVADA
112 select SYS_HAS_EARLY_PRINTK
113 select SYS_SUPPORTS_32BIT_KERNEL
114 select SYS_SUPPORTS_64BIT_KERNEL
115 select SYS_SUPPORTS_LITTLE_ENDIAN
117 config MACH_DECSTATION
124 select CPU_DADDI_WORKAROUNDS if 64BIT
125 select CPU_R4000_WORKAROUNDS if 64BIT
126 select CPU_R4400_WORKAROUNDS if 64BIT
127 select DMA_NONCOHERENT
130 select SYS_HAS_CPU_R3000
131 select SYS_HAS_CPU_R4X00
132 select SYS_SUPPORTS_32BIT_KERNEL
133 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
134 select SYS_SUPPORTS_LITTLE_ENDIAN
135 select SYS_SUPPORTS_128HZ
136 select SYS_SUPPORTS_256HZ
137 select SYS_SUPPORTS_1024HZ
139 This enables support for DEC's MIPS based workstations. For details
140 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
141 DECstation porting pages on <http://decstation.unix-ag.org/>.
143 If you have one of the following DECstation Models you definitely
144 want to choose R4xx0 for the CPU Type:
151 otherwise choose R3000.
154 bool "Jazz family of machines"
157 select ARCH_MAY_HAVE_PC_FDC
160 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
161 select GENERIC_ISA_DMA
166 select SYS_HAS_CPU_R4X00
167 select SYS_SUPPORTS_32BIT_KERNEL
168 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
169 select SYS_SUPPORTS_100HZ
171 This a family of machines based on the MIPS R4030 chipset which was
172 used by several vendors to build RISC/os and Windows NT workstations.
173 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millennium and
174 Olivetti M700-10 workstations.
177 bool "LASAT Networks platforms"
180 select DMA_NONCOHERENT
181 select SYS_HAS_EARLY_PRINTK
184 select PCI_GT64XXX_PCI0
186 select R5000_CPU_SCACHE
187 select SYS_HAS_CPU_R5000
188 select SYS_SUPPORTS_32BIT_KERNEL
189 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
190 select SYS_SUPPORTS_LITTLE_ENDIAN
193 bool "Loongson family of machines"
195 This enables the support of Loongson family of machines.
197 Loongson is a family of general-purpose MIPS-compatible CPUs.
198 developed at Institute of Computing Technology (ICT),
199 Chinese Academy of Sciences (CAS) in the People's Republic
200 of China. The chief architect is Professor Weiwu Hu.
203 bool "MIPS Malta board"
204 select ARCH_MAY_HAVE_PC_FDC
209 select DMA_NONCOHERENT
210 select GENERIC_ISA_DMA
216 select MIPS_BOARDS_GEN
218 select MIPS_CPU_SCACHE
219 select PCI_GT64XXX_PCI0
222 select SYS_HAS_CPU_MIPS32_R1
223 select SYS_HAS_CPU_MIPS32_R2
224 select SYS_HAS_CPU_MIPS64_R1
225 select SYS_HAS_CPU_NEVADA
226 select SYS_HAS_CPU_RM7000
227 select SYS_HAS_EARLY_PRINTK
228 select SYS_SUPPORTS_32BIT_KERNEL
229 select SYS_SUPPORTS_64BIT_KERNEL
230 select SYS_SUPPORTS_BIG_ENDIAN
231 select SYS_SUPPORTS_LITTLE_ENDIAN
232 select SYS_SUPPORTS_MIPS_CMP
233 select SYS_SUPPORTS_MULTITHREADING
234 select SYS_SUPPORTS_SMARTMIPS
236 This enables support for the MIPS Technologies Malta evaluation
240 bool 'MIPS simulator (MIPSsim)'
243 select DMA_NONCOHERENT
244 select SYS_HAS_EARLY_PRINTK
247 select SYS_HAS_CPU_MIPS32_R1
248 select SYS_HAS_CPU_MIPS32_R2
249 select SYS_HAS_EARLY_PRINTK
250 select SYS_SUPPORTS_32BIT_KERNEL
251 select SYS_SUPPORTS_BIG_ENDIAN
252 select SYS_SUPPORTS_MULTITHREADING
253 select SYS_SUPPORTS_LITTLE_ENDIAN
255 This option enables support for MIPS Technologies MIPSsim software
259 bool "NEC EMMA2RH Mark-eins board"
263 This enables support for the NEC Electronics Mark-eins boards.
266 bool "NEC VR4100 series based machines"
269 select SYS_HAS_CPU_VR41XX
270 select ARCH_REQUIRE_GPIOLIB
273 bool "NXP STB220 board"
276 Support for NXP Semiconductors STB220 Development Board.
283 Support for NXP Semiconductors STB225 Development Board.
286 bool "NXP PNX8550 based JBS board"
288 select SYS_SUPPORTS_LITTLE_ENDIAN
290 config PNX8550_STB810
291 bool "NXP PNX8550 based STB810 board"
293 select SYS_SUPPORTS_LITTLE_ENDIAN
296 bool "PMC-Sierra MSP chipsets"
297 depends on EXPERIMENTAL
298 select DMA_NONCOHERENT
300 select NO_EXCEPT_FILL
302 select SYS_HAS_CPU_MIPS32_R1
303 select SYS_HAS_CPU_MIPS32_R2
304 select SYS_SUPPORTS_32BIT_KERNEL
305 select SYS_SUPPORTS_BIG_ENDIAN
308 select SERIAL_8250_CONSOLE
310 This adds support for the PMC-Sierra family of Multi-Service
311 Processor System-On-A-Chips. These parts include a number
312 of integrated peripherals, interfaces and DSPs in addition to
313 a variety of MIPS cores.
316 bool "PMC-Sierra Yosemite eval board"
325 select SYS_HAS_CPU_RM9000
326 select SYS_HAS_EARLY_PRINTK
327 select SYS_SUPPORTS_32BIT_KERNEL
328 select SYS_SUPPORTS_64BIT_KERNEL
329 select SYS_SUPPORTS_BIG_ENDIAN
330 select SYS_SUPPORTS_HIGHMEM
331 select SYS_SUPPORTS_SMP
333 Yosemite is an evaluation board for the RM9000x2 processor
334 manufactured by PMC-Sierra.
337 bool "SGI IP22 (Indy/Indigo2)"
343 select DEFAULT_SGI_PARTITION
344 select DMA_NONCOHERENT
348 select IP22_CPU_SCACHE
350 select GENERIC_ISA_DMA_SUPPORT_BROKEN
352 select SGI_HAS_INDYDOG
358 select SYS_HAS_CPU_R4X00
359 select SYS_HAS_CPU_R5000
360 select SYS_HAS_EARLY_PRINTK
361 select SYS_SUPPORTS_32BIT_KERNEL
362 select SYS_SUPPORTS_64BIT_KERNEL
363 select SYS_SUPPORTS_BIG_ENDIAN
365 This are the SGI Indy, Challenge S and Indigo2, as well as certain
366 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
367 that runs on these, say Y here.
370 bool "SGI IP27 (Origin200/2000)"
374 select DEFAULT_SGI_PARTITION
376 select SYS_HAS_EARLY_PRINTK
378 select NR_CPUS_DEFAULT_64
379 select SYS_HAS_CPU_R10000
380 select SYS_SUPPORTS_64BIT_KERNEL
381 select SYS_SUPPORTS_BIG_ENDIAN
382 select SYS_SUPPORTS_NUMA
383 select SYS_SUPPORTS_SMP
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
390 bool "SGI IP28 (Indigo2 R10k) (EXPERIMENTAL)"
391 depends on EXPERIMENTAL
397 select DEFAULT_SGI_PARTITION
398 select DMA_NONCOHERENT
399 select GENERIC_ISA_DMA_SUPPORT_BROKEN
405 select SGI_HAS_INDYDOG
411 select SYS_HAS_CPU_R10000
412 select SYS_HAS_EARLY_PRINTK
413 select SYS_SUPPORTS_64BIT_KERNEL
414 select SYS_SUPPORTS_BIG_ENDIAN
416 This is the SGI Indigo2 with R10000 processor. To compile a Linux
417 kernel that runs on these, say Y here.
426 select DMA_NONCOHERENT
429 select R5000_CPU_SCACHE
430 select RM7000_CPU_SCACHE
431 select SYS_HAS_CPU_R5000
432 select SYS_HAS_CPU_R10000 if BROKEN
433 select SYS_HAS_CPU_RM7000
434 select SYS_HAS_CPU_NEVADA
435 select SYS_SUPPORTS_64BIT_KERNEL
436 select SYS_SUPPORTS_BIG_ENDIAN
438 If you want this kernel to run on SGI O2 workstation, say Y here.
441 bool "Sibyte BCM91120C-CRhine"
442 depends on EXPERIMENTAL
445 select SIBYTE_BCM1120
447 select SYS_HAS_CPU_SB1
448 select SYS_SUPPORTS_BIG_ENDIAN
449 select SYS_SUPPORTS_LITTLE_ENDIAN
452 bool "Sibyte BCM91120x-Carmel"
453 depends on EXPERIMENTAL
456 select SIBYTE_BCM1120
458 select SYS_HAS_CPU_SB1
459 select SYS_SUPPORTS_BIG_ENDIAN
460 select SYS_SUPPORTS_LITTLE_ENDIAN
463 bool "Sibyte BCM91125C-CRhone"
464 depends on EXPERIMENTAL
467 select SIBYTE_BCM1125
469 select SYS_HAS_CPU_SB1
470 select SYS_SUPPORTS_BIG_ENDIAN
471 select SYS_SUPPORTS_HIGHMEM
472 select SYS_SUPPORTS_LITTLE_ENDIAN
475 bool "Sibyte BCM91125E-Rhone"
476 depends on EXPERIMENTAL
479 select SIBYTE_BCM1125H
481 select SYS_HAS_CPU_SB1
482 select SYS_SUPPORTS_BIG_ENDIAN
483 select SYS_SUPPORTS_LITTLE_ENDIAN
486 bool "Sibyte BCM91250A-SWARM"
489 select NR_CPUS_DEFAULT_2
492 select SYS_HAS_CPU_SB1
493 select SYS_SUPPORTS_BIG_ENDIAN
494 select SYS_SUPPORTS_HIGHMEM
495 select SYS_SUPPORTS_LITTLE_ENDIAN
496 select ZONE_DMA32 if 64BIT
498 config SIBYTE_LITTLESUR
499 bool "Sibyte BCM91250C2-LittleSur"
500 depends on EXPERIMENTAL
503 select NR_CPUS_DEFAULT_2
506 select SYS_HAS_CPU_SB1
507 select SYS_SUPPORTS_BIG_ENDIAN
508 select SYS_SUPPORTS_HIGHMEM
509 select SYS_SUPPORTS_LITTLE_ENDIAN
511 config SIBYTE_SENTOSA
512 bool "Sibyte BCM91250E-Sentosa"
513 depends on EXPERIMENTAL
516 select NR_CPUS_DEFAULT_2
519 select SYS_HAS_CPU_SB1
520 select SYS_SUPPORTS_BIG_ENDIAN
521 select SYS_SUPPORTS_LITTLE_ENDIAN
524 bool "Sibyte BCM91480B-BigSur"
527 select NR_CPUS_DEFAULT_4
528 select SIBYTE_BCM1x80
530 select SYS_HAS_CPU_SB1
531 select SYS_SUPPORTS_BIG_ENDIAN
532 select SYS_SUPPORTS_HIGHMEM
533 select SYS_SUPPORTS_LITTLE_ENDIAN
534 select ZONE_DMA32 if 64BIT
537 bool "SNI RM200/300/400"
538 select ARC if CPU_LITTLE_ENDIAN
539 select ARC32 if CPU_LITTLE_ENDIAN
540 select SNIPROM if CPU_BIG_ENDIAN
541 select ARCH_MAY_HAVE_PC_FDC
545 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
546 select DMA_NONCOHERENT
547 select GENERIC_ISA_DMA
554 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
555 select SYS_HAS_CPU_R4X00
556 select SYS_HAS_CPU_R5000
557 select SYS_HAS_CPU_R10000
558 select R5000_CPU_SCACHE
559 select SYS_HAS_EARLY_PRINTK
560 select SYS_SUPPORTS_32BIT_KERNEL
561 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
562 select SYS_SUPPORTS_BIG_ENDIAN
563 select SYS_SUPPORTS_HIGHMEM
564 select SYS_SUPPORTS_LITTLE_ENDIAN
566 The SNI RM200/300/400 are MIPS-based machines manufactured by
567 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
568 Technology and now in turn merged with Fujitsu. Say Y here to
569 support this machine type.
572 bool "Toshiba TX39 series based machines"
575 bool "Toshiba TX49 series based machines"
577 config MIKROTIK_RB532
578 bool "Mikrotik RB532 boards"
581 select DMA_NONCOHERENT
584 select SYS_HAS_CPU_MIPS32_R1
585 select SYS_SUPPORTS_32BIT_KERNEL
586 select SYS_SUPPORTS_LITTLE_ENDIAN
589 select ARCH_REQUIRE_GPIOLIB
591 Support the Mikrotik(tm) RouterBoard 532 series,
592 based on the IDT RC32434 SoC.
595 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.
617 config CAVIUM_OCTEON_SIMULATOR
618 bool "Cavium Networks Octeon Simulator"
620 select 64BIT_PHYS_ADDR
622 select SYS_SUPPORTS_64BIT_KERNEL
623 select SYS_SUPPORTS_BIG_ENDIAN
624 select SYS_SUPPORTS_HIGHMEM
625 select SYS_SUPPORTS_HOTPLUG_CPU
626 select SYS_HAS_CPU_CAVIUM_OCTEON
628 The Octeon simulator is software performance model of the Cavium
629 Octeon Processor. It supports simulating Octeon processors on x86
632 config CAVIUM_OCTEON_REFERENCE_BOARD
633 bool "Cavium Networks Octeon reference board"
635 select 64BIT_PHYS_ADDR
637 select SYS_SUPPORTS_64BIT_KERNEL
638 select SYS_SUPPORTS_BIG_ENDIAN
639 select SYS_SUPPORTS_HIGHMEM
640 select SYS_SUPPORTS_HOTPLUG_CPU
641 select SYS_HAS_EARLY_PRINTK
642 select SYS_HAS_CPU_CAVIUM_OCTEON
645 select ARCH_SUPPORTS_MSI
647 This option supports all of the Octeon reference boards from Cavium
648 Networks. It builds a kernel that dynamically determines the Octeon
649 CPU type and supports all known board reference implementations.
650 Some of the supported boards are:
657 Say Y here for most Octeon reference boards.
661 source "arch/mips/alchemy/Kconfig"
662 source "arch/mips/basler/excite/Kconfig"
663 source "arch/mips/bcm63xx/Kconfig"
664 source "arch/mips/jazz/Kconfig"
665 source "arch/mips/lasat/Kconfig"
666 source "arch/mips/pmc-sierra/Kconfig"
667 source "arch/mips/sgi-ip27/Kconfig"
668 source "arch/mips/sibyte/Kconfig"
669 source "arch/mips/txx9/Kconfig"
670 source "arch/mips/vr41xx/Kconfig"
671 source "arch/mips/cavium-octeon/Kconfig"
672 source "arch/mips/loongson/Kconfig"
676 config RWSEM_GENERIC_SPINLOCK
680 config RWSEM_XCHGADD_ALGORITHM
683 config ARCH_HAS_ILOG2_U32
687 config ARCH_HAS_ILOG2_U64
691 config ARCH_SUPPORTS_OPROFILE
693 default y if !MIPS_MT_SMTC
695 config GENERIC_FIND_NEXT_BIT
699 config GENERIC_HWEIGHT
703 config GENERIC_CALIBRATE_DELAY
707 config GENERIC_CLOCKEVENTS
715 config GENERIC_CMOS_UPDATE
719 config SCHED_OMIT_FRAME_POINTER
723 config GENERIC_HARDIRQS_NO__DO_IRQ
727 # Select some configuration options automatically based on user selections.
732 config ARCH_MAY_HAVE_PC_FDC
778 select ARCH_REQUIRE_GPIOLIB
787 config DMA_NONCOHERENT
789 select DMA_NEED_PCI_MAP_STATE
791 config DMA_NEED_PCI_MAP_STATE
795 bool "Early printk" if EMBEDDED && DEBUG_KERNEL
796 depends on SYS_HAS_EARLY_PRINTK
799 This option enables special console drivers which allow the kernel
800 to print messages very early in the bootup process.
802 This is useful for kernel debugging when your machine crashes very
803 early before the console code is initialized. For normal operation,
804 it is not recommended because it looks ugly on some machines and
805 doesn't cooperate with an X server. You should normally say N here,
806 unless you want to debug such a crash.
808 config SYS_HAS_EARLY_PRINTK
812 bool "Support for hot-pluggable CPUs"
813 depends on SMP && HOTPLUG && SYS_SUPPORTS_HOTPLUG_CPU
815 Say Y here to allow turning CPUs off and on. CPUs can be
816 controlled through /sys/devices/system/cpu.
817 (Note: power management support will enable this option
818 automatically on SMP systems. )
819 Say N if you want to disable CPU hotplug.
821 config SYS_SUPPORTS_HOTPLUG_CPU
836 config MIPS_DISABLE_OBSOLETE_IDE
845 config GENERIC_ISA_DMA
847 select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
849 config GENERIC_ISA_DMA_SUPPORT_BROKEN
851 select GENERIC_ISA_DMA
857 # Endianess selection. Sufficiently obscure so many users don't know what to
858 # answer,so we try hard to limit the available choices. Also the use of a
859 # choice statement should be more obvious to the user.
862 prompt "Endianess selection"
864 Some MIPS machines can be configured for either little or big endian
865 byte order. These modes require different kernels and a different
866 Linux distribution. In general there is one preferred byteorder for a
867 particular system but some systems are just as commonly used in the
868 one or the other endianness.
870 config CPU_BIG_ENDIAN
872 depends on SYS_SUPPORTS_BIG_ENDIAN
874 config CPU_LITTLE_ENDIAN
876 depends on SYS_SUPPORTS_LITTLE_ENDIAN
881 config SYS_SUPPORTS_APM_EMULATION
884 config SYS_SUPPORTS_BIG_ENDIAN
887 config SYS_SUPPORTS_LITTLE_ENDIAN
890 config SYS_SUPPORTS_HUGETLBFS
892 depends on CPU_SUPPORTS_HUGEPAGES && 64BIT
919 config IRQ_CPU_OCTEON
922 config MIPS_BOARDS_GEN
925 config PCI_GT64XXX_PCI0
928 config NO_EXCEPT_FILL
939 select DMA_NONCOHERENT
942 select SYS_HAS_CPU_R5500
943 select SYS_SUPPORTS_32BIT_KERNEL
944 select SYS_SUPPORTS_64BIT_KERNEL
945 select SYS_SUPPORTS_BIG_ENDIAN
952 select DMA_NONCOHERENT
953 select SYS_HAS_CPU_MIPS32_R2
954 select SYS_SUPPORTS_32BIT_KERNEL
955 select SYS_SUPPORTS_LITTLE_ENDIAN
956 select SYS_SUPPORTS_BIG_ENDIAN
958 select CPU_MIPSR2_IRQ_VI
970 select DMA_NONCOHERENT
972 select SYS_HAS_CPU_MIPS32_R1
973 select SYS_HAS_EARLY_PRINTK
974 select SYS_SUPPORTS_32BIT_KERNEL
983 config SGI_HAS_INDYDOG
1001 config DEFAULT_SGI_PARTITION
1013 config MIPS_L1_CACHE_SHIFT
1015 default "4" if MACH_DECSTATION || MIKROTIK_RB532 || PMC_MSP4200_EVAL
1016 default "7" if SGI_IP22 || SGI_IP27 || SGI_IP28 || SNI_RM || CPU_CAVIUM_OCTEON
1019 config HAVE_STD_PC_SERIAL_PORT
1023 bool "ARC console support"
1024 depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN)
1028 depends on MACH_JAZZ || SNI_RM || SGI_IP32
1033 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP28 || SGI_IP32
1042 menu "CPU selection"
1048 config CPU_LOONGSON2E
1050 depends on SYS_HAS_CPU_LOONGSON2E
1051 select CPU_LOONGSON2
1053 The Loongson 2E processor implements the MIPS III instruction set
1054 with many extensions.
1056 config CPU_MIPS32_R1
1057 bool "MIPS32 Release 1"
1058 depends on SYS_HAS_CPU_MIPS32_R1
1059 select CPU_HAS_PREFETCH
1060 select CPU_SUPPORTS_32BIT_KERNEL
1061 select CPU_SUPPORTS_HIGHMEM
1063 Choose this option to build a kernel for release 1 or later of the
1064 MIPS32 architecture. Most modern embedded systems with a 32-bit
1065 MIPS processor are based on a MIPS32 processor. If you know the
1066 specific type of processor in your system, choose those that one
1067 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1068 Release 2 of the MIPS32 architecture is available since several
1069 years so chances are you even have a MIPS32 Release 2 processor
1070 in which case you should choose CPU_MIPS32_R2 instead for better
1073 config CPU_MIPS32_R2
1074 bool "MIPS32 Release 2"
1075 depends on SYS_HAS_CPU_MIPS32_R2
1076 select CPU_HAS_PREFETCH
1077 select CPU_SUPPORTS_32BIT_KERNEL
1078 select CPU_SUPPORTS_HIGHMEM
1080 Choose this option to build a kernel for release 2 or later of the
1081 MIPS32 architecture. Most modern embedded systems with a 32-bit
1082 MIPS processor are based on a MIPS32 processor. If you know the
1083 specific type of processor in your system, choose those that one
1084 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1086 config CPU_MIPS64_R1
1087 bool "MIPS64 Release 1"
1088 depends on SYS_HAS_CPU_MIPS64_R1
1089 select CPU_HAS_PREFETCH
1090 select CPU_SUPPORTS_32BIT_KERNEL
1091 select CPU_SUPPORTS_64BIT_KERNEL
1092 select CPU_SUPPORTS_HIGHMEM
1093 select CPU_SUPPORTS_HUGEPAGES
1095 Choose this option to build a kernel for release 1 or later of the
1096 MIPS64 architecture. Many modern embedded systems with a 64-bit
1097 MIPS processor are based on a MIPS64 processor. If you know the
1098 specific type of processor in your system, choose those that one
1099 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1100 Release 2 of the MIPS64 architecture is available since several
1101 years so chances are you even have a MIPS64 Release 2 processor
1102 in which case you should choose CPU_MIPS64_R2 instead for better
1105 config CPU_MIPS64_R2
1106 bool "MIPS64 Release 2"
1107 depends on SYS_HAS_CPU_MIPS64_R2
1108 select CPU_HAS_PREFETCH
1109 select CPU_SUPPORTS_32BIT_KERNEL
1110 select CPU_SUPPORTS_64BIT_KERNEL
1111 select CPU_SUPPORTS_HIGHMEM
1112 select CPU_SUPPORTS_HUGEPAGES
1114 Choose this option to build a kernel for release 2 or later of the
1115 MIPS64 architecture. Many modern embedded systems with a 64-bit
1116 MIPS processor are based on a MIPS64 processor. If you know the
1117 specific type of processor in your system, choose those that one
1118 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1122 depends on SYS_HAS_CPU_R3000
1124 select CPU_SUPPORTS_32BIT_KERNEL
1125 select CPU_SUPPORTS_HIGHMEM
1127 Please make sure to pick the right CPU type. Linux/MIPS is not
1128 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1129 *not* work on R4000 machines and vice versa. However, since most
1130 of the supported machines have an R4000 (or similar) CPU, R4x00
1131 might be a safe bet. If the resulting kernel does not work,
1132 try to recompile with R3000.
1136 depends on SYS_HAS_CPU_TX39XX
1137 select CPU_SUPPORTS_32BIT_KERNEL
1141 depends on SYS_HAS_CPU_VR41XX
1142 select CPU_SUPPORTS_32BIT_KERNEL
1143 select CPU_SUPPORTS_64BIT_KERNEL
1145 The options selects support for the NEC VR4100 series of processors.
1146 Only choose this option if you have one of these processors as a
1147 kernel built with this option will not run on any other type of
1148 processor or vice versa.
1152 depends on SYS_HAS_CPU_R4300
1153 select CPU_SUPPORTS_32BIT_KERNEL
1154 select CPU_SUPPORTS_64BIT_KERNEL
1156 MIPS Technologies R4300-series processors.
1160 depends on SYS_HAS_CPU_R4X00
1161 select CPU_SUPPORTS_32BIT_KERNEL
1162 select CPU_SUPPORTS_64BIT_KERNEL
1164 MIPS Technologies R4000-series processors other than 4300, including
1165 the R4000, R4400, R4600, and 4700.
1169 depends on SYS_HAS_CPU_TX49XX
1170 select CPU_HAS_PREFETCH
1171 select CPU_SUPPORTS_32BIT_KERNEL
1172 select CPU_SUPPORTS_64BIT_KERNEL
1176 depends on SYS_HAS_CPU_R5000
1177 select CPU_SUPPORTS_32BIT_KERNEL
1178 select CPU_SUPPORTS_64BIT_KERNEL
1180 MIPS Technologies R5000-series processors other than the Nevada.
1184 depends on SYS_HAS_CPU_R5432
1185 select CPU_SUPPORTS_32BIT_KERNEL
1186 select CPU_SUPPORTS_64BIT_KERNEL
1190 depends on SYS_HAS_CPU_R5500
1191 select CPU_SUPPORTS_32BIT_KERNEL
1192 select CPU_SUPPORTS_64BIT_KERNEL
1193 select CPU_SUPPORTS_HUGEPAGES
1195 NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV
1200 depends on EXPERIMENTAL
1201 depends on SYS_HAS_CPU_R6000
1202 select CPU_SUPPORTS_32BIT_KERNEL
1204 MIPS Technologies R6000 and R6000A series processors. Note these
1205 processors are extremely rare and the support for them is incomplete.
1209 depends on SYS_HAS_CPU_NEVADA
1210 select CPU_SUPPORTS_32BIT_KERNEL
1211 select CPU_SUPPORTS_64BIT_KERNEL
1213 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1217 depends on EXPERIMENTAL
1218 depends on SYS_HAS_CPU_R8000
1219 select CPU_HAS_PREFETCH
1220 select CPU_SUPPORTS_64BIT_KERNEL
1222 MIPS Technologies R8000 processors. Note these processors are
1223 uncommon and the support for them is incomplete.
1227 depends on SYS_HAS_CPU_R10000
1228 select CPU_HAS_PREFETCH
1229 select CPU_SUPPORTS_32BIT_KERNEL
1230 select CPU_SUPPORTS_64BIT_KERNEL
1231 select CPU_SUPPORTS_HIGHMEM
1233 MIPS Technologies R10000-series processors.
1237 depends on SYS_HAS_CPU_RM7000
1238 select CPU_HAS_PREFETCH
1239 select CPU_SUPPORTS_32BIT_KERNEL
1240 select CPU_SUPPORTS_64BIT_KERNEL
1241 select CPU_SUPPORTS_HIGHMEM
1245 depends on SYS_HAS_CPU_RM9000
1246 select CPU_HAS_PREFETCH
1247 select CPU_SUPPORTS_32BIT_KERNEL
1248 select CPU_SUPPORTS_64BIT_KERNEL
1249 select CPU_SUPPORTS_HIGHMEM
1250 select WEAK_ORDERING
1254 depends on SYS_HAS_CPU_SB1
1255 select CPU_SUPPORTS_32BIT_KERNEL
1256 select CPU_SUPPORTS_64BIT_KERNEL
1257 select CPU_SUPPORTS_HIGHMEM
1258 select WEAK_ORDERING
1260 config CPU_CAVIUM_OCTEON
1261 bool "Cavium Octeon processor"
1262 depends on SYS_HAS_CPU_CAVIUM_OCTEON
1264 select IRQ_CPU_OCTEON
1265 select CPU_HAS_PREFETCH
1266 select CPU_SUPPORTS_64BIT_KERNEL
1267 select SYS_SUPPORTS_SMP
1268 select NR_CPUS_DEFAULT_16
1269 select WEAK_ORDERING
1270 select WEAK_REORDERING_BEYOND_LLSC
1271 select CPU_SUPPORTS_HIGHMEM
1272 select CPU_SUPPORTS_HUGEPAGES
1274 The Cavium Octeon processor is a highly integrated chip containing
1275 many ethernet hardware widgets for networking tasks. The processor
1276 can have up to 16 Mips64v2 cores and 8 integrated gigabit ethernets.
1277 Full details can be found at http://www.caviumnetworks.com.
1281 config CPU_LOONGSON2
1283 select CPU_SUPPORTS_32BIT_KERNEL
1284 select CPU_SUPPORTS_64BIT_KERNEL
1285 select CPU_SUPPORTS_HIGHMEM
1287 config SYS_HAS_CPU_LOONGSON2E
1290 config SYS_HAS_CPU_MIPS32_R1
1293 config SYS_HAS_CPU_MIPS32_R2
1296 config SYS_HAS_CPU_MIPS64_R1
1299 config SYS_HAS_CPU_MIPS64_R2
1302 config SYS_HAS_CPU_R3000
1305 config SYS_HAS_CPU_TX39XX
1308 config SYS_HAS_CPU_VR41XX
1311 config SYS_HAS_CPU_R4300
1314 config SYS_HAS_CPU_R4X00
1317 config SYS_HAS_CPU_TX49XX
1320 config SYS_HAS_CPU_R5000
1323 config SYS_HAS_CPU_R5432
1326 config SYS_HAS_CPU_R5500
1329 config SYS_HAS_CPU_R6000
1332 config SYS_HAS_CPU_NEVADA
1335 config SYS_HAS_CPU_R8000
1338 config SYS_HAS_CPU_R10000
1341 config SYS_HAS_CPU_RM7000
1344 config SYS_HAS_CPU_RM9000
1347 config SYS_HAS_CPU_SB1
1350 config SYS_HAS_CPU_CAVIUM_OCTEON
1354 # CPU may reorder R->R, R->W, W->R, W->W
1355 # Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
1357 config WEAK_ORDERING
1361 # CPU may reorder reads and writes beyond LL/SC
1362 # CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
1364 config WEAK_REORDERING_BEYOND_LLSC
1369 # These two indicate any level of the MIPS32 and MIPS64 architecture
1373 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1377 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1380 # These two indicate the revision of the architecture, either Release 1 or Release 2
1384 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1388 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 || CPU_CAVIUM_OCTEON
1390 config SYS_SUPPORTS_32BIT_KERNEL
1392 config SYS_SUPPORTS_64BIT_KERNEL
1394 config CPU_SUPPORTS_32BIT_KERNEL
1396 config CPU_SUPPORTS_64BIT_KERNEL
1398 config CPU_SUPPORTS_HUGEPAGES
1402 # Set to y for ptrace access to watch registers.
1404 config HARDWARE_WATCHPOINTS
1406 default y if CPU_MIPSR1 || CPU_MIPSR2
1412 prompt "Kernel code model"
1414 You should only select this option if you have a workload that
1415 actually benefits from 64-bit processing or if your machine has
1416 large memory. You will only be presented a single option in this
1417 menu if your system does not support both 32-bit and 64-bit kernels.
1420 bool "32-bit kernel"
1421 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1424 Select this option if you want to build a 32-bit kernel.
1426 bool "64-bit kernel"
1427 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1428 select HAVE_SYSCALL_WRAPPERS
1430 Select this option if you want to build a 64-bit kernel.
1435 prompt "Kernel page size"
1436 default PAGE_SIZE_4KB
1438 config PAGE_SIZE_4KB
1441 This option select the standard 4kB Linux page size. On some
1442 R3000-family processors this is the only available page size. Using
1443 4kB page size will minimize memory consumption and is therefore
1444 recommended for low memory systems.
1446 config PAGE_SIZE_8KB
1448 depends on (EXPERIMENTAL && CPU_R8000) || CPU_CAVIUM_OCTEON
1450 Using 8kB page size will result in higher performance kernel at
1451 the price of higher memory consumption. This option is available
1452 only on R8000 and cnMIPS processors. Note that you will need a
1453 suitable Linux distribution to support this.
1455 config PAGE_SIZE_16KB
1457 depends on !CPU_R3000 && !CPU_TX39XX
1459 Using 16kB page size will result in higher performance kernel at
1460 the price of higher memory consumption. This option is available on
1461 all non-R3000 family processors. Note that you will need a suitable
1462 Linux distribution to support this.
1464 config PAGE_SIZE_32KB
1466 depends on CPU_CAVIUM_OCTEON
1468 Using 32kB page size will result in higher performance kernel at
1469 the price of higher memory consumption. This option is available
1470 only on cnMIPS cores. Note that you will need a suitable Linux
1471 distribution to support this.
1473 config PAGE_SIZE_64KB
1475 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1477 Using 64kB page size will result in higher performance kernel at
1478 the price of higher memory consumption. This option is available on
1479 all non-R3000 family processor. Not that at the time of this
1480 writing this option is still high experimental.
1487 config IP22_CPU_SCACHE
1492 # Support for a MIPS32 / MIPS64 style S-caches
1494 config MIPS_CPU_SCACHE
1498 config R5000_CPU_SCACHE
1502 config RM7000_CPU_SCACHE
1506 config SIBYTE_DMA_PAGEOPS
1507 bool "Use DMA to clear/copy pages"
1510 Instead of using the CPU to zero and copy pages, use a Data Mover
1511 channel. These DMA channels are otherwise unused by the standard
1512 SiByte Linux port. Seems to give a small performance benefit.
1514 config CPU_HAS_PREFETCH
1518 prompt "MIPS MT options"
1520 config MIPS_MT_DISABLED
1521 bool "Disable multithreading support."
1523 Use this option if your workload can't take advantage of
1524 MIPS hardware multithreading support. On systems that don't have
1525 the option of an MT-enabled processor this option will be the only
1526 option in this menu.
1529 bool "Use 1 TC on each available VPE for SMP"
1530 depends on SYS_SUPPORTS_MULTITHREADING
1531 select CPU_MIPSR2_IRQ_VI
1532 select CPU_MIPSR2_IRQ_EI
1534 select NR_CPUS_DEFAULT_2
1536 select SYS_SUPPORTS_SCHED_SMT if SMP
1537 select SYS_SUPPORTS_SMP
1540 This is a kernel model which is also known a VSMP or lately
1541 has been marketesed into SMVP.
1544 bool "SMTC: Use all TCs on all VPEs for SMP"
1545 depends on CPU_MIPS32_R2
1546 #depends on CPU_MIPS64_R2 # once there is hardware ...
1547 depends on SYS_SUPPORTS_MULTITHREADING
1548 select CPU_MIPSR2_IRQ_VI
1549 select CPU_MIPSR2_IRQ_EI
1551 select NR_CPUS_DEFAULT_8
1553 select SYS_SUPPORTS_SMP
1556 This is a kernel model which is known a SMTC or lately has been
1557 marketesed into SMVP.
1565 bool "SMT (multithreading) scheduler support"
1566 depends on SYS_SUPPORTS_SCHED_SMT
1569 SMT scheduler support improves the CPU scheduler's decision making
1570 when dealing with MIPS MT enabled cores at a cost of slightly
1571 increased overhead in some places. If unsure say N here.
1573 config SYS_SUPPORTS_SCHED_SMT
1577 config SYS_SUPPORTS_MULTITHREADING
1580 config MIPS_MT_FPAFF
1581 bool "Dynamic FPU affinity for FP-intensive threads"
1583 depends on MIPS_MT_SMP || MIPS_MT_SMTC
1585 config MIPS_VPE_LOADER
1586 bool "VPE loader support."
1587 depends on SYS_SUPPORTS_MULTITHREADING
1588 select CPU_MIPSR2_IRQ_VI
1589 select CPU_MIPSR2_IRQ_EI
1592 Includes a loader for loading an elf relocatable object
1593 onto another VPE and running it.
1595 config MIPS_MT_SMTC_IM_BACKSTOP
1596 bool "Use per-TC register bits as backstop for inhibited IM bits"
1597 depends on MIPS_MT_SMTC
1600 To support multiple TC microthreads acting as "CPUs" within
1601 a VPE, VPE-wide interrupt mask bits must be specially manipulated
1602 during interrupt handling. To support legacy drivers and interrupt
1603 controller management code, SMTC has a "backstop" to track and
1604 if necessary restore the interrupt mask. This has some performance
1605 impact on interrupt service overhead.
1607 config MIPS_MT_SMTC_IRQAFF
1608 bool "Support IRQ affinity API"
1609 depends on MIPS_MT_SMTC
1612 Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.)
1613 for SMTC Linux kernel. Requires platform support, of which
1614 an example can be found in the MIPS kernel i8259 and Malta
1615 platform code. Adds some overhead to interrupt dispatch, and
1616 should be used only if you know what you are doing.
1618 config MIPS_VPE_LOADER_TOM
1619 bool "Load VPE program into memory hidden from linux"
1620 depends on MIPS_VPE_LOADER
1623 The loader can use memory that is present but has been hidden from
1624 Linux using the kernel command line option "mem=xxMB". It's up to
1625 you to ensure the amount you put in the option and the space your
1626 program requires is less or equal to the amount physically present.
1628 # this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1629 config MIPS_VPE_APSP_API
1630 bool "Enable support for AP/SP API (RTLX)"
1631 depends on MIPS_VPE_LOADER
1634 config MIPS_APSP_KSPD
1636 depends on MIPS_VPE_APSP_API
1639 KSPD is a kernel daemon that accepts syscall requests from the SP
1640 side, actions them and returns the results. It also handles the
1641 "exit" syscall notifying other kernel modules the SP program is
1642 exiting. You probably want to say yes here.
1645 bool "MIPS CMP framework support"
1646 depends on SYS_SUPPORTS_MIPS_CMP
1648 select SYS_SUPPORTS_SMP
1649 select SYS_SUPPORTS_SCHED_SMT if SMP
1650 select WEAK_ORDERING
1653 This is a placeholder option for the GCMP work. It will need to
1654 be handled differently...
1656 config SB1_PASS_1_WORKAROUNDS
1658 depends on CPU_SB1_PASS_1
1661 config SB1_PASS_2_WORKAROUNDS
1663 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1666 config SB1_PASS_2_1_WORKAROUNDS
1668 depends on CPU_SB1 && CPU_SB1_PASS_2
1671 config 64BIT_PHYS_ADDR
1674 config CPU_HAS_SMARTMIPS
1675 depends on SYS_SUPPORTS_SMARTMIPS
1676 bool "Support for the SmartMIPS ASE"
1678 SmartMIPS is a extension of the MIPS32 architecture aimed at
1679 increased security at both hardware and software level for
1680 smartcards. Enabling this option will allow proper use of the
1681 SmartMIPS instructions by Linux applications. However a kernel with
1682 this option will not work on a MIPS core without SmartMIPS core. If
1683 you don't know you probably don't have SmartMIPS and should say N
1690 # Vectored interrupt mode is an R2 feature
1692 config CPU_MIPSR2_IRQ_VI
1696 # Extended interrupt mode is an R2 feature
1698 config CPU_MIPSR2_IRQ_EI
1703 depends on !CPU_R3000
1706 config GENERIC_CLOCKEVENTS_BROADCAST
1712 config CPU_DADDI_WORKAROUNDS
1715 config CPU_R4000_WORKAROUNDS
1717 select CPU_R4400_WORKAROUNDS
1719 config CPU_R4400_WORKAROUNDS
1723 # Use the generic interrupt handling code in kernel/irq/:
1725 config GENERIC_HARDIRQS
1729 config GENERIC_IRQ_PROBE
1737 # - Highmem only makes sense for the 32-bit kernel.
1738 # - The current highmem code will only work properly on physically indexed
1739 # caches such as R3000, SB1, R7000 or those that look like they're virtually
1740 # indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1741 # moment we protect the user and offer the highmem option only on machines
1742 # where it's known to be safe. This will not offer highmem on a few systems
1743 # such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1744 # indexed CPUs but we're playing safe.
1745 # - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1746 # know they might have memory configurations that could make use of highmem
1750 bool "High Memory Support"
1751 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1753 config CPU_SUPPORTS_HIGHMEM
1756 config SYS_SUPPORTS_HIGHMEM
1759 config SYS_SUPPORTS_SMARTMIPS
1762 config ARCH_FLATMEM_ENABLE
1766 config ARCH_DISCONTIGMEM_ENABLE
1768 default y if SGI_IP27
1770 Say Y to support efficient handling of discontiguous physical memory,
1771 for architectures which are either NUMA (Non-Uniform Memory Access)
1772 or have huge holes in the physical address space for other reasons.
1773 See <file:Documentation/vm/numa> for more.
1775 config ARCH_POPULATES_NODE_MAP
1778 config ARCH_SPARSEMEM_ENABLE
1780 select SPARSEMEM_STATIC
1784 depends on SYS_SUPPORTS_NUMA
1786 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1787 Access). This option improves performance on systems with more
1788 than two nodes; on two node systems it is generally better to
1789 leave it disabled; on single node systems disable this option
1792 config SYS_SUPPORTS_NUMA
1798 depends on NEED_MULTIPLE_NODES
1803 bool "Multi-Processing support"
1804 depends on SYS_SUPPORTS_SMP
1806 select USE_GENERIC_SMP_HELPERS
1808 This enables support for systems with more than one CPU. If you have
1809 a system with only one CPU, like most personal computers, say N. If
1810 you have a system with more than one CPU, say Y.
1812 If you say N here, the kernel will run on single and multiprocessor
1813 machines, but will use only one CPU of a multiprocessor machine. If
1814 you say Y here, the kernel will run on many, but not all,
1815 singleprocessor machines. On a singleprocessor machine, the kernel
1816 will run faster if you say N here.
1818 People using multiprocessor machines who say Y here should also say
1819 Y to "Enhanced Real Time Clock Support", below.
1821 See also the SMP-HOWTO available at
1822 <http://www.tldp.org/docs.html#howto>.
1824 If you don't know what to do here, say N.
1829 config SYS_SUPPORTS_MIPS_CMP
1832 config SYS_SUPPORTS_SMP
1835 config NR_CPUS_DEFAULT_1
1838 config NR_CPUS_DEFAULT_2
1841 config NR_CPUS_DEFAULT_4
1844 config NR_CPUS_DEFAULT_8
1847 config NR_CPUS_DEFAULT_16
1850 config NR_CPUS_DEFAULT_32
1853 config NR_CPUS_DEFAULT_64
1857 int "Maximum number of CPUs (2-64)"
1858 range 1 64 if NR_CPUS_DEFAULT_1
1860 default "1" if NR_CPUS_DEFAULT_1
1861 default "2" if NR_CPUS_DEFAULT_2
1862 default "4" if NR_CPUS_DEFAULT_4
1863 default "8" if NR_CPUS_DEFAULT_8
1864 default "16" if NR_CPUS_DEFAULT_16
1865 default "32" if NR_CPUS_DEFAULT_32
1866 default "64" if NR_CPUS_DEFAULT_64
1868 This allows you to specify the maximum number of CPUs which this
1869 kernel will support. The maximum supported value is 32 for 32-bit
1870 kernel and 64 for 64-bit kernels; the minimum value which makes
1871 sense is 1 for Qemu (useful only for kernel debugging purposes)
1872 and 2 for all others.
1874 This is purely to save memory - each supported CPU adds
1875 approximately eight kilobytes to the kernel image. For best
1876 performance should round up your number of processors to the next
1879 source "kernel/time/Kconfig"
1882 # Timer Interrupt Frequency Configuration
1886 prompt "Timer frequency"
1889 Allows the configuration of the timer frequency.
1892 bool "48 HZ" if SYS_SUPPORTS_48HZ || SYS_SUPPORTS_ARBIT_HZ
1895 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1898 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1901 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1904 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1907 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1910 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1914 config SYS_SUPPORTS_48HZ
1917 config SYS_SUPPORTS_100HZ
1920 config SYS_SUPPORTS_128HZ
1923 config SYS_SUPPORTS_250HZ
1926 config SYS_SUPPORTS_256HZ
1929 config SYS_SUPPORTS_1000HZ
1932 config SYS_SUPPORTS_1024HZ
1935 config SYS_SUPPORTS_ARBIT_HZ
1937 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1938 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1939 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1940 !SYS_SUPPORTS_1024HZ
1945 default 100 if HZ_100
1946 default 128 if HZ_128
1947 default 250 if HZ_250
1948 default 256 if HZ_256
1949 default 1000 if HZ_1000
1950 default 1024 if HZ_1024
1952 source "kernel/Kconfig.preempt"
1954 config MIPS_INSANE_LARGE
1955 bool "Support for large 64-bit configurations"
1956 depends on CPU_R10000 && 64BIT
1958 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1959 previous 64-bit processors which only supported 40 bit / 1TB. If you
1960 need processes of more than 1TB virtual address space, say Y here.
1961 This will result in additional memory usage, so it is not
1962 recommended for normal users.
1965 bool "Kexec system call (EXPERIMENTAL)"
1966 depends on EXPERIMENTAL
1968 kexec is a system call that implements the ability to shutdown your
1969 current kernel, and to start another kernel. It is like a reboot
1970 but it is independent of the system firmware. And like a reboot
1971 you can start any kernel with it, not just Linux.
1973 The name comes from the similarity to the exec system call.
1975 It is an ongoing process to be certain the hardware in a machine
1976 is properly shutdown, so do not be surprised if this code does not
1977 initially work for you. It may help to enable device hotplugging
1978 support. As of this writing the exact hardware interface is
1979 strongly in flux, so no good recommendation can be made.
1982 bool "Enable seccomp to safely compute untrusted bytecode"
1986 This kernel feature is useful for number crunching applications
1987 that may need to compute untrusted bytecode during their
1988 execution. By using pipes or other transports made available to
1989 the process as file descriptors supporting the read/write
1990 syscalls, it's possible to isolate those applications in
1991 their own address space using seccomp. Once seccomp is
1992 enabled via /proc/<pid>/seccomp, it cannot be disabled
1993 and the task is only allowed to execute a few safe syscalls
1994 defined by each seccomp mode.
1996 If unsure, say Y. Only embedded should say N here.
2000 config LOCKDEP_SUPPORT
2004 config STACKTRACE_SUPPORT
2008 source "init/Kconfig"
2010 config PROBE_INITRD_HEADER
2011 bool "Probe initrd header created by addinitrd"
2012 depends on BLK_DEV_INITRD
2014 Probe initrd header at the last page of kernel image.
2015 Say Y here if you are using arch/mips/boot/addinitrd.c to
2016 add initrd or initramfs image to the kernel image.
2019 source "kernel/Kconfig.freezer"
2021 menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
2029 bool "Support for PCI controller"
2030 depends on HW_HAS_PCI
2033 Find out whether you have a PCI motherboard. PCI is the name of a
2034 bus system, i.e. the way the CPU talks to the other stuff inside
2035 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
2041 source "drivers/pci/Kconfig"
2044 # ISA support is now enabled via select. Too many systems still have the one
2045 # or other ISA chip on the board that users don't know about so don't expect
2046 # users to choose the right thing ...
2053 depends on HW_HAS_EISA
2055 select GENERIC_ISA_DMA
2057 The Extended Industry Standard Architecture (EISA) bus was
2058 developed as an open alternative to the IBM MicroChannel bus.
2060 The EISA bus provided some of the features of the IBM MicroChannel
2061 bus while maintaining backward compatibility with cards made for
2062 the older ISA bus. The EISA bus saw limited use between 1988 and
2063 1995 when it was made obsolete by the PCI bus.
2065 Say Y here if you are building a kernel for an EISA-based machine.
2069 source "drivers/eisa/Kconfig"
2072 bool "TURBOchannel support"
2073 depends on MACH_DECSTATION
2075 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
2076 processors. Documentation on writing device drivers for TurboChannel
2078 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
2081 # bool "Access.Bus support"
2094 source "drivers/pcmcia/Kconfig"
2096 source "drivers/pci/hotplug/Kconfig"
2100 menu "Executable file formats"
2102 source "fs/Kconfig.binfmt"
2107 config MIPS32_COMPAT
2108 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
2111 Select this option if you want Linux/MIPS 32-bit binary
2112 compatibility. Since all software available for Linux/MIPS is
2113 currently 32-bit you should say Y here.
2117 depends on MIPS32_COMPAT
2120 config SYSVIPC_COMPAT
2122 depends on COMPAT && SYSVIPC
2126 bool "Kernel support for o32 binaries"
2127 depends on MIPS32_COMPAT
2129 Select this option if you want to run o32 binaries. These are pure
2130 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
2131 existing binaries are in this format.
2136 bool "Kernel support for n32 binaries"
2137 depends on MIPS32_COMPAT
2139 Select this option if you want to run n32 binaries. These are
2140 64-bit binaries using 32-bit quantities for addressing and certain
2141 data that would normally be 64-bit. They are used in special
2148 default y if MIPS32_O32 || MIPS32_N32
2152 menu "Power management options"
2154 config ARCH_HIBERNATION_POSSIBLE
2156 depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
2158 config ARCH_SUSPEND_POSSIBLE
2160 depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
2162 source "kernel/power/Kconfig"
2166 source "net/Kconfig"
2168 source "drivers/Kconfig"
2172 source "arch/mips/Kconfig.debug"
2174 source "security/Kconfig"
2176 source "crypto/Kconfig"
2178 source "lib/Kconfig"