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
76 select SYS_HAS_CPU_NEVADA
77 select SYS_HAS_EARLY_PRINTK
78 select SYS_SUPPORTS_32BIT_KERNEL
79 select SYS_SUPPORTS_64BIT_KERNEL
80 select SYS_SUPPORTS_LITTLE_ENDIAN
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
136 This a family of machines based on the MIPS R4030 chipset which was
137 used by several vendors to build RISC/os and Windows NT workstations.
138 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millennium and
139 Olivetti M700-10 workstations.
142 bool "LASAT Networks platforms"
145 select DMA_NONCOHERENT
146 select SYS_HAS_EARLY_PRINTK
149 select PCI_GT64XXX_PCI0
151 select R5000_CPU_SCACHE
152 select SYS_HAS_CPU_R5000
153 select SYS_SUPPORTS_32BIT_KERNEL
154 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
155 select SYS_SUPPORTS_LITTLE_ENDIAN
158 bool "Lemote Fulong mini-PC"
159 select ARCH_SPARSEMEM_ENABLE
162 select SYS_HAS_CPU_LOONGSON2
163 select DMA_NONCOHERENT
166 select HAVE_STD_PC_SERIAL_PORT
171 select SYS_SUPPORTS_32BIT_KERNEL
172 select SYS_SUPPORTS_64BIT_KERNEL
173 select SYS_SUPPORTS_LITTLE_ENDIAN
174 select SYS_SUPPORTS_HIGHMEM
175 select SYS_HAS_EARLY_PRINTK
176 select GENERIC_ISA_DMA_SUPPORT_BROKEN
179 Lemote Fulong mini-PC board based on the Chinese Loongson-2E CPU and
183 bool "MIPS Malta board"
184 select ARCH_MAY_HAVE_PC_FDC
189 select DMA_NONCOHERENT
190 select GENERIC_ISA_DMA
196 select MIPS_BOARDS_GEN
198 select MIPS_CPU_SCACHE
199 select PCI_GT64XXX_PCI0
202 select SYS_HAS_CPU_MIPS32_R1
203 select SYS_HAS_CPU_MIPS32_R2
204 select SYS_HAS_CPU_MIPS64_R1
205 select SYS_HAS_CPU_NEVADA
206 select SYS_HAS_CPU_RM7000
207 select SYS_HAS_EARLY_PRINTK
208 select SYS_SUPPORTS_32BIT_KERNEL
209 select SYS_SUPPORTS_64BIT_KERNEL
210 select SYS_SUPPORTS_BIG_ENDIAN
211 select SYS_SUPPORTS_LITTLE_ENDIAN
212 select SYS_SUPPORTS_MIPS_CMP if BROKEN # because SYNC_R4K is broken
213 select SYS_SUPPORTS_MULTITHREADING
214 select SYS_SUPPORTS_SMARTMIPS
216 This enables support for the MIPS Technologies Malta evaluation
220 bool 'MIPS simulator (MIPSsim)'
223 select DMA_NONCOHERENT
224 select SYS_HAS_EARLY_PRINTK
227 select SYS_HAS_CPU_MIPS32_R1
228 select SYS_HAS_CPU_MIPS32_R2
229 select SYS_HAS_EARLY_PRINTK
230 select SYS_SUPPORTS_32BIT_KERNEL
231 select SYS_SUPPORTS_BIG_ENDIAN
232 select SYS_SUPPORTS_MULTITHREADING
233 select SYS_SUPPORTS_LITTLE_ENDIAN
235 This option enables support for MIPS Technologies MIPSsim software
239 bool "NEC EMMA2RH Mark-eins board"
243 This enables support for the NEC Electronics Mark-eins boards.
246 bool "NEC VR4100 series based machines"
249 select SYS_HAS_CPU_VR41XX
252 bool "NXP STB220 board"
255 Support for NXP Semiconductors STB220 Development Board.
262 Support for NXP Semiconductors STB225 Development Board.
265 bool "NXP PNX8550 based JBS board"
267 select SYS_SUPPORTS_LITTLE_ENDIAN
269 config PNX8550_STB810
270 bool "NXP PNX8550 based STB810 board"
272 select SYS_SUPPORTS_LITTLE_ENDIAN
275 bool "PMC-Sierra MSP chipsets"
276 depends on EXPERIMENTAL
277 select DMA_NONCOHERENT
279 select NO_EXCEPT_FILL
281 select SYS_HAS_CPU_MIPS32_R1
282 select SYS_HAS_CPU_MIPS32_R2
283 select SYS_SUPPORTS_32BIT_KERNEL
284 select SYS_SUPPORTS_BIG_ENDIAN
287 select SERIAL_8250_CONSOLE
289 This adds support for the PMC-Sierra family of Multi-Service
290 Processor System-On-A-Chips. These parts include a number
291 of integrated peripherals, interfaces and DSPs in addition to
292 a variety of MIPS cores.
295 bool "PMC-Sierra Yosemite eval board"
304 select SYS_HAS_CPU_RM9000
305 select SYS_HAS_EARLY_PRINTK
306 select SYS_SUPPORTS_32BIT_KERNEL
307 select SYS_SUPPORTS_64BIT_KERNEL
308 select SYS_SUPPORTS_BIG_ENDIAN
309 select SYS_SUPPORTS_HIGHMEM
310 select SYS_SUPPORTS_SMP
312 Yosemite is an evaluation board for the RM9000x2 processor
313 manufactured by PMC-Sierra.
316 bool "SGI IP22 (Indy/Indigo2)"
322 select DEFAULT_SGI_PARTITION
323 select DMA_NONCOHERENT
327 select IP22_CPU_SCACHE
329 select GENERIC_ISA_DMA_SUPPORT_BROKEN
331 select SGI_HAS_INDYDOG
337 select SYS_HAS_CPU_R4X00
338 select SYS_HAS_CPU_R5000
339 select SYS_HAS_EARLY_PRINTK
340 select SYS_SUPPORTS_32BIT_KERNEL
341 select SYS_SUPPORTS_64BIT_KERNEL
342 select SYS_SUPPORTS_BIG_ENDIAN
344 This are the SGI Indy, Challenge S and Indigo2, as well as certain
345 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
346 that runs on these, say Y here.
349 bool "SGI IP27 (Origin200/2000)"
353 select DEFAULT_SGI_PARTITION
355 select SYS_HAS_EARLY_PRINTK
357 select NR_CPUS_DEFAULT_64
358 select SYS_HAS_CPU_R10000
359 select SYS_SUPPORTS_64BIT_KERNEL
360 select SYS_SUPPORTS_BIG_ENDIAN
361 select SYS_SUPPORTS_NUMA
362 select SYS_SUPPORTS_SMP
364 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
365 workstations. To compile a Linux kernel that runs on these, say Y
369 bool "SGI IP28 (Indigo2 R10k) (EXPERIMENTAL)"
370 depends on EXPERIMENTAL
376 select DEFAULT_SGI_PARTITION
377 select DMA_NONCOHERENT
378 select GENERIC_ISA_DMA_SUPPORT_BROKEN
384 select SGI_HAS_INDYDOG
390 select SYS_HAS_CPU_R10000
391 select SYS_HAS_EARLY_PRINTK
392 select SYS_SUPPORTS_64BIT_KERNEL
393 select SYS_SUPPORTS_BIG_ENDIAN
395 This is the SGI Indigo2 with R10000 processor. To compile a Linux
396 kernel that runs on these, say Y here.
405 select DMA_NONCOHERENT
408 select R5000_CPU_SCACHE
409 select RM7000_CPU_SCACHE
410 select SYS_HAS_CPU_R5000
411 select SYS_HAS_CPU_R10000 if BROKEN
412 select SYS_HAS_CPU_RM7000
413 select SYS_HAS_CPU_NEVADA
414 select SYS_SUPPORTS_64BIT_KERNEL
415 select SYS_SUPPORTS_BIG_ENDIAN
417 If you want this kernel to run on SGI O2 workstation, say Y here.
420 bool "Sibyte BCM91120C-CRhine"
421 depends on EXPERIMENTAL
424 select SIBYTE_BCM1120
426 select SYS_HAS_CPU_SB1
427 select SYS_SUPPORTS_BIG_ENDIAN
428 select SYS_SUPPORTS_LITTLE_ENDIAN
431 bool "Sibyte BCM91120x-Carmel"
432 depends on EXPERIMENTAL
435 select SIBYTE_BCM1120
437 select SYS_HAS_CPU_SB1
438 select SYS_SUPPORTS_BIG_ENDIAN
439 select SYS_SUPPORTS_LITTLE_ENDIAN
442 bool "Sibyte BCM91125C-CRhone"
443 depends on EXPERIMENTAL
446 select SIBYTE_BCM1125
448 select SYS_HAS_CPU_SB1
449 select SYS_SUPPORTS_BIG_ENDIAN
450 select SYS_SUPPORTS_HIGHMEM
451 select SYS_SUPPORTS_LITTLE_ENDIAN
454 bool "Sibyte BCM91125E-Rhone"
455 depends on EXPERIMENTAL
458 select SIBYTE_BCM1125H
460 select SYS_HAS_CPU_SB1
461 select SYS_SUPPORTS_BIG_ENDIAN
462 select SYS_SUPPORTS_LITTLE_ENDIAN
465 bool "Sibyte BCM91250A-SWARM"
468 select NR_CPUS_DEFAULT_2
471 select SYS_HAS_CPU_SB1
472 select SYS_SUPPORTS_BIG_ENDIAN
473 select SYS_SUPPORTS_HIGHMEM
474 select SYS_SUPPORTS_LITTLE_ENDIAN
475 select ZONE_DMA32 if 64BIT
477 config SIBYTE_LITTLESUR
478 bool "Sibyte BCM91250C2-LittleSur"
479 depends on EXPERIMENTAL
482 select NR_CPUS_DEFAULT_2
485 select SYS_HAS_CPU_SB1
486 select SYS_SUPPORTS_BIG_ENDIAN
487 select SYS_SUPPORTS_HIGHMEM
488 select SYS_SUPPORTS_LITTLE_ENDIAN
490 config SIBYTE_SENTOSA
491 bool "Sibyte BCM91250E-Sentosa"
492 depends on EXPERIMENTAL
495 select NR_CPUS_DEFAULT_2
498 select SYS_HAS_CPU_SB1
499 select SYS_SUPPORTS_BIG_ENDIAN
500 select SYS_SUPPORTS_LITTLE_ENDIAN
503 bool "Sibyte BCM91480B-BigSur"
506 select NR_CPUS_DEFAULT_4
507 select SIBYTE_BCM1x80
509 select SYS_HAS_CPU_SB1
510 select SYS_SUPPORTS_BIG_ENDIAN
511 select SYS_SUPPORTS_HIGHMEM
512 select SYS_SUPPORTS_LITTLE_ENDIAN
513 select ZONE_DMA32 if 64BIT
516 bool "SNI RM200/300/400"
517 select ARC if CPU_LITTLE_ENDIAN
518 select ARC32 if CPU_LITTLE_ENDIAN
519 select SNIPROM if CPU_BIG_ENDIAN
520 select ARCH_MAY_HAVE_PC_FDC
524 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
525 select DMA_NONCOHERENT
526 select GENERIC_ISA_DMA
533 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
534 select SYS_HAS_CPU_R4X00
535 select SYS_HAS_CPU_R5000
536 select SYS_HAS_CPU_R10000
537 select R5000_CPU_SCACHE
538 select SYS_HAS_EARLY_PRINTK
539 select SYS_SUPPORTS_32BIT_KERNEL
540 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
541 select SYS_SUPPORTS_BIG_ENDIAN
542 select SYS_SUPPORTS_HIGHMEM
543 select SYS_SUPPORTS_LITTLE_ENDIAN
545 The SNI RM200/300/400 are MIPS-based machines manufactured by
546 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
547 Technology and now in turn merged with Fujitsu. Say Y here to
548 support this machine type.
551 bool "Toshiba TX39 series based machines"
554 bool "Toshiba TX49 series based machines"
556 config MIKROTIK_RB532
557 bool "Mikrotik RB532 boards"
560 select DMA_NONCOHERENT
563 select SYS_HAS_CPU_MIPS32_R1
564 select SYS_SUPPORTS_32BIT_KERNEL
565 select SYS_SUPPORTS_LITTLE_ENDIAN
568 select ARCH_REQUIRE_GPIOLIB
570 Support the Mikrotik(tm) RouterBoard 532 series,
571 based on the IDT RC32434 SoC.
574 bool "Wind River PPMC board"
579 select DMA_NONCOHERENT
581 select PCI_GT64XXX_PCI0
583 select SYS_HAS_CPU_MIPS32_R1
584 select SYS_HAS_CPU_MIPS32_R2
585 select SYS_HAS_CPU_MIPS64_R1
586 select SYS_HAS_CPU_NEVADA
587 select SYS_HAS_CPU_RM7000
588 select SYS_SUPPORTS_32BIT_KERNEL
589 select SYS_SUPPORTS_64BIT_KERNEL
590 select SYS_SUPPORTS_BIG_ENDIAN
591 select SYS_SUPPORTS_LITTLE_ENDIAN
593 This enables support for the Wind River MIPS32 4KC PPMC evaluation
594 board, which is based on GT64120 bridge chip.
596 config CAVIUM_OCTEON_SIMULATOR
597 bool "Cavium Networks Octeon Simulator"
599 select 64BIT_PHYS_ADDR
601 select SYS_SUPPORTS_64BIT_KERNEL
602 select SYS_SUPPORTS_BIG_ENDIAN
603 select SYS_SUPPORTS_HIGHMEM
604 select SYS_HAS_CPU_CAVIUM_OCTEON
606 The Octeon simulator is software performance model of the Cavium
607 Octeon Processor. It supports simulating Octeon processors on x86
610 config CAVIUM_OCTEON_REFERENCE_BOARD
611 bool "Cavium Networks Octeon reference board"
613 select 64BIT_PHYS_ADDR
615 select SYS_SUPPORTS_64BIT_KERNEL
616 select SYS_SUPPORTS_BIG_ENDIAN
617 select SYS_SUPPORTS_HIGHMEM
618 select SYS_HAS_EARLY_PRINTK
619 select SYS_HAS_CPU_CAVIUM_OCTEON
622 This option supports all of the Octeon reference boards from Cavium
623 Networks. It builds a kernel that dynamically determines the Octeon
624 CPU type and supports all known board reference implementations.
625 Some of the supported boards are:
632 Say Y here for most Octeon reference boards.
636 source "arch/mips/alchemy/Kconfig"
637 source "arch/mips/basler/excite/Kconfig"
638 source "arch/mips/jazz/Kconfig"
639 source "arch/mips/lasat/Kconfig"
640 source "arch/mips/pmc-sierra/Kconfig"
641 source "arch/mips/sgi-ip27/Kconfig"
642 source "arch/mips/sibyte/Kconfig"
643 source "arch/mips/txx9/Kconfig"
644 source "arch/mips/vr41xx/Kconfig"
645 source "arch/mips/cavium-octeon/Kconfig"
649 config RWSEM_GENERIC_SPINLOCK
653 config RWSEM_XCHGADD_ALGORITHM
656 config ARCH_HAS_ILOG2_U32
660 config ARCH_HAS_ILOG2_U64
664 config ARCH_SUPPORTS_OPROFILE
666 default y if !MIPS_MT_SMTC
668 config GENERIC_FIND_NEXT_BIT
672 config GENERIC_HWEIGHT
676 config GENERIC_CALIBRATE_DELAY
680 config GENERIC_CLOCKEVENTS
688 config GENERIC_CMOS_UPDATE
692 config SCHED_OMIT_FRAME_POINTER
696 config GENERIC_HARDIRQS_NO__DO_IRQ
700 # Select some configuration options automatically based on user selections.
705 config ARCH_MAY_HAVE_PC_FDC
751 select ARCH_REQUIRE_GPIOLIB
760 config DMA_NONCOHERENT
762 select DMA_NEED_PCI_MAP_STATE
764 config DMA_NEED_PCI_MAP_STATE
768 bool "Early printk" if EMBEDDED && DEBUG_KERNEL
769 depends on SYS_HAS_EARLY_PRINTK
772 This option enables special console drivers which allow the kernel
773 to print messages very early in the bootup process.
775 This is useful for kernel debugging when your machine crashes very
776 early before the console code is initialized. For normal operation,
777 it is not recommended because it looks ugly on some machines and
778 doesn't cooperate with an X server. You should normally say N here,
779 unless you want to debug such a crash.
781 config SYS_HAS_EARLY_PRINTK
800 config MIPS_DISABLE_OBSOLETE_IDE
809 config GENERIC_ISA_DMA
811 select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
813 config GENERIC_ISA_DMA_SUPPORT_BROKEN
815 select GENERIC_ISA_DMA
821 # Endianess selection. Sufficiently obscure so many users don't know what to
822 # answer,so we try hard to limit the available choices. Also the use of a
823 # choice statement should be more obvious to the user.
826 prompt "Endianess selection"
828 Some MIPS machines can be configured for either little or big endian
829 byte order. These modes require different kernels and a different
830 Linux distribution. In general there is one preferred byteorder for a
831 particular system but some systems are just as commonly used in the
832 one or the other endianness.
834 config CPU_BIG_ENDIAN
836 depends on SYS_SUPPORTS_BIG_ENDIAN
838 config CPU_LITTLE_ENDIAN
840 depends on SYS_SUPPORTS_LITTLE_ENDIAN
845 config SYS_SUPPORTS_APM_EMULATION
848 config SYS_SUPPORTS_BIG_ENDIAN
851 config SYS_SUPPORTS_LITTLE_ENDIAN
878 config IRQ_CPU_OCTEON
881 config MIPS_BOARDS_GEN
884 config PCI_GT64XXX_PCI0
887 config NO_EXCEPT_FILL
898 select DMA_NONCOHERENT
901 select SYS_HAS_CPU_R5500
902 select SYS_SUPPORTS_32BIT_KERNEL
903 select SYS_SUPPORTS_64BIT_KERNEL
904 select SYS_SUPPORTS_BIG_ENDIAN
911 select DMA_NONCOHERENT
912 select SYS_HAS_CPU_MIPS32_R2
913 select SYS_SUPPORTS_32BIT_KERNEL
914 select SYS_SUPPORTS_LITTLE_ENDIAN
915 select SYS_SUPPORTS_BIG_ENDIAN
917 select CPU_MIPSR2_IRQ_VI
929 select DMA_NONCOHERENT
931 select SYS_HAS_CPU_MIPS32_R1
932 select SYS_HAS_EARLY_PRINTK
933 select SYS_SUPPORTS_32BIT_KERNEL
942 config SGI_HAS_INDYDOG
960 config DEFAULT_SGI_PARTITION
972 config MIPS_L1_CACHE_SHIFT
974 default "4" if MACH_DECSTATION || MIKROTIK_RB532
975 default "7" if SGI_IP22 || SGI_IP27 || SGI_IP28 || SNI_RM || CPU_CAVIUM_OCTEON
976 default "4" if PMC_MSP4200_EVAL
979 config HAVE_STD_PC_SERIAL_PORT
983 bool "ARC console support"
984 depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN)
988 depends on MACH_JAZZ || SNI_RM || SGI_IP32
993 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP28 || SGI_IP32
1002 menu "CPU selection"
1008 config CPU_LOONGSON2
1010 depends on SYS_HAS_CPU_LOONGSON2
1011 select CPU_SUPPORTS_32BIT_KERNEL
1012 select CPU_SUPPORTS_64BIT_KERNEL
1013 select CPU_SUPPORTS_HIGHMEM
1015 The Loongson 2E processor implements the MIPS III instruction set
1016 with many extensions.
1018 config CPU_MIPS32_R1
1019 bool "MIPS32 Release 1"
1020 depends on SYS_HAS_CPU_MIPS32_R1
1022 select CPU_HAS_PREFETCH
1023 select CPU_SUPPORTS_32BIT_KERNEL
1024 select CPU_SUPPORTS_HIGHMEM
1026 Choose this option to build a kernel for release 1 or later of the
1027 MIPS32 architecture. Most modern embedded systems with a 32-bit
1028 MIPS processor are based on a MIPS32 processor. If you know the
1029 specific type of processor in your system, choose those that one
1030 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1031 Release 2 of the MIPS32 architecture is available since several
1032 years so chances are you even have a MIPS32 Release 2 processor
1033 in which case you should choose CPU_MIPS32_R2 instead for better
1036 config CPU_MIPS32_R2
1037 bool "MIPS32 Release 2"
1038 depends on SYS_HAS_CPU_MIPS32_R2
1040 select CPU_HAS_PREFETCH
1041 select CPU_SUPPORTS_32BIT_KERNEL
1042 select CPU_SUPPORTS_HIGHMEM
1044 Choose this option to build a kernel for release 2 or later of the
1045 MIPS32 architecture. Most modern embedded systems with a 32-bit
1046 MIPS processor are based on a MIPS32 processor. If you know the
1047 specific type of processor in your system, choose those that one
1048 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1050 config CPU_MIPS64_R1
1051 bool "MIPS64 Release 1"
1052 depends on SYS_HAS_CPU_MIPS64_R1
1054 select CPU_HAS_PREFETCH
1055 select CPU_SUPPORTS_32BIT_KERNEL
1056 select CPU_SUPPORTS_64BIT_KERNEL
1057 select CPU_SUPPORTS_HIGHMEM
1059 Choose this option to build a kernel for release 1 or later of the
1060 MIPS64 architecture. Many modern embedded systems with a 64-bit
1061 MIPS processor are based on a MIPS64 processor. If you know the
1062 specific type of processor in your system, choose those that one
1063 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1064 Release 2 of the MIPS64 architecture is available since several
1065 years so chances are you even have a MIPS64 Release 2 processor
1066 in which case you should choose CPU_MIPS64_R2 instead for better
1069 config CPU_MIPS64_R2
1070 bool "MIPS64 Release 2"
1071 depends on SYS_HAS_CPU_MIPS64_R2
1073 select CPU_HAS_PREFETCH
1074 select CPU_SUPPORTS_32BIT_KERNEL
1075 select CPU_SUPPORTS_64BIT_KERNEL
1076 select CPU_SUPPORTS_HIGHMEM
1078 Choose this option to build a kernel for release 2 or later of the
1079 MIPS64 architecture. Many modern embedded systems with a 64-bit
1080 MIPS processor are based on a MIPS64 processor. If you know the
1081 specific type of processor in your system, choose those that one
1082 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1086 depends on SYS_HAS_CPU_R3000
1088 select CPU_SUPPORTS_32BIT_KERNEL
1089 select CPU_SUPPORTS_HIGHMEM
1091 Please make sure to pick the right CPU type. Linux/MIPS is not
1092 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1093 *not* work on R4000 machines and vice versa. However, since most
1094 of the supported machines have an R4000 (or similar) CPU, R4x00
1095 might be a safe bet. If the resulting kernel does not work,
1096 try to recompile with R3000.
1100 depends on SYS_HAS_CPU_TX39XX
1101 select CPU_SUPPORTS_32BIT_KERNEL
1105 depends on SYS_HAS_CPU_VR41XX
1106 select CPU_SUPPORTS_32BIT_KERNEL
1107 select CPU_SUPPORTS_64BIT_KERNEL
1109 The options selects support for the NEC VR4100 series of processors.
1110 Only choose this option if you have one of these processors as a
1111 kernel built with this option will not run on any other type of
1112 processor or vice versa.
1116 depends on SYS_HAS_CPU_R4300
1118 select CPU_SUPPORTS_32BIT_KERNEL
1119 select CPU_SUPPORTS_64BIT_KERNEL
1121 MIPS Technologies R4300-series processors.
1125 depends on SYS_HAS_CPU_R4X00
1127 select CPU_SUPPORTS_32BIT_KERNEL
1128 select CPU_SUPPORTS_64BIT_KERNEL
1130 MIPS Technologies R4000-series processors other than 4300, including
1131 the R4000, R4400, R4600, and 4700.
1135 depends on SYS_HAS_CPU_TX49XX
1137 select CPU_HAS_PREFETCH
1138 select CPU_SUPPORTS_32BIT_KERNEL
1139 select CPU_SUPPORTS_64BIT_KERNEL
1143 depends on SYS_HAS_CPU_R5000
1145 select CPU_SUPPORTS_32BIT_KERNEL
1146 select CPU_SUPPORTS_64BIT_KERNEL
1148 MIPS Technologies R5000-series processors other than the Nevada.
1152 depends on SYS_HAS_CPU_R5432
1154 select CPU_SUPPORTS_32BIT_KERNEL
1155 select CPU_SUPPORTS_64BIT_KERNEL
1159 depends on SYS_HAS_CPU_R5500
1161 select CPU_SUPPORTS_32BIT_KERNEL
1162 select CPU_SUPPORTS_64BIT_KERNEL
1164 NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV
1169 depends on EXPERIMENTAL
1171 depends on SYS_HAS_CPU_R6000
1172 select CPU_SUPPORTS_32BIT_KERNEL
1174 MIPS Technologies R6000 and R6000A series processors. Note these
1175 processors are extremely rare and the support for them is incomplete.
1179 depends on SYS_HAS_CPU_NEVADA
1181 select CPU_SUPPORTS_32BIT_KERNEL
1182 select CPU_SUPPORTS_64BIT_KERNEL
1184 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1188 depends on EXPERIMENTAL
1189 depends on SYS_HAS_CPU_R8000
1191 select CPU_HAS_PREFETCH
1192 select CPU_SUPPORTS_64BIT_KERNEL
1194 MIPS Technologies R8000 processors. Note these processors are
1195 uncommon and the support for them is incomplete.
1199 depends on SYS_HAS_CPU_R10000
1201 select CPU_HAS_PREFETCH
1202 select CPU_SUPPORTS_32BIT_KERNEL
1203 select CPU_SUPPORTS_64BIT_KERNEL
1204 select CPU_SUPPORTS_HIGHMEM
1206 MIPS Technologies R10000-series processors.
1210 depends on SYS_HAS_CPU_RM7000
1212 select CPU_HAS_PREFETCH
1213 select CPU_SUPPORTS_32BIT_KERNEL
1214 select CPU_SUPPORTS_64BIT_KERNEL
1215 select CPU_SUPPORTS_HIGHMEM
1219 depends on SYS_HAS_CPU_RM9000
1221 select CPU_HAS_PREFETCH
1222 select CPU_SUPPORTS_32BIT_KERNEL
1223 select CPU_SUPPORTS_64BIT_KERNEL
1224 select CPU_SUPPORTS_HIGHMEM
1225 select WEAK_ORDERING
1229 depends on SYS_HAS_CPU_SB1
1231 select CPU_SUPPORTS_32BIT_KERNEL
1232 select CPU_SUPPORTS_64BIT_KERNEL
1233 select CPU_SUPPORTS_HIGHMEM
1234 select WEAK_ORDERING
1236 config CPU_CAVIUM_OCTEON
1237 bool "Cavium Octeon processor"
1238 depends on SYS_HAS_CPU_CAVIUM_OCTEON
1240 select IRQ_CPU_OCTEON
1241 select CPU_HAS_PREFETCH
1242 select CPU_SUPPORTS_64BIT_KERNEL
1243 select SYS_SUPPORTS_SMP
1244 select NR_CPUS_DEFAULT_16
1245 select WEAK_ORDERING
1246 select WEAK_REORDERING_BEYOND_LLSC
1247 select CPU_SUPPORTS_HIGHMEM
1249 The Cavium Octeon processor is a highly integrated chip containing
1250 many ethernet hardware widgets for networking tasks. The processor
1251 can have up to 16 Mips64v2 cores and 8 integrated gigabit ethernets.
1252 Full details can be found at http://www.caviumnetworks.com.
1256 config SYS_HAS_CPU_LOONGSON2
1259 config SYS_HAS_CPU_MIPS32_R1
1262 config SYS_HAS_CPU_MIPS32_R2
1265 config SYS_HAS_CPU_MIPS64_R1
1268 config SYS_HAS_CPU_MIPS64_R2
1271 config SYS_HAS_CPU_R3000
1274 config SYS_HAS_CPU_TX39XX
1277 config SYS_HAS_CPU_VR41XX
1280 config SYS_HAS_CPU_R4300
1283 config SYS_HAS_CPU_R4X00
1286 config SYS_HAS_CPU_TX49XX
1289 config SYS_HAS_CPU_R5000
1292 config SYS_HAS_CPU_R5432
1295 config SYS_HAS_CPU_R5500
1298 config SYS_HAS_CPU_R6000
1301 config SYS_HAS_CPU_NEVADA
1304 config SYS_HAS_CPU_R8000
1307 config SYS_HAS_CPU_R10000
1310 config SYS_HAS_CPU_RM7000
1313 config SYS_HAS_CPU_RM9000
1316 config SYS_HAS_CPU_SB1
1319 config SYS_HAS_CPU_CAVIUM_OCTEON
1323 # CPU may reorder R->R, R->W, W->R, W->W
1324 # Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
1326 config WEAK_ORDERING
1330 # CPU may reorder reads and writes beyond LL/SC
1331 # CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
1333 config WEAK_REORDERING_BEYOND_LLSC
1338 # These two indicate any level of the MIPS32 and MIPS64 architecture
1342 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1346 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1349 # These two indicate the revision of the architecture, either Release 1 or Release 2
1353 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1357 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 || CPU_CAVIUM_OCTEON
1359 config SYS_SUPPORTS_32BIT_KERNEL
1361 config SYS_SUPPORTS_64BIT_KERNEL
1363 config CPU_SUPPORTS_32BIT_KERNEL
1365 config CPU_SUPPORTS_64BIT_KERNEL
1369 # Set to y for ptrace access to watch registers.
1371 config HARDWARE_WATCHPOINTS
1373 default y if CPU_MIPSR1 || CPU_MIPSR2
1379 prompt "Kernel code model"
1381 You should only select this option if you have a workload that
1382 actually benefits from 64-bit processing or if your machine has
1383 large memory. You will only be presented a single option in this
1384 menu if your system does not support both 32-bit and 64-bit kernels.
1387 bool "32-bit kernel"
1388 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1391 Select this option if you want to build a 32-bit kernel.
1393 bool "64-bit kernel"
1394 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1395 select HAVE_SYSCALL_WRAPPERS
1397 Select this option if you want to build a 64-bit kernel.
1402 prompt "Kernel page size"
1403 default PAGE_SIZE_4KB
1405 config PAGE_SIZE_4KB
1408 This option select the standard 4kB Linux page size. On some
1409 R3000-family processors this is the only available page size. Using
1410 4kB page size will minimize memory consumption and is therefore
1411 recommended for low memory systems.
1413 config PAGE_SIZE_8KB
1415 depends on (EXPERIMENTAL && CPU_R8000) || CPU_CAVIUM_OCTEON
1417 Using 8kB page size will result in higher performance kernel at
1418 the price of higher memory consumption. This option is available
1419 only on R8000 and cnMIPS processors. Note that you will need a
1420 suitable Linux distribution to support this.
1422 config PAGE_SIZE_16KB
1424 depends on !CPU_R3000 && !CPU_TX39XX
1426 Using 16kB page size will result in higher performance kernel at
1427 the price of higher memory consumption. This option is available on
1428 all non-R3000 family processors. Note that you will need a suitable
1429 Linux distribution to support this.
1431 config PAGE_SIZE_32KB
1433 depends on CPU_CAVIUM_OCTEON
1435 Using 32kB page size will result in higher performance kernel at
1436 the price of higher memory consumption. This option is available
1437 only on cnMIPS cores. Note that you will need a suitable Linux
1438 distribution to support this.
1440 config PAGE_SIZE_64KB
1442 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1444 Using 64kB page size will result in higher performance kernel at
1445 the price of higher memory consumption. This option is available on
1446 all non-R3000 family processor. Not that at the time of this
1447 writing this option is still high experimental.
1454 config IP22_CPU_SCACHE
1459 # Support for a MIPS32 / MIPS64 style S-caches
1461 config MIPS_CPU_SCACHE
1465 config R5000_CPU_SCACHE
1469 config RM7000_CPU_SCACHE
1473 config SIBYTE_DMA_PAGEOPS
1474 bool "Use DMA to clear/copy pages"
1477 Instead of using the CPU to zero and copy pages, use a Data Mover
1478 channel. These DMA channels are otherwise unused by the standard
1479 SiByte Linux port. Seems to give a small performance benefit.
1481 config CPU_HAS_PREFETCH
1485 prompt "MIPS MT options"
1487 config MIPS_MT_DISABLED
1488 bool "Disable multithreading support."
1490 Use this option if your workload can't take advantage of
1491 MIPS hardware multithreading support. On systems that don't have
1492 the option of an MT-enabled processor this option will be the only
1493 option in this menu.
1496 bool "Use 1 TC on each available VPE for SMP"
1497 depends on SYS_SUPPORTS_MULTITHREADING
1498 select CPU_MIPSR2_IRQ_VI
1499 select CPU_MIPSR2_IRQ_EI
1501 select NR_CPUS_DEFAULT_2
1503 select SYS_SUPPORTS_SCHED_SMT if SMP
1504 select SYS_SUPPORTS_SMP
1507 This is a kernel model which is also known a VSMP or lately
1508 has been marketesed into SMVP.
1511 bool "SMTC: Use all TCs on all VPEs for SMP"
1512 depends on CPU_MIPS32_R2
1513 #depends on CPU_MIPS64_R2 # once there is hardware ...
1514 depends on SYS_SUPPORTS_MULTITHREADING
1515 select CPU_MIPSR2_IRQ_VI
1516 select CPU_MIPSR2_IRQ_EI
1518 select NR_CPUS_DEFAULT_8
1520 select SYS_SUPPORTS_SMP
1523 This is a kernel model which is known a SMTC or lately has been
1524 marketesed into SMVP.
1532 bool "SMT (multithreading) scheduler support"
1533 depends on SYS_SUPPORTS_SCHED_SMT
1536 SMT scheduler support improves the CPU scheduler's decision making
1537 when dealing with MIPS MT enabled cores at a cost of slightly
1538 increased overhead in some places. If unsure say N here.
1540 config SYS_SUPPORTS_SCHED_SMT
1544 config SYS_SUPPORTS_MULTITHREADING
1547 config MIPS_MT_FPAFF
1548 bool "Dynamic FPU affinity for FP-intensive threads"
1550 depends on MIPS_MT_SMP || MIPS_MT_SMTC
1552 config MIPS_VPE_LOADER
1553 bool "VPE loader support."
1554 depends on SYS_SUPPORTS_MULTITHREADING
1555 select CPU_MIPSR2_IRQ_VI
1556 select CPU_MIPSR2_IRQ_EI
1559 Includes a loader for loading an elf relocatable object
1560 onto another VPE and running it.
1562 config MIPS_MT_SMTC_IM_BACKSTOP
1563 bool "Use per-TC register bits as backstop for inhibited IM bits"
1564 depends on MIPS_MT_SMTC
1567 To support multiple TC microthreads acting as "CPUs" within
1568 a VPE, VPE-wide interrupt mask bits must be specially manipulated
1569 during interrupt handling. To support legacy drivers and interrupt
1570 controller management code, SMTC has a "backstop" to track and
1571 if necessary restore the interrupt mask. This has some performance
1572 impact on interrupt service overhead.
1574 config MIPS_MT_SMTC_IRQAFF
1575 bool "Support IRQ affinity API"
1576 depends on MIPS_MT_SMTC
1579 Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.)
1580 for SMTC Linux kernel. Requires platform support, of which
1581 an example can be found in the MIPS kernel i8259 and Malta
1582 platform code. Adds some overhead to interrupt dispatch, and
1583 should be used only if you know what you are doing.
1585 config MIPS_VPE_LOADER_TOM
1586 bool "Load VPE program into memory hidden from linux"
1587 depends on MIPS_VPE_LOADER
1590 The loader can use memory that is present but has been hidden from
1591 Linux using the kernel command line option "mem=xxMB". It's up to
1592 you to ensure the amount you put in the option and the space your
1593 program requires is less or equal to the amount physically present.
1595 # this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1596 config MIPS_VPE_APSP_API
1597 bool "Enable support for AP/SP API (RTLX)"
1598 depends on MIPS_VPE_LOADER
1601 config MIPS_APSP_KSPD
1603 depends on MIPS_VPE_APSP_API
1606 KSPD is a kernel daemon that accepts syscall requests from the SP
1607 side, actions them and returns the results. It also handles the
1608 "exit" syscall notifying other kernel modules the SP program is
1609 exiting. You probably want to say yes here.
1612 bool "MIPS CMP framework support"
1613 depends on SYS_SUPPORTS_MIPS_CMP
1614 select SYNC_R4K if BROKEN
1615 select SYS_SUPPORTS_SMP
1616 select SYS_SUPPORTS_SCHED_SMT if SMP
1617 select WEAK_ORDERING
1620 This is a placeholder option for the GCMP work. It will need to
1621 be handled differently...
1623 config SB1_PASS_1_WORKAROUNDS
1625 depends on CPU_SB1_PASS_1
1628 config SB1_PASS_2_WORKAROUNDS
1630 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1633 config SB1_PASS_2_1_WORKAROUNDS
1635 depends on CPU_SB1 && CPU_SB1_PASS_2
1638 config 64BIT_PHYS_ADDR
1644 config CPU_HAS_SMARTMIPS
1645 depends on SYS_SUPPORTS_SMARTMIPS
1646 bool "Support for the SmartMIPS ASE"
1648 SmartMIPS is a extension of the MIPS32 architecture aimed at
1649 increased security at both hardware and software level for
1650 smartcards. Enabling this option will allow proper use of the
1651 SmartMIPS instructions by Linux applications. However a kernel with
1652 this option will not work on a MIPS core without SmartMIPS core. If
1653 you don't know you probably don't have SmartMIPS and should say N
1660 # Vectored interrupt mode is an R2 feature
1662 config CPU_MIPSR2_IRQ_VI
1666 # Extended interrupt mode is an R2 feature
1668 config CPU_MIPSR2_IRQ_EI
1673 depends on !CPU_R3000
1676 config GENERIC_CLOCKEVENTS_BROADCAST
1682 config CPU_DADDI_WORKAROUNDS
1685 config CPU_R4000_WORKAROUNDS
1687 select CPU_R4400_WORKAROUNDS
1689 config CPU_R4400_WORKAROUNDS
1693 # Use the generic interrupt handling code in kernel/irq/:
1695 config GENERIC_HARDIRQS
1699 config GENERIC_IRQ_PROBE
1707 # - Highmem only makes sense for the 32-bit kernel.
1708 # - The current highmem code will only work properly on physically indexed
1709 # caches such as R3000, SB1, R7000 or those that look like they're virtually
1710 # indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1711 # moment we protect the user and offer the highmem option only on machines
1712 # where it's known to be safe. This will not offer highmem on a few systems
1713 # such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1714 # indexed CPUs but we're playing safe.
1715 # - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1716 # know they might have memory configurations that could make use of highmem
1720 bool "High Memory Support"
1721 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1723 config CPU_SUPPORTS_HIGHMEM
1726 config SYS_SUPPORTS_HIGHMEM
1729 config SYS_SUPPORTS_SMARTMIPS
1732 config ARCH_FLATMEM_ENABLE
1736 config ARCH_DISCONTIGMEM_ENABLE
1738 default y if SGI_IP27
1740 Say Y to support efficient handling of discontiguous physical memory,
1741 for architectures which are either NUMA (Non-Uniform Memory Access)
1742 or have huge holes in the physical address space for other reasons.
1743 See <file:Documentation/vm/numa> for more.
1745 config ARCH_POPULATES_NODE_MAP
1748 config ARCH_SPARSEMEM_ENABLE
1750 select SPARSEMEM_STATIC
1754 depends on SYS_SUPPORTS_NUMA
1756 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1757 Access). This option improves performance on systems with more
1758 than two nodes; on two node systems it is generally better to
1759 leave it disabled; on single node systems disable this option
1762 config SYS_SUPPORTS_NUMA
1768 depends on NEED_MULTIPLE_NODES
1773 bool "Multi-Processing support"
1774 depends on SYS_SUPPORTS_SMP
1776 select USE_GENERIC_SMP_HELPERS
1778 This enables support for systems with more than one CPU. If you have
1779 a system with only one CPU, like most personal computers, say N. If
1780 you have a system with more than one CPU, say Y.
1782 If you say N here, the kernel will run on single and multiprocessor
1783 machines, but will use only one CPU of a multiprocessor machine. If
1784 you say Y here, the kernel will run on many, but not all,
1785 singleprocessor machines. On a singleprocessor machine, the kernel
1786 will run faster if you say N here.
1788 People using multiprocessor machines who say Y here should also say
1789 Y to "Enhanced Real Time Clock Support", below.
1791 See also the SMP-HOWTO available at
1792 <http://www.tldp.org/docs.html#howto>.
1794 If you don't know what to do here, say N.
1799 config SYS_SUPPORTS_MIPS_CMP
1802 config SYS_SUPPORTS_SMP
1805 config NR_CPUS_DEFAULT_1
1808 config NR_CPUS_DEFAULT_2
1811 config NR_CPUS_DEFAULT_4
1814 config NR_CPUS_DEFAULT_8
1817 config NR_CPUS_DEFAULT_16
1820 config NR_CPUS_DEFAULT_32
1823 config NR_CPUS_DEFAULT_64
1827 int "Maximum number of CPUs (2-64)"
1828 range 1 64 if NR_CPUS_DEFAULT_1
1830 default "1" if NR_CPUS_DEFAULT_1
1831 default "2" if NR_CPUS_DEFAULT_2
1832 default "4" if NR_CPUS_DEFAULT_4
1833 default "8" if NR_CPUS_DEFAULT_8
1834 default "16" if NR_CPUS_DEFAULT_16
1835 default "32" if NR_CPUS_DEFAULT_32
1836 default "64" if NR_CPUS_DEFAULT_64
1838 This allows you to specify the maximum number of CPUs which this
1839 kernel will support. The maximum supported value is 32 for 32-bit
1840 kernel and 64 for 64-bit kernels; the minimum value which makes
1841 sense is 1 for Qemu (useful only for kernel debugging purposes)
1842 and 2 for all others.
1844 This is purely to save memory - each supported CPU adds
1845 approximately eight kilobytes to the kernel image. For best
1846 performance should round up your number of processors to the next
1849 source "kernel/time/Kconfig"
1852 # Timer Interrupt Frequency Configuration
1856 prompt "Timer frequency"
1859 Allows the configuration of the timer frequency.
1862 bool "48 HZ" if SYS_SUPPORTS_48HZ || SYS_SUPPORTS_ARBIT_HZ
1865 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1868 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1871 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1874 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1877 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1880 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1884 config SYS_SUPPORTS_48HZ
1887 config SYS_SUPPORTS_100HZ
1890 config SYS_SUPPORTS_128HZ
1893 config SYS_SUPPORTS_250HZ
1896 config SYS_SUPPORTS_256HZ
1899 config SYS_SUPPORTS_1000HZ
1902 config SYS_SUPPORTS_1024HZ
1905 config SYS_SUPPORTS_ARBIT_HZ
1907 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1908 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1909 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1910 !SYS_SUPPORTS_1024HZ
1915 default 100 if HZ_100
1916 default 128 if HZ_128
1917 default 250 if HZ_250
1918 default 256 if HZ_256
1919 default 1000 if HZ_1000
1920 default 1024 if HZ_1024
1922 source "kernel/Kconfig.preempt"
1924 config MIPS_INSANE_LARGE
1925 bool "Support for large 64-bit configurations"
1926 depends on CPU_R10000 && 64BIT
1928 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1929 previous 64-bit processors which only supported 40 bit / 1TB. If you
1930 need processes of more than 1TB virtual address space, say Y here.
1931 This will result in additional memory usage, so it is not
1932 recommended for normal users.
1935 bool "Kexec system call (EXPERIMENTAL)"
1936 depends on EXPERIMENTAL
1938 kexec is a system call that implements the ability to shutdown your
1939 current kernel, and to start another kernel. It is like a reboot
1940 but it is independent of the system firmware. And like a reboot
1941 you can start any kernel with it, not just Linux.
1943 The name comes from the similarity to the exec system call.
1945 It is an ongoing process to be certain the hardware in a machine
1946 is properly shutdown, so do not be surprised if this code does not
1947 initially work for you. It may help to enable device hotplugging
1948 support. As of this writing the exact hardware interface is
1949 strongly in flux, so no good recommendation can be made.
1952 bool "Enable seccomp to safely compute untrusted bytecode"
1956 This kernel feature is useful for number crunching applications
1957 that may need to compute untrusted bytecode during their
1958 execution. By using pipes or other transports made available to
1959 the process as file descriptors supporting the read/write
1960 syscalls, it's possible to isolate those applications in
1961 their own address space using seccomp. Once seccomp is
1962 enabled via /proc/<pid>/seccomp, it cannot be disabled
1963 and the task is only allowed to execute a few safe syscalls
1964 defined by each seccomp mode.
1966 If unsure, say Y. Only embedded should say N here.
1970 config LOCKDEP_SUPPORT
1974 config STACKTRACE_SUPPORT
1978 source "init/Kconfig"
1980 config PROBE_INITRD_HEADER
1981 bool "Probe initrd header created by addinitrd"
1982 depends on BLK_DEV_INITRD
1984 Probe initrd header at the last page of kernel image.
1985 Say Y here if you are using arch/mips/boot/addinitrd.c to
1986 add initrd or initramfs image to the kernel image.
1989 source "kernel/Kconfig.freezer"
1991 menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1999 bool "Support for PCI controller"
2000 depends on HW_HAS_PCI
2003 Find out whether you have a PCI motherboard. PCI is the name of a
2004 bus system, i.e. the way the CPU talks to the other stuff inside
2005 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
2011 source "drivers/pci/Kconfig"
2014 # ISA support is now enabled via select. Too many systems still have the one
2015 # or other ISA chip on the board that users don't know about so don't expect
2016 # users to choose the right thing ...
2023 depends on HW_HAS_EISA
2025 select GENERIC_ISA_DMA
2027 The Extended Industry Standard Architecture (EISA) bus was
2028 developed as an open alternative to the IBM MicroChannel bus.
2030 The EISA bus provided some of the features of the IBM MicroChannel
2031 bus while maintaining backward compatibility with cards made for
2032 the older ISA bus. The EISA bus saw limited use between 1988 and
2033 1995 when it was made obsolete by the PCI bus.
2035 Say Y here if you are building a kernel for an EISA-based machine.
2039 source "drivers/eisa/Kconfig"
2042 bool "TURBOchannel support"
2043 depends on MACH_DECSTATION
2045 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
2046 processors. Documentation on writing device drivers for TurboChannel
2048 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
2051 # bool "Access.Bus support"
2064 source "drivers/pcmcia/Kconfig"
2066 source "drivers/pci/hotplug/Kconfig"
2070 menu "Executable file formats"
2072 source "fs/Kconfig.binfmt"
2077 config MIPS32_COMPAT
2078 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
2081 Select this option if you want Linux/MIPS 32-bit binary
2082 compatibility. Since all software available for Linux/MIPS is
2083 currently 32-bit you should say Y here.
2087 depends on MIPS32_COMPAT
2090 config SYSVIPC_COMPAT
2092 depends on COMPAT && SYSVIPC
2096 bool "Kernel support for o32 binaries"
2097 depends on MIPS32_COMPAT
2099 Select this option if you want to run o32 binaries. These are pure
2100 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
2101 existing binaries are in this format.
2106 bool "Kernel support for n32 binaries"
2107 depends on MIPS32_COMPAT
2109 Select this option if you want to run n32 binaries. These are
2110 64-bit binaries using 32-bit quantities for addressing and certain
2111 data that would normally be 64-bit. They are used in special
2118 default y if MIPS32_O32 || MIPS32_N32
2122 menu "Power management options"
2124 config ARCH_SUSPEND_POSSIBLE
2128 source "kernel/power/Kconfig"
2132 source "net/Kconfig"
2134 source "drivers/Kconfig"
2138 source "arch/mips/Kconfig.debug"
2140 source "security/Kconfig"
2142 source "crypto/Kconfig"
2144 source "lib/Kconfig"