1config MIPS 2 bool 3 default y 4 select ARCH_MIGHT_HAVE_PC_PARPORT 5 select ARCH_MIGHT_HAVE_PC_SERIO 6 select HAVE_CONTEXT_TRACKING 7 select HAVE_GENERIC_DMA_COHERENT 8 select HAVE_IDE 9 select HAVE_OPROFILE 10 select HAVE_PERF_EVENTS 11 select PERF_USE_VMALLOC 12 select HAVE_ARCH_KGDB 13 select HAVE_ARCH_SECCOMP_FILTER 14 select HAVE_ARCH_TRACEHOOK 15 select HAVE_BPF_JIT if !CPU_MICROMIPS 16 select ARCH_HAVE_CUSTOM_GPIO_H 17 select HAVE_FUNCTION_TRACER 18 select HAVE_DYNAMIC_FTRACE 19 select HAVE_FTRACE_MCOUNT_RECORD 20 select HAVE_C_RECORDMCOUNT 21 select HAVE_FUNCTION_GRAPH_TRACER 22 select HAVE_KPROBES 23 select HAVE_KRETPROBES 24 select HAVE_DEBUG_KMEMLEAK 25 select HAVE_SYSCALL_TRACEPOINTS 26 select ARCH_BINFMT_ELF_RANDOMIZE_PIE 27 select HAVE_ARCH_TRANSPARENT_HUGEPAGE if CPU_SUPPORTS_HUGEPAGES && 64BIT 28 select RTC_LIB if !MACH_LOONGSON 29 select GENERIC_ATOMIC64 if !64BIT 30 select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE 31 select HAVE_DMA_ATTRS 32 select HAVE_DMA_CONTIGUOUS 33 select HAVE_DMA_API_DEBUG 34 select GENERIC_IRQ_PROBE 35 select GENERIC_IRQ_SHOW 36 select GENERIC_PCI_IOMAP 37 select HAVE_ARCH_JUMP_LABEL 38 select ARCH_WANT_IPC_PARSE_VERSION 39 select IRQ_FORCED_THREADING 40 select HAVE_MEMBLOCK 41 select HAVE_MEMBLOCK_NODE_MAP 42 select ARCH_DISCARD_MEMBLOCK 43 select GENERIC_SMP_IDLE_THREAD 44 select BUILDTIME_EXTABLE_SORT 45 select GENERIC_CLOCKEVENTS 46 select GENERIC_CMOS_UPDATE 47 select HAVE_MOD_ARCH_SPECIFIC 48 select VIRT_TO_BUS 49 select MODULES_USE_ELF_REL if MODULES 50 select MODULES_USE_ELF_RELA if MODULES && 64BIT 51 select CLONE_BACKWARDS 52 select HAVE_DEBUG_STACKOVERFLOW 53 select HAVE_CC_STACKPROTECTOR 54 select CPU_PM if CPU_IDLE 55 select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST 56 select ARCH_BINFMT_ELF_STATE 57 58menu "Machine selection" 59 60choice 61 prompt "System type" 62 default SGI_IP22 63 64config MIPS_ALCHEMY 65 bool "Alchemy processor based machines" 66 select 64BIT_PHYS_ADDR 67 select CEVT_R4K 68 select CSRC_R4K 69 select IRQ_CPU 70 select DMA_MAYBE_COHERENT # Au1000,1500,1100 aren't, rest is 71 select SYS_HAS_CPU_MIPS32_R1 72 select SYS_SUPPORTS_32BIT_KERNEL 73 select SYS_SUPPORTS_APM_EMULATION 74 select ARCH_REQUIRE_GPIOLIB 75 select SYS_SUPPORTS_ZBOOT 76 select COMMON_CLK 77 78config AR7 79 bool "Texas Instruments AR7" 80 select BOOT_ELF32 81 select DMA_NONCOHERENT 82 select CEVT_R4K 83 select CSRC_R4K 84 select IRQ_CPU 85 select NO_EXCEPT_FILL 86 select SWAP_IO_SPACE 87 select SYS_HAS_CPU_MIPS32_R1 88 select SYS_HAS_EARLY_PRINTK 89 select SYS_SUPPORTS_32BIT_KERNEL 90 select SYS_SUPPORTS_LITTLE_ENDIAN 91 select SYS_SUPPORTS_MIPS16 92 select SYS_SUPPORTS_ZBOOT_UART16550 93 select ARCH_REQUIRE_GPIOLIB 94 select VLYNQ 95 select HAVE_CLK 96 help 97 Support for the Texas Instruments AR7 System-on-a-Chip 98 family: TNETD7100, 7200 and 7300. 99 100config ATH79 101 bool "Atheros AR71XX/AR724X/AR913X based boards" 102 select ARCH_REQUIRE_GPIOLIB 103 select BOOT_RAW 104 select CEVT_R4K 105 select CSRC_R4K 106 select DMA_NONCOHERENT 107 select HAVE_CLK 108 select CLKDEV_LOOKUP 109 select IRQ_CPU 110 select MIPS_MACHINE 111 select SYS_HAS_CPU_MIPS32_R2 112 select SYS_HAS_EARLY_PRINTK 113 select SYS_SUPPORTS_32BIT_KERNEL 114 select SYS_SUPPORTS_BIG_ENDIAN 115 select SYS_SUPPORTS_MIPS16 116 help 117 Support for the Atheros AR71XX/AR724X/AR913X SoCs. 118 119config BCM3384 120 bool "Broadcom BCM3384 based boards" 121 select BOOT_RAW 122 select NO_EXCEPT_FILL 123 select USE_OF 124 select CEVT_R4K 125 select CSRC_R4K 126 select SYNC_R4K 127 select COMMON_CLK 128 select DMA_NONCOHERENT 129 select IRQ_CPU 130 select SYS_SUPPORTS_32BIT_KERNEL 131 select SYS_SUPPORTS_BIG_ENDIAN 132 select SYS_SUPPORTS_HIGHMEM 133 select SYS_HAS_CPU_BMIPS5000 134 select SWAP_IO_SPACE 135 select USB_EHCI_BIG_ENDIAN_DESC 136 select USB_EHCI_BIG_ENDIAN_MMIO 137 select USB_OHCI_BIG_ENDIAN_DESC 138 select USB_OHCI_BIG_ENDIAN_MMIO 139 help 140 Support for BCM3384 based boards. BCM3384/BCM33843 is a cable modem 141 chipset with a Linux application processor that is often used to 142 provide Samba services, a CUPS print server, and/or advanced routing 143 features. 144 145config BCM47XX 146 bool "Broadcom BCM47XX based boards" 147 select ARCH_WANT_OPTIONAL_GPIOLIB 148 select BOOT_RAW 149 select CEVT_R4K 150 select CSRC_R4K 151 select DMA_NONCOHERENT 152 select HW_HAS_PCI 153 select IRQ_CPU 154 select SYS_HAS_CPU_MIPS32_R1 155 select NO_EXCEPT_FILL 156 select SYS_SUPPORTS_32BIT_KERNEL 157 select SYS_SUPPORTS_LITTLE_ENDIAN 158 select SYS_SUPPORTS_MIPS16 159 select SYS_HAS_EARLY_PRINTK 160 select USE_GENERIC_EARLY_PRINTK_8250 161 select GPIOLIB 162 select LEDS_GPIO_REGISTER 163 help 164 Support for BCM47XX based boards 165 166config BCM63XX 167 bool "Broadcom BCM63XX based boards" 168 select BOOT_RAW 169 select CEVT_R4K 170 select CSRC_R4K 171 select SYNC_R4K 172 select DMA_NONCOHERENT 173 select IRQ_CPU 174 select SYS_SUPPORTS_32BIT_KERNEL 175 select SYS_SUPPORTS_BIG_ENDIAN 176 select SYS_HAS_EARLY_PRINTK 177 select SWAP_IO_SPACE 178 select ARCH_REQUIRE_GPIOLIB 179 select HAVE_CLK 180 select MIPS_L1_CACHE_SHIFT_4 181 help 182 Support for BCM63XX based boards 183 184config MIPS_COBALT 185 bool "Cobalt Server" 186 select CEVT_R4K 187 select CSRC_R4K 188 select CEVT_GT641XX 189 select DMA_NONCOHERENT 190 select HW_HAS_PCI 191 select I8253 192 select I8259 193 select IRQ_CPU 194 select IRQ_GT641XX 195 select PCI_GT64XXX_PCI0 196 select PCI 197 select SYS_HAS_CPU_NEVADA 198 select SYS_HAS_EARLY_PRINTK 199 select SYS_SUPPORTS_32BIT_KERNEL 200 select SYS_SUPPORTS_64BIT_KERNEL 201 select SYS_SUPPORTS_LITTLE_ENDIAN 202 select USE_GENERIC_EARLY_PRINTK_8250 203 204config MACH_DECSTATION 205 bool "DECstations" 206 select BOOT_ELF32 207 select CEVT_DS1287 208 select CEVT_R4K if CPU_R4X00 209 select CSRC_IOASIC 210 select CSRC_R4K if CPU_R4X00 211 select CPU_DADDI_WORKAROUNDS if 64BIT 212 select CPU_R4000_WORKAROUNDS if 64BIT 213 select CPU_R4400_WORKAROUNDS if 64BIT 214 select DMA_NONCOHERENT 215 select NO_IOPORT_MAP 216 select IRQ_CPU 217 select SYS_HAS_CPU_R3000 218 select SYS_HAS_CPU_R4X00 219 select SYS_SUPPORTS_32BIT_KERNEL 220 select SYS_SUPPORTS_64BIT_KERNEL 221 select SYS_SUPPORTS_LITTLE_ENDIAN 222 select SYS_SUPPORTS_128HZ 223 select SYS_SUPPORTS_256HZ 224 select SYS_SUPPORTS_1024HZ 225 select MIPS_L1_CACHE_SHIFT_4 226 help 227 This enables support for DEC's MIPS based workstations. For details 228 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the 229 DECstation porting pages on <http://decstation.unix-ag.org/>. 230 231 If you have one of the following DECstation Models you definitely 232 want to choose R4xx0 for the CPU Type: 233 234 DECstation 5000/50 235 DECstation 5000/150 236 DECstation 5000/260 237 DECsystem 5900/260 238 239 otherwise choose R3000. 240 241config MACH_JAZZ 242 bool "Jazz family of machines" 243 select FW_ARC 244 select FW_ARC32 245 select ARCH_MAY_HAVE_PC_FDC 246 select CEVT_R4K 247 select CSRC_R4K 248 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN 249 select GENERIC_ISA_DMA 250 select HAVE_PCSPKR_PLATFORM 251 select IRQ_CPU 252 select I8253 253 select I8259 254 select ISA 255 select SYS_HAS_CPU_R4X00 256 select SYS_SUPPORTS_32BIT_KERNEL 257 select SYS_SUPPORTS_64BIT_KERNEL 258 select SYS_SUPPORTS_100HZ 259 help 260 This a family of machines based on the MIPS R4030 chipset which was 261 used by several vendors to build RISC/os and Windows NT workstations. 262 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millennium and 263 Olivetti M700-10 workstations. 264 265config MACH_JZ4740 266 bool "Ingenic JZ4740 based machines" 267 select SYS_HAS_CPU_MIPS32_R1 268 select SYS_SUPPORTS_32BIT_KERNEL 269 select SYS_SUPPORTS_LITTLE_ENDIAN 270 select SYS_SUPPORTS_ZBOOT_UART16550 271 select DMA_NONCOHERENT 272 select IRQ_CPU 273 select ARCH_REQUIRE_GPIOLIB 274 select SYS_HAS_EARLY_PRINTK 275 select HAVE_CLK 276 select GENERIC_IRQ_CHIP 277 278config LANTIQ 279 bool "Lantiq based platforms" 280 select DMA_NONCOHERENT 281 select IRQ_CPU 282 select CEVT_R4K 283 select CSRC_R4K 284 select SYS_HAS_CPU_MIPS32_R1 285 select SYS_HAS_CPU_MIPS32_R2 286 select SYS_SUPPORTS_BIG_ENDIAN 287 select SYS_SUPPORTS_32BIT_KERNEL 288 select SYS_SUPPORTS_MIPS16 289 select SYS_SUPPORTS_MULTITHREADING 290 select SYS_HAS_EARLY_PRINTK 291 select ARCH_REQUIRE_GPIOLIB 292 select SWAP_IO_SPACE 293 select BOOT_RAW 294 select HAVE_MACH_CLKDEV 295 select CLKDEV_LOOKUP 296 select USE_OF 297 select PINCTRL 298 select PINCTRL_LANTIQ 299 select ARCH_HAS_RESET_CONTROLLER 300 select RESET_CONTROLLER 301 302config LASAT 303 bool "LASAT Networks platforms" 304 select CEVT_R4K 305 select CRC32 306 select CSRC_R4K 307 select DMA_NONCOHERENT 308 select SYS_HAS_EARLY_PRINTK 309 select HW_HAS_PCI 310 select IRQ_CPU 311 select PCI_GT64XXX_PCI0 312 select MIPS_NILE4 313 select R5000_CPU_SCACHE 314 select SYS_HAS_CPU_R5000 315 select SYS_SUPPORTS_32BIT_KERNEL 316 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN 317 select SYS_SUPPORTS_LITTLE_ENDIAN 318 319config MACH_LOONGSON 320 bool "Loongson family of machines" 321 select SYS_SUPPORTS_ZBOOT 322 help 323 This enables the support of Loongson family of machines. 324 325 Loongson is a family of general-purpose MIPS-compatible CPUs. 326 developed at Institute of Computing Technology (ICT), 327 Chinese Academy of Sciences (CAS) in the People's Republic 328 of China. The chief architect is Professor Weiwu Hu. 329 330config MACH_LOONGSON1 331 bool "Loongson 1 family of machines" 332 select SYS_SUPPORTS_ZBOOT 333 help 334 This enables support for the Loongson 1 based machines. 335 336 Loongson 1 is a family of 32-bit MIPS-compatible SoCs developed by 337 the ICT (Institute of Computing Technology) and the Chinese Academy 338 of Sciences. 339 340config MIPS_MALTA 341 bool "MIPS Malta board" 342 select ARCH_MAY_HAVE_PC_FDC 343 select BOOT_ELF32 344 select BOOT_RAW 345 select CEVT_R4K 346 select CSRC_R4K 347 select CLKSRC_MIPS_GIC 348 select DMA_MAYBE_COHERENT 349 select GENERIC_ISA_DMA 350 select HAVE_PCSPKR_PLATFORM 351 select IRQ_CPU 352 select MIPS_GIC 353 select HW_HAS_PCI 354 select I8253 355 select I8259 356 select MIPS_BONITO64 357 select MIPS_CPU_SCACHE 358 select MIPS_L1_CACHE_SHIFT_6 359 select PCI_GT64XXX_PCI0 360 select MIPS_MSC 361 select SWAP_IO_SPACE 362 select SYS_HAS_CPU_MIPS32_R1 363 select SYS_HAS_CPU_MIPS32_R2 364 select SYS_HAS_CPU_MIPS32_R3_5 365 select SYS_HAS_CPU_MIPS64_R1 366 select SYS_HAS_CPU_MIPS64_R2 367 select SYS_HAS_CPU_NEVADA 368 select SYS_HAS_CPU_RM7000 369 select SYS_SUPPORTS_32BIT_KERNEL 370 select SYS_SUPPORTS_64BIT_KERNEL 371 select SYS_SUPPORTS_BIG_ENDIAN 372 select SYS_SUPPORTS_LITTLE_ENDIAN 373 select SYS_SUPPORTS_MIPS_CMP 374 select SYS_SUPPORTS_MIPS_CPS 375 select SYS_SUPPORTS_MIPS16 376 select SYS_SUPPORTS_MULTITHREADING 377 select SYS_SUPPORTS_SMARTMIPS 378 select SYS_SUPPORTS_ZBOOT 379 help 380 This enables support for the MIPS Technologies Malta evaluation 381 board. 382 383config MIPS_SEAD3 384 bool "MIPS SEAD3 board" 385 select BOOT_ELF32 386 select BOOT_RAW 387 select BUILTIN_DTB 388 select CEVT_R4K 389 select CSRC_R4K 390 select CLKSRC_MIPS_GIC 391 select CPU_MIPSR2_IRQ_VI 392 select CPU_MIPSR2_IRQ_EI 393 select DMA_NONCOHERENT 394 select IRQ_CPU 395 select MIPS_GIC 396 select LIBFDT 397 select MIPS_MSC 398 select SYS_HAS_CPU_MIPS32_R1 399 select SYS_HAS_CPU_MIPS32_R2 400 select SYS_HAS_CPU_MIPS64_R1 401 select SYS_HAS_EARLY_PRINTK 402 select SYS_SUPPORTS_32BIT_KERNEL 403 select SYS_SUPPORTS_64BIT_KERNEL 404 select SYS_SUPPORTS_BIG_ENDIAN 405 select SYS_SUPPORTS_LITTLE_ENDIAN 406 select SYS_SUPPORTS_SMARTMIPS 407 select SYS_SUPPORTS_MICROMIPS 408 select SYS_SUPPORTS_MIPS16 409 select USB_EHCI_BIG_ENDIAN_DESC 410 select USB_EHCI_BIG_ENDIAN_MMIO 411 select USE_OF 412 help 413 This enables support for the MIPS Technologies SEAD3 evaluation 414 board. 415 416config NEC_MARKEINS 417 bool "NEC EMMA2RH Mark-eins board" 418 select SOC_EMMA2RH 419 select HW_HAS_PCI 420 help 421 This enables support for the NEC Electronics Mark-eins boards. 422 423config MACH_VR41XX 424 bool "NEC VR4100 series based machines" 425 select CEVT_R4K 426 select CSRC_R4K 427 select SYS_HAS_CPU_VR41XX 428 select SYS_SUPPORTS_MIPS16 429 select ARCH_REQUIRE_GPIOLIB 430 431config NXP_STB220 432 bool "NXP STB220 board" 433 select SOC_PNX833X 434 help 435 Support for NXP Semiconductors STB220 Development Board. 436 437config NXP_STB225 438 bool "NXP 225 board" 439 select SOC_PNX833X 440 select SOC_PNX8335 441 help 442 Support for NXP Semiconductors STB225 Development Board. 443 444config PMC_MSP 445 bool "PMC-Sierra MSP chipsets" 446 select CEVT_R4K 447 select CSRC_R4K 448 select DMA_NONCOHERENT 449 select SWAP_IO_SPACE 450 select NO_EXCEPT_FILL 451 select BOOT_RAW 452 select SYS_HAS_CPU_MIPS32_R1 453 select SYS_HAS_CPU_MIPS32_R2 454 select SYS_SUPPORTS_32BIT_KERNEL 455 select SYS_SUPPORTS_BIG_ENDIAN 456 select SYS_SUPPORTS_MIPS16 457 select IRQ_CPU 458 select SERIAL_8250 459 select SERIAL_8250_CONSOLE 460 select USB_EHCI_BIG_ENDIAN_MMIO 461 select USB_EHCI_BIG_ENDIAN_DESC 462 help 463 This adds support for the PMC-Sierra family of Multi-Service 464 Processor System-On-A-Chips. These parts include a number 465 of integrated peripherals, interfaces and DSPs in addition to 466 a variety of MIPS cores. 467 468config RALINK 469 bool "Ralink based machines" 470 select CEVT_R4K 471 select CSRC_R4K 472 select BOOT_RAW 473 select DMA_NONCOHERENT 474 select IRQ_CPU 475 select USE_OF 476 select SYS_HAS_CPU_MIPS32_R1 477 select SYS_HAS_CPU_MIPS32_R2 478 select SYS_SUPPORTS_32BIT_KERNEL 479 select SYS_SUPPORTS_LITTLE_ENDIAN 480 select SYS_SUPPORTS_MIPS16 481 select SYS_HAS_EARLY_PRINTK 482 select HAVE_MACH_CLKDEV 483 select CLKDEV_LOOKUP 484 select ARCH_HAS_RESET_CONTROLLER 485 select RESET_CONTROLLER 486 487config SGI_IP22 488 bool "SGI IP22 (Indy/Indigo2)" 489 select FW_ARC 490 select FW_ARC32 491 select BOOT_ELF32 492 select CEVT_R4K 493 select CSRC_R4K 494 select DEFAULT_SGI_PARTITION 495 select DMA_NONCOHERENT 496 select HW_HAS_EISA 497 select I8253 498 select I8259 499 select IP22_CPU_SCACHE 500 select IRQ_CPU 501 select GENERIC_ISA_DMA_SUPPORT_BROKEN 502 select SGI_HAS_I8042 503 select SGI_HAS_INDYDOG 504 select SGI_HAS_HAL2 505 select SGI_HAS_SEEQ 506 select SGI_HAS_WD93 507 select SGI_HAS_ZILOG 508 select SWAP_IO_SPACE 509 select SYS_HAS_CPU_R4X00 510 select SYS_HAS_CPU_R5000 511 # 512 # Disable EARLY_PRINTK for now since it leads to overwritten prom 513 # memory during early boot on some machines. 514 # 515 # See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com 516 # for a more details discussion 517 # 518 # select SYS_HAS_EARLY_PRINTK 519 select SYS_SUPPORTS_32BIT_KERNEL 520 select SYS_SUPPORTS_64BIT_KERNEL 521 select SYS_SUPPORTS_BIG_ENDIAN 522 select MIPS_L1_CACHE_SHIFT_7 523 help 524 This are the SGI Indy, Challenge S and Indigo2, as well as certain 525 OEM variants like the Tandem CMN B006S. To compile a Linux kernel 526 that runs on these, say Y here. 527 528config SGI_IP27 529 bool "SGI IP27 (Origin200/2000)" 530 select FW_ARC 531 select FW_ARC64 532 select BOOT_ELF64 533 select DEFAULT_SGI_PARTITION 534 select DMA_COHERENT 535 select SYS_HAS_EARLY_PRINTK 536 select HW_HAS_PCI 537 select NR_CPUS_DEFAULT_64 538 select SYS_HAS_CPU_R10000 539 select SYS_SUPPORTS_64BIT_KERNEL 540 select SYS_SUPPORTS_BIG_ENDIAN 541 select SYS_SUPPORTS_NUMA 542 select SYS_SUPPORTS_SMP 543 select MIPS_L1_CACHE_SHIFT_7 544 help 545 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics 546 workstations. To compile a Linux kernel that runs on these, say Y 547 here. 548 549config SGI_IP28 550 bool "SGI IP28 (Indigo2 R10k)" 551 select FW_ARC 552 select FW_ARC64 553 select BOOT_ELF64 554 select CEVT_R4K 555 select CSRC_R4K 556 select DEFAULT_SGI_PARTITION 557 select DMA_NONCOHERENT 558 select GENERIC_ISA_DMA_SUPPORT_BROKEN 559 select IRQ_CPU 560 select HW_HAS_EISA 561 select I8253 562 select I8259 563 select SGI_HAS_I8042 564 select SGI_HAS_INDYDOG 565 select SGI_HAS_HAL2 566 select SGI_HAS_SEEQ 567 select SGI_HAS_WD93 568 select SGI_HAS_ZILOG 569 select SWAP_IO_SPACE 570 select SYS_HAS_CPU_R10000 571 # 572 # Disable EARLY_PRINTK for now since it leads to overwritten prom 573 # memory during early boot on some machines. 574 # 575 # See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com 576 # for a more details discussion 577 # 578 # select SYS_HAS_EARLY_PRINTK 579 select SYS_SUPPORTS_64BIT_KERNEL 580 select SYS_SUPPORTS_BIG_ENDIAN 581 select MIPS_L1_CACHE_SHIFT_7 582 help 583 This is the SGI Indigo2 with R10000 processor. To compile a Linux 584 kernel that runs on these, say Y here. 585 586config SGI_IP32 587 bool "SGI IP32 (O2)" 588 select FW_ARC 589 select FW_ARC32 590 select BOOT_ELF32 591 select CEVT_R4K 592 select CSRC_R4K 593 select DMA_NONCOHERENT 594 select HW_HAS_PCI 595 select IRQ_CPU 596 select R5000_CPU_SCACHE 597 select RM7000_CPU_SCACHE 598 select SYS_HAS_CPU_R5000 599 select SYS_HAS_CPU_R10000 if BROKEN 600 select SYS_HAS_CPU_RM7000 601 select SYS_HAS_CPU_NEVADA 602 select SYS_SUPPORTS_64BIT_KERNEL 603 select SYS_SUPPORTS_BIG_ENDIAN 604 help 605 If you want this kernel to run on SGI O2 workstation, say Y here. 606 607config SIBYTE_CRHINE 608 bool "Sibyte BCM91120C-CRhine" 609 select BOOT_ELF32 610 select DMA_COHERENT 611 select SIBYTE_BCM1120 612 select SWAP_IO_SPACE 613 select SYS_HAS_CPU_SB1 614 select SYS_SUPPORTS_BIG_ENDIAN 615 select SYS_SUPPORTS_LITTLE_ENDIAN 616 617config SIBYTE_CARMEL 618 bool "Sibyte BCM91120x-Carmel" 619 select BOOT_ELF32 620 select DMA_COHERENT 621 select SIBYTE_BCM1120 622 select SWAP_IO_SPACE 623 select SYS_HAS_CPU_SB1 624 select SYS_SUPPORTS_BIG_ENDIAN 625 select SYS_SUPPORTS_LITTLE_ENDIAN 626 627config SIBYTE_CRHONE 628 bool "Sibyte BCM91125C-CRhone" 629 select BOOT_ELF32 630 select DMA_COHERENT 631 select SIBYTE_BCM1125 632 select SWAP_IO_SPACE 633 select SYS_HAS_CPU_SB1 634 select SYS_SUPPORTS_BIG_ENDIAN 635 select SYS_SUPPORTS_HIGHMEM 636 select SYS_SUPPORTS_LITTLE_ENDIAN 637 638config SIBYTE_RHONE 639 bool "Sibyte BCM91125E-Rhone" 640 select BOOT_ELF32 641 select DMA_COHERENT 642 select SIBYTE_BCM1125H 643 select SWAP_IO_SPACE 644 select SYS_HAS_CPU_SB1 645 select SYS_SUPPORTS_BIG_ENDIAN 646 select SYS_SUPPORTS_LITTLE_ENDIAN 647 648config SIBYTE_SWARM 649 bool "Sibyte BCM91250A-SWARM" 650 select BOOT_ELF32 651 select DMA_COHERENT 652 select HAVE_PATA_PLATFORM 653 select SIBYTE_SB1250 654 select SWAP_IO_SPACE 655 select SYS_HAS_CPU_SB1 656 select SYS_SUPPORTS_BIG_ENDIAN 657 select SYS_SUPPORTS_HIGHMEM 658 select SYS_SUPPORTS_LITTLE_ENDIAN 659 select ZONE_DMA32 if 64BIT 660 661config SIBYTE_LITTLESUR 662 bool "Sibyte BCM91250C2-LittleSur" 663 select BOOT_ELF32 664 select DMA_COHERENT 665 select HAVE_PATA_PLATFORM 666 select SIBYTE_SB1250 667 select SWAP_IO_SPACE 668 select SYS_HAS_CPU_SB1 669 select SYS_SUPPORTS_BIG_ENDIAN 670 select SYS_SUPPORTS_HIGHMEM 671 select SYS_SUPPORTS_LITTLE_ENDIAN 672 673config SIBYTE_SENTOSA 674 bool "Sibyte BCM91250E-Sentosa" 675 select BOOT_ELF32 676 select DMA_COHERENT 677 select SIBYTE_SB1250 678 select SWAP_IO_SPACE 679 select SYS_HAS_CPU_SB1 680 select SYS_SUPPORTS_BIG_ENDIAN 681 select SYS_SUPPORTS_LITTLE_ENDIAN 682 683config SIBYTE_BIGSUR 684 bool "Sibyte BCM91480B-BigSur" 685 select BOOT_ELF32 686 select DMA_COHERENT 687 select NR_CPUS_DEFAULT_4 688 select SIBYTE_BCM1x80 689 select SWAP_IO_SPACE 690 select SYS_HAS_CPU_SB1 691 select SYS_SUPPORTS_BIG_ENDIAN 692 select SYS_SUPPORTS_HIGHMEM 693 select SYS_SUPPORTS_LITTLE_ENDIAN 694 select ZONE_DMA32 if 64BIT 695 696config SNI_RM 697 bool "SNI RM200/300/400" 698 select FW_ARC if CPU_LITTLE_ENDIAN 699 select FW_ARC32 if CPU_LITTLE_ENDIAN 700 select FW_SNIPROM if CPU_BIG_ENDIAN 701 select ARCH_MAY_HAVE_PC_FDC 702 select BOOT_ELF32 703 select CEVT_R4K 704 select CSRC_R4K 705 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN 706 select DMA_NONCOHERENT 707 select GENERIC_ISA_DMA 708 select HAVE_PCSPKR_PLATFORM 709 select HW_HAS_EISA 710 select HW_HAS_PCI 711 select IRQ_CPU 712 select I8253 713 select I8259 714 select ISA 715 select SWAP_IO_SPACE if CPU_BIG_ENDIAN 716 select SYS_HAS_CPU_R4X00 717 select SYS_HAS_CPU_R5000 718 select SYS_HAS_CPU_R10000 719 select R5000_CPU_SCACHE 720 select SYS_HAS_EARLY_PRINTK 721 select SYS_SUPPORTS_32BIT_KERNEL 722 select SYS_SUPPORTS_64BIT_KERNEL 723 select SYS_SUPPORTS_BIG_ENDIAN 724 select SYS_SUPPORTS_HIGHMEM 725 select SYS_SUPPORTS_LITTLE_ENDIAN 726 help 727 The SNI RM200/300/400 are MIPS-based machines manufactured by 728 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid 729 Technology and now in turn merged with Fujitsu. Say Y here to 730 support this machine type. 731 732config MACH_TX39XX 733 bool "Toshiba TX39 series based machines" 734 735config MACH_TX49XX 736 bool "Toshiba TX49 series based machines" 737 738config MIKROTIK_RB532 739 bool "Mikrotik RB532 boards" 740 select CEVT_R4K 741 select CSRC_R4K 742 select DMA_NONCOHERENT 743 select HW_HAS_PCI 744 select IRQ_CPU 745 select SYS_HAS_CPU_MIPS32_R1 746 select SYS_SUPPORTS_32BIT_KERNEL 747 select SYS_SUPPORTS_LITTLE_ENDIAN 748 select SWAP_IO_SPACE 749 select BOOT_RAW 750 select ARCH_REQUIRE_GPIOLIB 751 select MIPS_L1_CACHE_SHIFT_4 752 help 753 Support the Mikrotik(tm) RouterBoard 532 series, 754 based on the IDT RC32434 SoC. 755 756config CAVIUM_OCTEON_SOC 757 bool "Cavium Networks Octeon SoC based boards" 758 select CEVT_R4K 759 select 64BIT_PHYS_ADDR 760 select DMA_COHERENT 761 select SYS_SUPPORTS_64BIT_KERNEL 762 select SYS_SUPPORTS_BIG_ENDIAN 763 select EDAC_SUPPORT 764 select SYS_SUPPORTS_HOTPLUG_CPU 765 select SYS_HAS_EARLY_PRINTK 766 select SYS_HAS_CPU_CAVIUM_OCTEON 767 select SWAP_IO_SPACE 768 select HW_HAS_PCI 769 select ZONE_DMA32 770 select HOLES_IN_ZONE 771 select ARCH_REQUIRE_GPIOLIB 772 select LIBFDT 773 select USE_OF 774 select ARCH_SPARSEMEM_ENABLE 775 select SYS_SUPPORTS_SMP 776 select NR_CPUS_DEFAULT_16 777 select BUILTIN_DTB 778 help 779 This option supports all of the Octeon reference boards from Cavium 780 Networks. It builds a kernel that dynamically determines the Octeon 781 CPU type and supports all known board reference implementations. 782 Some of the supported boards are: 783 EBT3000 784 EBH3000 785 EBH3100 786 Thunder 787 Kodama 788 Hikari 789 Say Y here for most Octeon reference boards. 790 791config NLM_XLR_BOARD 792 bool "Netlogic XLR/XLS based systems" 793 select BOOT_ELF32 794 select NLM_COMMON 795 select SYS_HAS_CPU_XLR 796 select SYS_SUPPORTS_SMP 797 select HW_HAS_PCI 798 select SWAP_IO_SPACE 799 select SYS_SUPPORTS_32BIT_KERNEL 800 select SYS_SUPPORTS_64BIT_KERNEL 801 select 64BIT_PHYS_ADDR 802 select SYS_SUPPORTS_BIG_ENDIAN 803 select SYS_SUPPORTS_HIGHMEM 804 select DMA_COHERENT 805 select NR_CPUS_DEFAULT_32 806 select CEVT_R4K 807 select CSRC_R4K 808 select IRQ_CPU 809 select ZONE_DMA32 if 64BIT 810 select SYNC_R4K 811 select SYS_HAS_EARLY_PRINTK 812 select SYS_SUPPORTS_ZBOOT 813 select SYS_SUPPORTS_ZBOOT_UART16550 814 help 815 Support for systems based on Netlogic XLR and XLS processors. 816 Say Y here if you have a XLR or XLS based board. 817 818config NLM_XLP_BOARD 819 bool "Netlogic XLP based systems" 820 select BOOT_ELF32 821 select NLM_COMMON 822 select SYS_HAS_CPU_XLP 823 select SYS_SUPPORTS_SMP 824 select HW_HAS_PCI 825 select SYS_SUPPORTS_32BIT_KERNEL 826 select SYS_SUPPORTS_64BIT_KERNEL 827 select 64BIT_PHYS_ADDR 828 select SYS_SUPPORTS_BIG_ENDIAN 829 select SYS_SUPPORTS_LITTLE_ENDIAN 830 select SYS_SUPPORTS_HIGHMEM 831 select DMA_COHERENT 832 select NR_CPUS_DEFAULT_32 833 select CEVT_R4K 834 select CSRC_R4K 835 select IRQ_CPU 836 select ZONE_DMA32 if 64BIT 837 select SYNC_R4K 838 select SYS_HAS_EARLY_PRINTK 839 select USE_OF 840 select SYS_SUPPORTS_ZBOOT 841 select SYS_SUPPORTS_ZBOOT_UART16550 842 help 843 This board is based on Netlogic XLP Processor. 844 Say Y here if you have a XLP based board. 845 846config MIPS_PARAVIRT 847 bool "Para-Virtualized guest system" 848 select CEVT_R4K 849 select CSRC_R4K 850 select DMA_COHERENT 851 select SYS_SUPPORTS_64BIT_KERNEL 852 select SYS_SUPPORTS_32BIT_KERNEL 853 select SYS_SUPPORTS_BIG_ENDIAN 854 select SYS_SUPPORTS_SMP 855 select NR_CPUS_DEFAULT_4 856 select SYS_HAS_EARLY_PRINTK 857 select SYS_HAS_CPU_MIPS32_R2 858 select SYS_HAS_CPU_MIPS64_R2 859 select SYS_HAS_CPU_CAVIUM_OCTEON 860 select HW_HAS_PCI 861 select SWAP_IO_SPACE 862 help 863 This option supports guest running under ???? 864 865endchoice 866 867source "arch/mips/alchemy/Kconfig" 868source "arch/mips/ath79/Kconfig" 869source "arch/mips/bcm47xx/Kconfig" 870source "arch/mips/bcm63xx/Kconfig" 871source "arch/mips/jazz/Kconfig" 872source "arch/mips/jz4740/Kconfig" 873source "arch/mips/lantiq/Kconfig" 874source "arch/mips/lasat/Kconfig" 875source "arch/mips/pmcs-msp71xx/Kconfig" 876source "arch/mips/ralink/Kconfig" 877source "arch/mips/sgi-ip27/Kconfig" 878source "arch/mips/sibyte/Kconfig" 879source "arch/mips/txx9/Kconfig" 880source "arch/mips/vr41xx/Kconfig" 881source "arch/mips/cavium-octeon/Kconfig" 882source "arch/mips/loongson/Kconfig" 883source "arch/mips/loongson1/Kconfig" 884source "arch/mips/netlogic/Kconfig" 885source "arch/mips/paravirt/Kconfig" 886 887endmenu 888 889config RWSEM_GENERIC_SPINLOCK 890 bool 891 default y 892 893config RWSEM_XCHGADD_ALGORITHM 894 bool 895 896config ARCH_HAS_ILOG2_U32 897 bool 898 default n 899 900config ARCH_HAS_ILOG2_U64 901 bool 902 default n 903 904config GENERIC_HWEIGHT 905 bool 906 default y 907 908config GENERIC_CALIBRATE_DELAY 909 bool 910 default y 911 912config SCHED_OMIT_FRAME_POINTER 913 bool 914 default y 915 916# 917# Select some configuration options automatically based on user selections. 918# 919config FW_ARC 920 bool 921 922config ARCH_MAY_HAVE_PC_FDC 923 bool 924 925config BOOT_RAW 926 bool 927 928config CEVT_BCM1480 929 bool 930 931config CEVT_DS1287 932 bool 933 934config CEVT_GT641XX 935 bool 936 937config CEVT_R4K 938 bool 939 940config CEVT_SB1250 941 bool 942 943config CEVT_TXX9 944 bool 945 946config CSRC_BCM1480 947 bool 948 949config CSRC_IOASIC 950 bool 951 952config CSRC_R4K 953 bool 954 955config CSRC_SB1250 956 bool 957 958config GPIO_TXX9 959 select ARCH_REQUIRE_GPIOLIB 960 bool 961 962config FW_CFE 963 bool 964 965config ARCH_DMA_ADDR_T_64BIT 966 def_bool (HIGHMEM && 64BIT_PHYS_ADDR) || 64BIT 967 968config DMA_MAYBE_COHERENT 969 select DMA_NONCOHERENT 970 bool 971 972config DMA_COHERENT 973 bool 974 975config DMA_NONCOHERENT 976 bool 977 select NEED_DMA_MAP_STATE 978 979config NEED_DMA_MAP_STATE 980 bool 981 982config SYS_HAS_EARLY_PRINTK 983 bool 984 985config HOTPLUG_CPU 986 bool "Support for hot-pluggable CPUs" 987 depends on SMP && SYS_SUPPORTS_HOTPLUG_CPU 988 help 989 Say Y here to allow turning CPUs off and on. CPUs can be 990 controlled through /sys/devices/system/cpu. 991 (Note: power management support will enable this option 992 automatically on SMP systems. ) 993 Say N if you want to disable CPU hotplug. 994 995config SYS_SUPPORTS_HOTPLUG_CPU 996 bool 997 998config I8259 999 bool 1000 select IRQ_DOMAIN 1001 1002config MIPS_BONITO64 1003 bool 1004 1005config MIPS_MSC 1006 bool 1007 1008config MIPS_NILE4 1009 bool 1010 1011config SYNC_R4K 1012 bool 1013 1014config MIPS_MACHINE 1015 def_bool n 1016 1017config NO_IOPORT_MAP 1018 def_bool n 1019 1020config GENERIC_ISA_DMA 1021 bool 1022 select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n 1023 select ISA_DMA_API 1024 1025config GENERIC_ISA_DMA_SUPPORT_BROKEN 1026 bool 1027 select GENERIC_ISA_DMA 1028 1029config ISA_DMA_API 1030 bool 1031 1032config HOLES_IN_ZONE 1033 bool 1034 1035# 1036# Endianness selection. Sufficiently obscure so many users don't know what to 1037# answer,so we try hard to limit the available choices. Also the use of a 1038# choice statement should be more obvious to the user. 1039# 1040choice 1041 prompt "Endianness selection" 1042 help 1043 Some MIPS machines can be configured for either little or big endian 1044 byte order. These modes require different kernels and a different 1045 Linux distribution. In general there is one preferred byteorder for a 1046 particular system but some systems are just as commonly used in the 1047 one or the other endianness. 1048 1049config CPU_BIG_ENDIAN 1050 bool "Big endian" 1051 depends on SYS_SUPPORTS_BIG_ENDIAN 1052 1053config CPU_LITTLE_ENDIAN 1054 bool "Little endian" 1055 depends on SYS_SUPPORTS_LITTLE_ENDIAN 1056 1057endchoice 1058 1059config EXPORT_UASM 1060 bool 1061 1062config SYS_SUPPORTS_APM_EMULATION 1063 bool 1064 1065config SYS_SUPPORTS_BIG_ENDIAN 1066 bool 1067 1068config SYS_SUPPORTS_LITTLE_ENDIAN 1069 bool 1070 1071config SYS_SUPPORTS_HUGETLBFS 1072 bool 1073 depends on CPU_SUPPORTS_HUGEPAGES && 64BIT 1074 default y 1075 1076config MIPS_HUGE_TLB_SUPPORT 1077 def_bool HUGETLB_PAGE || TRANSPARENT_HUGEPAGE 1078 1079config IRQ_CPU 1080 bool 1081 select IRQ_DOMAIN 1082 1083config IRQ_CPU_RM7K 1084 bool 1085 1086config IRQ_MSP_SLP 1087 bool 1088 1089config IRQ_MSP_CIC 1090 bool 1091 1092config IRQ_TXX9 1093 bool 1094 1095config IRQ_GT641XX 1096 bool 1097 1098config PCI_GT64XXX_PCI0 1099 bool 1100 1101config NO_EXCEPT_FILL 1102 bool 1103 1104config SOC_EMMA2RH 1105 bool 1106 select CEVT_R4K 1107 select CSRC_R4K 1108 select DMA_NONCOHERENT 1109 select IRQ_CPU 1110 select SWAP_IO_SPACE 1111 select SYS_HAS_CPU_R5500 1112 select SYS_SUPPORTS_32BIT_KERNEL 1113 select SYS_SUPPORTS_64BIT_KERNEL 1114 select SYS_SUPPORTS_BIG_ENDIAN 1115 1116config SOC_PNX833X 1117 bool 1118 select CEVT_R4K 1119 select CSRC_R4K 1120 select IRQ_CPU 1121 select DMA_NONCOHERENT 1122 select SYS_HAS_CPU_MIPS32_R2 1123 select SYS_SUPPORTS_32BIT_KERNEL 1124 select SYS_SUPPORTS_LITTLE_ENDIAN 1125 select SYS_SUPPORTS_BIG_ENDIAN 1126 select SYS_SUPPORTS_MIPS16 1127 select CPU_MIPSR2_IRQ_VI 1128 1129config SOC_PNX8335 1130 bool 1131 select SOC_PNX833X 1132 1133config SWAP_IO_SPACE 1134 bool 1135 1136config SGI_HAS_INDYDOG 1137 bool 1138 1139config SGI_HAS_HAL2 1140 bool 1141 1142config SGI_HAS_SEEQ 1143 bool 1144 1145config SGI_HAS_WD93 1146 bool 1147 1148config SGI_HAS_ZILOG 1149 bool 1150 1151config SGI_HAS_I8042 1152 bool 1153 1154config DEFAULT_SGI_PARTITION 1155 bool 1156 1157config FW_ARC32 1158 bool 1159 1160config FW_SNIPROM 1161 bool 1162 1163config BOOT_ELF32 1164 bool 1165 1166config MIPS_L1_CACHE_SHIFT_4 1167 bool 1168 1169config MIPS_L1_CACHE_SHIFT_5 1170 bool 1171 1172config MIPS_L1_CACHE_SHIFT_6 1173 bool 1174 1175config MIPS_L1_CACHE_SHIFT_7 1176 bool 1177 1178config MIPS_L1_CACHE_SHIFT 1179 int 1180 default "4" if MIPS_L1_CACHE_SHIFT_4 1181 default "5" if MIPS_L1_CACHE_SHIFT_5 1182 default "6" if MIPS_L1_CACHE_SHIFT_6 1183 default "7" if MIPS_L1_CACHE_SHIFT_7 1184 default "5" 1185 1186config HAVE_STD_PC_SERIAL_PORT 1187 bool 1188 1189config ARC_CONSOLE 1190 bool "ARC console support" 1191 depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN) 1192 1193config ARC_MEMORY 1194 bool 1195 depends on MACH_JAZZ || SNI_RM || SGI_IP32 1196 default y 1197 1198config ARC_PROMLIB 1199 bool 1200 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP28 || SGI_IP32 1201 default y 1202 1203config FW_ARC64 1204 bool 1205 1206config BOOT_ELF64 1207 bool 1208 1209menu "CPU selection" 1210 1211choice 1212 prompt "CPU type" 1213 default CPU_R4X00 1214 1215config CPU_LOONGSON3 1216 bool "Loongson 3 CPU" 1217 depends on SYS_HAS_CPU_LOONGSON3 1218 select CPU_SUPPORTS_64BIT_KERNEL 1219 select CPU_SUPPORTS_HIGHMEM 1220 select CPU_SUPPORTS_HUGEPAGES 1221 select WEAK_ORDERING 1222 select WEAK_REORDERING_BEYOND_LLSC 1223 help 1224 The Loongson 3 processor implements the MIPS64R2 instruction 1225 set with many extensions. 1226 1227config CPU_LOONGSON2E 1228 bool "Loongson 2E" 1229 depends on SYS_HAS_CPU_LOONGSON2E 1230 select CPU_LOONGSON2 1231 help 1232 The Loongson 2E processor implements the MIPS III instruction set 1233 with many extensions. 1234 1235 It has an internal FPGA northbridge, which is compatible to 1236 bonito64. 1237 1238config CPU_LOONGSON2F 1239 bool "Loongson 2F" 1240 depends on SYS_HAS_CPU_LOONGSON2F 1241 select CPU_LOONGSON2 1242 select ARCH_REQUIRE_GPIOLIB 1243 help 1244 The Loongson 2F processor implements the MIPS III instruction set 1245 with many extensions. 1246 1247 Loongson2F have built-in DDR2 and PCIX controller. The PCIX controller 1248 have a similar programming interface with FPGA northbridge used in 1249 Loongson2E. 1250 1251config CPU_LOONGSON1B 1252 bool "Loongson 1B" 1253 depends on SYS_HAS_CPU_LOONGSON1B 1254 select CPU_LOONGSON1 1255 help 1256 The Loongson 1B is a 32-bit SoC, which implements the MIPS32 1257 release 2 instruction set. 1258 1259config CPU_MIPS32_R1 1260 bool "MIPS32 Release 1" 1261 depends on SYS_HAS_CPU_MIPS32_R1 1262 select CPU_HAS_PREFETCH 1263 select CPU_SUPPORTS_32BIT_KERNEL 1264 select CPU_SUPPORTS_HIGHMEM 1265 help 1266 Choose this option to build a kernel for release 1 or later of the 1267 MIPS32 architecture. Most modern embedded systems with a 32-bit 1268 MIPS processor are based on a MIPS32 processor. If you know the 1269 specific type of processor in your system, choose those that one 1270 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system. 1271 Release 2 of the MIPS32 architecture is available since several 1272 years so chances are you even have a MIPS32 Release 2 processor 1273 in which case you should choose CPU_MIPS32_R2 instead for better 1274 performance. 1275 1276config CPU_MIPS32_R2 1277 bool "MIPS32 Release 2" 1278 depends on SYS_HAS_CPU_MIPS32_R2 1279 select CPU_HAS_PREFETCH 1280 select CPU_SUPPORTS_32BIT_KERNEL 1281 select CPU_SUPPORTS_HIGHMEM 1282 select CPU_SUPPORTS_MSA 1283 select HAVE_KVM 1284 help 1285 Choose this option to build a kernel for release 2 or later of the 1286 MIPS32 architecture. Most modern embedded systems with a 32-bit 1287 MIPS processor are based on a MIPS32 processor. If you know the 1288 specific type of processor in your system, choose those that one 1289 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system. 1290 1291config CPU_MIPS64_R1 1292 bool "MIPS64 Release 1" 1293 depends on SYS_HAS_CPU_MIPS64_R1 1294 select CPU_HAS_PREFETCH 1295 select CPU_SUPPORTS_32BIT_KERNEL 1296 select CPU_SUPPORTS_64BIT_KERNEL 1297 select CPU_SUPPORTS_HIGHMEM 1298 select CPU_SUPPORTS_HUGEPAGES 1299 help 1300 Choose this option to build a kernel for release 1 or later of the 1301 MIPS64 architecture. Many modern embedded systems with a 64-bit 1302 MIPS processor are based on a MIPS64 processor. If you know the 1303 specific type of processor in your system, choose those that one 1304 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system. 1305 Release 2 of the MIPS64 architecture is available since several 1306 years so chances are you even have a MIPS64 Release 2 processor 1307 in which case you should choose CPU_MIPS64_R2 instead for better 1308 performance. 1309 1310config CPU_MIPS64_R2 1311 bool "MIPS64 Release 2" 1312 depends on SYS_HAS_CPU_MIPS64_R2 1313 select CPU_HAS_PREFETCH 1314 select CPU_SUPPORTS_32BIT_KERNEL 1315 select CPU_SUPPORTS_64BIT_KERNEL 1316 select CPU_SUPPORTS_HIGHMEM 1317 select CPU_SUPPORTS_HUGEPAGES 1318 select CPU_SUPPORTS_MSA 1319 help 1320 Choose this option to build a kernel for release 2 or later of the 1321 MIPS64 architecture. Many modern embedded systems with a 64-bit 1322 MIPS processor are based on a MIPS64 processor. If you know the 1323 specific type of processor in your system, choose those that one 1324 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system. 1325 1326config CPU_R3000 1327 bool "R3000" 1328 depends on SYS_HAS_CPU_R3000 1329 select CPU_HAS_WB 1330 select CPU_SUPPORTS_32BIT_KERNEL 1331 select CPU_SUPPORTS_HIGHMEM 1332 help 1333 Please make sure to pick the right CPU type. Linux/MIPS is not 1334 designed to be generic, i.e. Kernels compiled for R3000 CPUs will 1335 *not* work on R4000 machines and vice versa. However, since most 1336 of the supported machines have an R4000 (or similar) CPU, R4x00 1337 might be a safe bet. If the resulting kernel does not work, 1338 try to recompile with R3000. 1339 1340config CPU_TX39XX 1341 bool "R39XX" 1342 depends on SYS_HAS_CPU_TX39XX 1343 select CPU_SUPPORTS_32BIT_KERNEL 1344 1345config CPU_VR41XX 1346 bool "R41xx" 1347 depends on SYS_HAS_CPU_VR41XX 1348 select CPU_SUPPORTS_32BIT_KERNEL 1349 select CPU_SUPPORTS_64BIT_KERNEL 1350 help 1351 The options selects support for the NEC VR4100 series of processors. 1352 Only choose this option if you have one of these processors as a 1353 kernel built with this option will not run on any other type of 1354 processor or vice versa. 1355 1356config CPU_R4300 1357 bool "R4300" 1358 depends on SYS_HAS_CPU_R4300 1359 select CPU_SUPPORTS_32BIT_KERNEL 1360 select CPU_SUPPORTS_64BIT_KERNEL 1361 help 1362 MIPS Technologies R4300-series processors. 1363 1364config CPU_R4X00 1365 bool "R4x00" 1366 depends on SYS_HAS_CPU_R4X00 1367 select CPU_SUPPORTS_32BIT_KERNEL 1368 select CPU_SUPPORTS_64BIT_KERNEL 1369 select CPU_SUPPORTS_HUGEPAGES 1370 help 1371 MIPS Technologies R4000-series processors other than 4300, including 1372 the R4000, R4400, R4600, and 4700. 1373 1374config CPU_TX49XX 1375 bool "R49XX" 1376 depends on SYS_HAS_CPU_TX49XX 1377 select CPU_HAS_PREFETCH 1378 select CPU_SUPPORTS_32BIT_KERNEL 1379 select CPU_SUPPORTS_64BIT_KERNEL 1380 select CPU_SUPPORTS_HUGEPAGES 1381 1382config CPU_R5000 1383 bool "R5000" 1384 depends on SYS_HAS_CPU_R5000 1385 select CPU_SUPPORTS_32BIT_KERNEL 1386 select CPU_SUPPORTS_64BIT_KERNEL 1387 select CPU_SUPPORTS_HUGEPAGES 1388 help 1389 MIPS Technologies R5000-series processors other than the Nevada. 1390 1391config CPU_R5432 1392 bool "R5432" 1393 depends on SYS_HAS_CPU_R5432 1394 select CPU_SUPPORTS_32BIT_KERNEL 1395 select CPU_SUPPORTS_64BIT_KERNEL 1396 select CPU_SUPPORTS_HUGEPAGES 1397 1398config CPU_R5500 1399 bool "R5500" 1400 depends on SYS_HAS_CPU_R5500 1401 select CPU_SUPPORTS_32BIT_KERNEL 1402 select CPU_SUPPORTS_64BIT_KERNEL 1403 select CPU_SUPPORTS_HUGEPAGES 1404 help 1405 NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV 1406 instruction set. 1407 1408config CPU_R6000 1409 bool "R6000" 1410 depends on SYS_HAS_CPU_R6000 1411 select CPU_SUPPORTS_32BIT_KERNEL 1412 help 1413 MIPS Technologies R6000 and R6000A series processors. Note these 1414 processors are extremely rare and the support for them is incomplete. 1415 1416config CPU_NEVADA 1417 bool "RM52xx" 1418 depends on SYS_HAS_CPU_NEVADA 1419 select CPU_SUPPORTS_32BIT_KERNEL 1420 select CPU_SUPPORTS_64BIT_KERNEL 1421 select CPU_SUPPORTS_HUGEPAGES 1422 help 1423 QED / PMC-Sierra RM52xx-series ("Nevada") processors. 1424 1425config CPU_R8000 1426 bool "R8000" 1427 depends on SYS_HAS_CPU_R8000 1428 select CPU_HAS_PREFETCH 1429 select CPU_SUPPORTS_64BIT_KERNEL 1430 help 1431 MIPS Technologies R8000 processors. Note these processors are 1432 uncommon and the support for them is incomplete. 1433 1434config CPU_R10000 1435 bool "R10000" 1436 depends on SYS_HAS_CPU_R10000 1437 select CPU_HAS_PREFETCH 1438 select CPU_SUPPORTS_32BIT_KERNEL 1439 select CPU_SUPPORTS_64BIT_KERNEL 1440 select CPU_SUPPORTS_HIGHMEM 1441 select CPU_SUPPORTS_HUGEPAGES 1442 help 1443 MIPS Technologies R10000-series processors. 1444 1445config CPU_RM7000 1446 bool "RM7000" 1447 depends on SYS_HAS_CPU_RM7000 1448 select CPU_HAS_PREFETCH 1449 select CPU_SUPPORTS_32BIT_KERNEL 1450 select CPU_SUPPORTS_64BIT_KERNEL 1451 select CPU_SUPPORTS_HIGHMEM 1452 select CPU_SUPPORTS_HUGEPAGES 1453 1454config CPU_SB1 1455 bool "SB1" 1456 depends on SYS_HAS_CPU_SB1 1457 select CPU_SUPPORTS_32BIT_KERNEL 1458 select CPU_SUPPORTS_64BIT_KERNEL 1459 select CPU_SUPPORTS_HIGHMEM 1460 select CPU_SUPPORTS_HUGEPAGES 1461 select WEAK_ORDERING 1462 1463config CPU_CAVIUM_OCTEON 1464 bool "Cavium Octeon processor" 1465 depends on SYS_HAS_CPU_CAVIUM_OCTEON 1466 select CPU_HAS_PREFETCH 1467 select CPU_SUPPORTS_64BIT_KERNEL 1468 select WEAK_ORDERING 1469 select CPU_SUPPORTS_HIGHMEM 1470 select CPU_SUPPORTS_HUGEPAGES 1471 select USB_EHCI_BIG_ENDIAN_MMIO 1472 select MIPS_L1_CACHE_SHIFT_7 1473 help 1474 The Cavium Octeon processor is a highly integrated chip containing 1475 many ethernet hardware widgets for networking tasks. The processor 1476 can have up to 16 Mips64v2 cores and 8 integrated gigabit ethernets. 1477 Full details can be found at http://www.caviumnetworks.com. 1478 1479config CPU_BMIPS 1480 bool "Broadcom BMIPS" 1481 depends on SYS_HAS_CPU_BMIPS 1482 select CPU_MIPS32 1483 select CPU_BMIPS32_3300 if SYS_HAS_CPU_BMIPS32_3300 1484 select CPU_BMIPS4350 if SYS_HAS_CPU_BMIPS4350 1485 select CPU_BMIPS4380 if SYS_HAS_CPU_BMIPS4380 1486 select CPU_BMIPS5000 if SYS_HAS_CPU_BMIPS5000 1487 select CPU_SUPPORTS_32BIT_KERNEL 1488 select DMA_NONCOHERENT 1489 select IRQ_CPU 1490 select SWAP_IO_SPACE 1491 select WEAK_ORDERING 1492 select CPU_SUPPORTS_HIGHMEM 1493 select CPU_HAS_PREFETCH 1494 help 1495 Support for BMIPS32/3300/4350/4380 and BMIPS5000 processors. 1496 1497config CPU_XLR 1498 bool "Netlogic XLR SoC" 1499 depends on SYS_HAS_CPU_XLR 1500 select CPU_SUPPORTS_32BIT_KERNEL 1501 select CPU_SUPPORTS_64BIT_KERNEL 1502 select CPU_SUPPORTS_HIGHMEM 1503 select CPU_SUPPORTS_HUGEPAGES 1504 select WEAK_ORDERING 1505 select WEAK_REORDERING_BEYOND_LLSC 1506 help 1507 Netlogic Microsystems XLR/XLS processors. 1508 1509config CPU_XLP 1510 bool "Netlogic XLP SoC" 1511 depends on SYS_HAS_CPU_XLP 1512 select CPU_SUPPORTS_32BIT_KERNEL 1513 select CPU_SUPPORTS_64BIT_KERNEL 1514 select CPU_SUPPORTS_HIGHMEM 1515 select WEAK_ORDERING 1516 select WEAK_REORDERING_BEYOND_LLSC 1517 select CPU_HAS_PREFETCH 1518 select CPU_MIPSR2 1519 help 1520 Netlogic Microsystems XLP processors. 1521endchoice 1522 1523config CPU_MIPS32_3_5_FEATURES 1524 bool "MIPS32 Release 3.5 Features" 1525 depends on SYS_HAS_CPU_MIPS32_R3_5 1526 depends on CPU_MIPS32_R2 1527 help 1528 Choose this option to build a kernel for release 2 or later of the 1529 MIPS32 architecture including features from the 3.5 release such as 1530 support for Enhanced Virtual Addressing (EVA). 1531 1532config CPU_MIPS32_3_5_EVA 1533 bool "Enhanced Virtual Addressing (EVA)" 1534 depends on CPU_MIPS32_3_5_FEATURES 1535 select EVA 1536 default y 1537 help 1538 Choose this option if you want to enable the Enhanced Virtual 1539 Addressing (EVA) on your MIPS32 core (such as proAptiv). 1540 One of its primary benefits is an increase in the maximum size 1541 of lowmem (up to 3GB). If unsure, say 'N' here. 1542 1543if CPU_LOONGSON2F 1544config CPU_NOP_WORKAROUNDS 1545 bool 1546 1547config CPU_JUMP_WORKAROUNDS 1548 bool 1549 1550config CPU_LOONGSON2F_WORKAROUNDS 1551 bool "Loongson 2F Workarounds" 1552 default y 1553 select CPU_NOP_WORKAROUNDS 1554 select CPU_JUMP_WORKAROUNDS 1555 help 1556 Loongson 2F01 / 2F02 processors have the NOP & JUMP issues which 1557 require workarounds. Without workarounds the system may hang 1558 unexpectedly. For more information please refer to the gas 1559 -mfix-loongson2f-nop and -mfix-loongson2f-jump options. 1560 1561 Loongson 2F03 and later have fixed these issues and no workarounds 1562 are needed. The workarounds have no significant side effect on them 1563 but may decrease the performance of the system so this option should 1564 be disabled unless the kernel is intended to be run on 2F01 or 2F02 1565 systems. 1566 1567 If unsure, please say Y. 1568endif # CPU_LOONGSON2F 1569 1570config SYS_SUPPORTS_ZBOOT 1571 bool 1572 select HAVE_KERNEL_GZIP 1573 select HAVE_KERNEL_BZIP2 1574 select HAVE_KERNEL_LZ4 1575 select HAVE_KERNEL_LZMA 1576 select HAVE_KERNEL_LZO 1577 select HAVE_KERNEL_XZ 1578 1579config SYS_SUPPORTS_ZBOOT_UART16550 1580 bool 1581 select SYS_SUPPORTS_ZBOOT 1582 1583config CPU_LOONGSON2 1584 bool 1585 select CPU_SUPPORTS_32BIT_KERNEL 1586 select CPU_SUPPORTS_64BIT_KERNEL 1587 select CPU_SUPPORTS_HIGHMEM 1588 select CPU_SUPPORTS_HUGEPAGES 1589 1590config CPU_LOONGSON1 1591 bool 1592 select CPU_MIPS32 1593 select CPU_MIPSR2 1594 select CPU_HAS_PREFETCH 1595 select CPU_SUPPORTS_32BIT_KERNEL 1596 select CPU_SUPPORTS_HIGHMEM 1597 select CPU_SUPPORTS_CPUFREQ 1598 1599config CPU_BMIPS32_3300 1600 select SMP_UP if SMP 1601 bool 1602 1603config CPU_BMIPS4350 1604 bool 1605 select SYS_SUPPORTS_SMP 1606 select SYS_SUPPORTS_HOTPLUG_CPU 1607 1608config CPU_BMIPS4380 1609 bool 1610 select MIPS_L1_CACHE_SHIFT_6 1611 select SYS_SUPPORTS_SMP 1612 select SYS_SUPPORTS_HOTPLUG_CPU 1613 1614config CPU_BMIPS5000 1615 bool 1616 select MIPS_CPU_SCACHE 1617 select MIPS_L1_CACHE_SHIFT_7 1618 select SYS_SUPPORTS_SMP 1619 select SYS_SUPPORTS_HOTPLUG_CPU 1620 1621config SYS_HAS_CPU_LOONGSON3 1622 bool 1623 select CPU_SUPPORTS_CPUFREQ 1624 1625config SYS_HAS_CPU_LOONGSON2E 1626 bool 1627 1628config SYS_HAS_CPU_LOONGSON2F 1629 bool 1630 select CPU_SUPPORTS_CPUFREQ 1631 select CPU_SUPPORTS_ADDRWINCFG if 64BIT 1632 select CPU_SUPPORTS_UNCACHED_ACCELERATED 1633 1634config SYS_HAS_CPU_LOONGSON1B 1635 bool 1636 1637config SYS_HAS_CPU_MIPS32_R1 1638 bool 1639 1640config SYS_HAS_CPU_MIPS32_R2 1641 bool 1642 1643config SYS_HAS_CPU_MIPS32_R3_5 1644 bool 1645 1646config SYS_HAS_CPU_MIPS64_R1 1647 bool 1648 1649config SYS_HAS_CPU_MIPS64_R2 1650 bool 1651 1652config SYS_HAS_CPU_R3000 1653 bool 1654 1655config SYS_HAS_CPU_TX39XX 1656 bool 1657 1658config SYS_HAS_CPU_VR41XX 1659 bool 1660 1661config SYS_HAS_CPU_R4300 1662 bool 1663 1664config SYS_HAS_CPU_R4X00 1665 bool 1666 1667config SYS_HAS_CPU_TX49XX 1668 bool 1669 1670config SYS_HAS_CPU_R5000 1671 bool 1672 1673config SYS_HAS_CPU_R5432 1674 bool 1675 1676config SYS_HAS_CPU_R5500 1677 bool 1678 1679config SYS_HAS_CPU_R6000 1680 bool 1681 1682config SYS_HAS_CPU_NEVADA 1683 bool 1684 1685config SYS_HAS_CPU_R8000 1686 bool 1687 1688config SYS_HAS_CPU_R10000 1689 bool 1690 1691config SYS_HAS_CPU_RM7000 1692 bool 1693 1694config SYS_HAS_CPU_SB1 1695 bool 1696 1697config SYS_HAS_CPU_CAVIUM_OCTEON 1698 bool 1699 1700config SYS_HAS_CPU_BMIPS 1701 bool 1702 1703config SYS_HAS_CPU_BMIPS32_3300 1704 bool 1705 select SYS_HAS_CPU_BMIPS 1706 1707config SYS_HAS_CPU_BMIPS4350 1708 bool 1709 select SYS_HAS_CPU_BMIPS 1710 1711config SYS_HAS_CPU_BMIPS4380 1712 bool 1713 select SYS_HAS_CPU_BMIPS 1714 1715config SYS_HAS_CPU_BMIPS5000 1716 bool 1717 select SYS_HAS_CPU_BMIPS 1718 1719config SYS_HAS_CPU_XLR 1720 bool 1721 1722config SYS_HAS_CPU_XLP 1723 bool 1724 1725config MIPS_MALTA_PM 1726 depends on MIPS_MALTA 1727 depends on PCI 1728 bool 1729 default y 1730 1731# 1732# CPU may reorder R->R, R->W, W->R, W->W 1733# Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC 1734# 1735config WEAK_ORDERING 1736 bool 1737 1738# 1739# CPU may reorder reads and writes beyond LL/SC 1740# CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC 1741# 1742config WEAK_REORDERING_BEYOND_LLSC 1743 bool 1744endmenu 1745 1746# 1747# These two indicate any level of the MIPS32 and MIPS64 architecture 1748# 1749config CPU_MIPS32 1750 bool 1751 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2 1752 1753config CPU_MIPS64 1754 bool 1755 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 1756 1757# 1758# These two indicate the revision of the architecture, either Release 1 or Release 2 1759# 1760config CPU_MIPSR1 1761 bool 1762 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1 1763 1764config CPU_MIPSR2 1765 bool 1766 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 || CPU_CAVIUM_OCTEON 1767 1768config EVA 1769 bool 1770 1771config SYS_SUPPORTS_32BIT_KERNEL 1772 bool 1773config SYS_SUPPORTS_64BIT_KERNEL 1774 bool 1775config CPU_SUPPORTS_32BIT_KERNEL 1776 bool 1777config CPU_SUPPORTS_64BIT_KERNEL 1778 bool 1779config CPU_SUPPORTS_CPUFREQ 1780 bool 1781config CPU_SUPPORTS_ADDRWINCFG 1782 bool 1783config CPU_SUPPORTS_HUGEPAGES 1784 bool 1785config CPU_SUPPORTS_UNCACHED_ACCELERATED 1786 bool 1787config MIPS_PGD_C0_CONTEXT 1788 bool 1789 default y if 64BIT && CPU_MIPSR2 && !CPU_XLP 1790 1791# 1792# Set to y for ptrace access to watch registers. 1793# 1794config HARDWARE_WATCHPOINTS 1795 bool 1796 default y if CPU_MIPSR1 || CPU_MIPSR2 1797 1798menu "Kernel type" 1799 1800choice 1801 prompt "Kernel code model" 1802 help 1803 You should only select this option if you have a workload that 1804 actually benefits from 64-bit processing or if your machine has 1805 large memory. You will only be presented a single option in this 1806 menu if your system does not support both 32-bit and 64-bit kernels. 1807 1808config 32BIT 1809 bool "32-bit kernel" 1810 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL 1811 select TRAD_SIGNALS 1812 help 1813 Select this option if you want to build a 32-bit kernel. 1814config 64BIT 1815 bool "64-bit kernel" 1816 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL 1817 help 1818 Select this option if you want to build a 64-bit kernel. 1819 1820endchoice 1821 1822config KVM_GUEST 1823 bool "KVM Guest Kernel" 1824 depends on BROKEN_ON_SMP 1825 help 1826 Select this option if building a guest kernel for KVM (Trap & Emulate) mode 1827 1828config KVM_GUEST_TIMER_FREQ 1829 int "Count/Compare Timer Frequency (MHz)" 1830 depends on KVM_GUEST 1831 default 100 1832 help 1833 Set this to non-zero if building a guest kernel for KVM to skip RTC 1834 emulation when determining guest CPU Frequency. Instead, the guest's 1835 timer frequency is specified directly. 1836 1837choice 1838 prompt "Kernel page size" 1839 default PAGE_SIZE_4KB 1840 1841config PAGE_SIZE_4KB 1842 bool "4kB" 1843 depends on !CPU_LOONGSON2 && !CPU_LOONGSON3 1844 help 1845 This option select the standard 4kB Linux page size. On some 1846 R3000-family processors this is the only available page size. Using 1847 4kB page size will minimize memory consumption and is therefore 1848 recommended for low memory systems. 1849 1850config PAGE_SIZE_8KB 1851 bool "8kB" 1852 depends on CPU_R8000 || CPU_CAVIUM_OCTEON 1853 help 1854 Using 8kB page size will result in higher performance kernel at 1855 the price of higher memory consumption. This option is available 1856 only on R8000 and cnMIPS processors. Note that you will need a 1857 suitable Linux distribution to support this. 1858 1859config PAGE_SIZE_16KB 1860 bool "16kB" 1861 depends on !CPU_R3000 && !CPU_TX39XX 1862 help 1863 Using 16kB page size will result in higher performance kernel at 1864 the price of higher memory consumption. This option is available on 1865 all non-R3000 family processors. Note that you will need a suitable 1866 Linux distribution to support this. 1867 1868config PAGE_SIZE_32KB 1869 bool "32kB" 1870 depends on CPU_CAVIUM_OCTEON 1871 help 1872 Using 32kB page size will result in higher performance kernel at 1873 the price of higher memory consumption. This option is available 1874 only on cnMIPS cores. Note that you will need a suitable Linux 1875 distribution to support this. 1876 1877config PAGE_SIZE_64KB 1878 bool "64kB" 1879 depends on !CPU_R3000 && !CPU_TX39XX 1880 help 1881 Using 64kB page size will result in higher performance kernel at 1882 the price of higher memory consumption. This option is available on 1883 all non-R3000 family processor. Not that at the time of this 1884 writing this option is still high experimental. 1885 1886endchoice 1887 1888config FORCE_MAX_ZONEORDER 1889 int "Maximum zone order" 1890 range 14 64 if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_64KB 1891 default "14" if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_64KB 1892 range 13 64 if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_32KB 1893 default "13" if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_32KB 1894 range 12 64 if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_16KB 1895 default "12" if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_16KB 1896 range 11 64 1897 default "11" 1898 help 1899 The kernel memory allocator divides physically contiguous memory 1900 blocks into "zones", where each zone is a power of two number of 1901 pages. This option selects the largest power of two that the kernel 1902 keeps in the memory allocator. If you need to allocate very large 1903 blocks of physically contiguous memory, then you may need to 1904 increase this value. 1905 1906 This config option is actually maximum order plus one. For example, 1907 a value of 11 means that the largest free memory block is 2^10 pages. 1908 1909 The page size is not necessarily 4KB. Keep this in mind 1910 when choosing a value for this option. 1911 1912config BOARD_SCACHE 1913 bool 1914 1915config IP22_CPU_SCACHE 1916 bool 1917 select BOARD_SCACHE 1918 1919# 1920# Support for a MIPS32 / MIPS64 style S-caches 1921# 1922config MIPS_CPU_SCACHE 1923 bool 1924 select BOARD_SCACHE 1925 1926config R5000_CPU_SCACHE 1927 bool 1928 select BOARD_SCACHE 1929 1930config RM7000_CPU_SCACHE 1931 bool 1932 select BOARD_SCACHE 1933 1934config SIBYTE_DMA_PAGEOPS 1935 bool "Use DMA to clear/copy pages" 1936 depends on CPU_SB1 1937 help 1938 Instead of using the CPU to zero and copy pages, use a Data Mover 1939 channel. These DMA channels are otherwise unused by the standard 1940 SiByte Linux port. Seems to give a small performance benefit. 1941 1942config CPU_HAS_PREFETCH 1943 bool 1944 1945config CPU_GENERIC_DUMP_TLB 1946 bool 1947 default y if !(CPU_R3000 || CPU_R6000 || CPU_R8000 || CPU_TX39XX) 1948 1949config CPU_R4K_FPU 1950 bool 1951 default y if !(CPU_R3000 || CPU_R6000 || CPU_TX39XX || CPU_CAVIUM_OCTEON) 1952 1953config CPU_R4K_CACHE_TLB 1954 bool 1955 default y if !(CPU_R3000 || CPU_R8000 || CPU_SB1 || CPU_TX39XX || CPU_CAVIUM_OCTEON) 1956 1957config MIPS_MT_SMP 1958 bool "MIPS MT SMP support (1 TC on each available VPE)" 1959 depends on SYS_SUPPORTS_MULTITHREADING 1960 select CPU_MIPSR2_IRQ_VI 1961 select CPU_MIPSR2_IRQ_EI 1962 select SYNC_R4K 1963 select MIPS_GIC_IPI 1964 select MIPS_MT 1965 select SMP 1966 select SMP_UP 1967 select SYS_SUPPORTS_SMP 1968 select SYS_SUPPORTS_SCHED_SMT 1969 select MIPS_PERF_SHARED_TC_COUNTERS 1970 help 1971 This is a kernel model which is known as SMVP. This is supported 1972 on cores with the MT ASE and uses the available VPEs to implement 1973 virtual processors which supports SMP. This is equivalent to the 1974 Intel Hyperthreading feature. For further information go to 1975 <http://www.imgtec.com/mips/mips-multithreading.asp>. 1976 1977config MIPS_MT 1978 bool 1979 1980config SCHED_SMT 1981 bool "SMT (multithreading) scheduler support" 1982 depends on SYS_SUPPORTS_SCHED_SMT 1983 default n 1984 help 1985 SMT scheduler support improves the CPU scheduler's decision making 1986 when dealing with MIPS MT enabled cores at a cost of slightly 1987 increased overhead in some places. If unsure say N here. 1988 1989config SYS_SUPPORTS_SCHED_SMT 1990 bool 1991 1992config SYS_SUPPORTS_MULTITHREADING 1993 bool 1994 1995config MIPS_MT_FPAFF 1996 bool "Dynamic FPU affinity for FP-intensive threads" 1997 default y 1998 depends on MIPS_MT_SMP 1999 2000config MIPS_VPE_LOADER 2001 bool "VPE loader support." 2002 depends on SYS_SUPPORTS_MULTITHREADING && MODULES 2003 select CPU_MIPSR2_IRQ_VI 2004 select CPU_MIPSR2_IRQ_EI 2005 select MIPS_MT 2006 help 2007 Includes a loader for loading an elf relocatable object 2008 onto another VPE and running it. 2009 2010config MIPS_VPE_LOADER_CMP 2011 bool 2012 default "y" 2013 depends on MIPS_VPE_LOADER && MIPS_CMP 2014 2015config MIPS_VPE_LOADER_MT 2016 bool 2017 default "y" 2018 depends on MIPS_VPE_LOADER && !MIPS_CMP 2019 2020config MIPS_VPE_LOADER_TOM 2021 bool "Load VPE program into memory hidden from linux" 2022 depends on MIPS_VPE_LOADER 2023 default y 2024 help 2025 The loader can use memory that is present but has been hidden from 2026 Linux using the kernel command line option "mem=xxMB". It's up to 2027 you to ensure the amount you put in the option and the space your 2028 program requires is less or equal to the amount physically present. 2029 2030config MIPS_VPE_APSP_API 2031 bool "Enable support for AP/SP API (RTLX)" 2032 depends on MIPS_VPE_LOADER 2033 help 2034 2035config MIPS_VPE_APSP_API_CMP 2036 bool 2037 default "y" 2038 depends on MIPS_VPE_APSP_API && MIPS_CMP 2039 2040config MIPS_VPE_APSP_API_MT 2041 bool 2042 default "y" 2043 depends on MIPS_VPE_APSP_API && !MIPS_CMP 2044 2045config MIPS_CMP 2046 bool "MIPS CMP framework support (DEPRECATED)" 2047 depends on SYS_SUPPORTS_MIPS_CMP 2048 select MIPS_GIC_IPI 2049 select SMP 2050 select SYNC_R4K 2051 select SYS_SUPPORTS_SMP 2052 select WEAK_ORDERING 2053 default n 2054 help 2055 Select this if you are using a bootloader which implements the "CMP 2056 framework" protocol (ie. YAMON) and want your kernel to make use of 2057 its ability to start secondary CPUs. 2058 2059 Unless you have a specific need, you should use CONFIG_MIPS_CPS 2060 instead of this. 2061 2062config MIPS_CPS 2063 bool "MIPS Coherent Processing System support" 2064 depends on SYS_SUPPORTS_MIPS_CPS 2065 select MIPS_CM 2066 select MIPS_CPC 2067 select MIPS_CPS_PM if HOTPLUG_CPU 2068 select MIPS_GIC_IPI 2069 select SMP 2070 select SYNC_R4K if (CEVT_R4K || CSRC_R4K) 2071 select SYS_SUPPORTS_HOTPLUG_CPU 2072 select SYS_SUPPORTS_SMP 2073 select WEAK_ORDERING 2074 help 2075 Select this if you wish to run an SMP kernel across multiple cores 2076 within a MIPS Coherent Processing System. When this option is 2077 enabled the kernel will probe for other cores and boot them with 2078 no external assistance. It is safe to enable this when hardware 2079 support is unavailable. 2080 2081config MIPS_CPS_PM 2082 depends on MIPS_CPS 2083 select MIPS_CPC 2084 bool 2085 2086config MIPS_GIC_IPI 2087 bool 2088 2089config MIPS_CM 2090 bool 2091 2092config MIPS_CPC 2093 bool 2094 2095config SB1_PASS_1_WORKAROUNDS 2096 bool 2097 depends on CPU_SB1_PASS_1 2098 default y 2099 2100config SB1_PASS_2_WORKAROUNDS 2101 bool 2102 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2) 2103 default y 2104 2105config SB1_PASS_2_1_WORKAROUNDS 2106 bool 2107 depends on CPU_SB1 && CPU_SB1_PASS_2 2108 default y 2109 2110 2111config 64BIT_PHYS_ADDR 2112 bool 2113 2114config ARCH_PHYS_ADDR_T_64BIT 2115 def_bool 64BIT_PHYS_ADDR 2116 2117config CPU_HAS_SMARTMIPS 2118 depends on SYS_SUPPORTS_SMARTMIPS 2119 bool "Support for the SmartMIPS ASE" 2120 help 2121 SmartMIPS is a extension of the MIPS32 architecture aimed at 2122 increased security at both hardware and software level for 2123 smartcards. Enabling this option will allow proper use of the 2124 SmartMIPS instructions by Linux applications. However a kernel with 2125 this option will not work on a MIPS core without SmartMIPS core. If 2126 you don't know you probably don't have SmartMIPS and should say N 2127 here. 2128 2129config CPU_MICROMIPS 2130 depends on SYS_SUPPORTS_MICROMIPS 2131 bool "Build kernel using microMIPS ISA" 2132 help 2133 When this option is enabled the kernel will be built using the 2134 microMIPS ISA 2135 2136config CPU_HAS_MSA 2137 bool "Support for the MIPS SIMD Architecture (EXPERIMENTAL)" 2138 depends on CPU_SUPPORTS_MSA 2139 depends on 64BIT || MIPS_O32_FP64_SUPPORT 2140 help 2141 MIPS SIMD Architecture (MSA) introduces 128 bit wide vector registers 2142 and a set of SIMD instructions to operate on them. When this option 2143 is enabled the kernel will support allocating & switching MSA 2144 vector register contexts. If you know that your kernel will only be 2145 running on CPUs which do not support MSA or that your userland will 2146 not be making use of it then you may wish to say N here to reduce 2147 the size & complexity of your kernel. 2148 2149 If unsure, say Y. 2150 2151config CPU_HAS_WB 2152 bool 2153 2154config XKS01 2155 bool 2156 2157# 2158# Vectored interrupt mode is an R2 feature 2159# 2160config CPU_MIPSR2_IRQ_VI 2161 bool 2162 2163# 2164# Extended interrupt mode is an R2 feature 2165# 2166config CPU_MIPSR2_IRQ_EI 2167 bool 2168 2169config CPU_HAS_SYNC 2170 bool 2171 depends on !CPU_R3000 2172 default y 2173 2174# 2175# CPU non-features 2176# 2177config CPU_DADDI_WORKAROUNDS 2178 bool 2179 2180config CPU_R4000_WORKAROUNDS 2181 bool 2182 select CPU_R4400_WORKAROUNDS 2183 2184config CPU_R4400_WORKAROUNDS 2185 bool 2186 2187# 2188# - Highmem only makes sense for the 32-bit kernel. 2189# - The current highmem code will only work properly on physically indexed 2190# caches such as R3000, SB1, R7000 or those that look like they're virtually 2191# indexed such as R4000/R4400 SC and MC versions or R10000. So for the 2192# moment we protect the user and offer the highmem option only on machines 2193# where it's known to be safe. This will not offer highmem on a few systems 2194# such as MIPS32 and MIPS64 CPUs which may have virtual and physically 2195# indexed CPUs but we're playing safe. 2196# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we 2197# know they might have memory configurations that could make use of highmem 2198# support. 2199# 2200config HIGHMEM 2201 bool "High Memory Support" 2202 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM && !CPU_MIPS32_3_5_EVA 2203 2204config CPU_SUPPORTS_HIGHMEM 2205 bool 2206 2207config SYS_SUPPORTS_HIGHMEM 2208 bool 2209 2210config SYS_SUPPORTS_SMARTMIPS 2211 bool 2212 2213config SYS_SUPPORTS_MICROMIPS 2214 bool 2215 2216config SYS_SUPPORTS_MIPS16 2217 bool 2218 help 2219 This option must be set if a kernel might be executed on a MIPS16- 2220 enabled CPU even if MIPS16 is not actually being used. In other 2221 words, it makes the kernel MIPS16-tolerant. 2222 2223config CPU_SUPPORTS_MSA 2224 bool 2225 2226config ARCH_FLATMEM_ENABLE 2227 def_bool y 2228 depends on !NUMA && !CPU_LOONGSON2 2229 2230config ARCH_DISCONTIGMEM_ENABLE 2231 bool 2232 default y if SGI_IP27 2233 help 2234 Say Y to support efficient handling of discontiguous physical memory, 2235 for architectures which are either NUMA (Non-Uniform Memory Access) 2236 or have huge holes in the physical address space for other reasons. 2237 See <file:Documentation/vm/numa> for more. 2238 2239config ARCH_SPARSEMEM_ENABLE 2240 bool 2241 select SPARSEMEM_STATIC 2242 2243config NUMA 2244 bool "NUMA Support" 2245 depends on SYS_SUPPORTS_NUMA 2246 help 2247 Say Y to compile the kernel to support NUMA (Non-Uniform Memory 2248 Access). This option improves performance on systems with more 2249 than two nodes; on two node systems it is generally better to 2250 leave it disabled; on single node systems disable this option 2251 disabled. 2252 2253config SYS_SUPPORTS_NUMA 2254 bool 2255 2256config NODES_SHIFT 2257 int 2258 default "6" 2259 depends on NEED_MULTIPLE_NODES 2260 2261config HW_PERF_EVENTS 2262 bool "Enable hardware performance counter support for perf events" 2263 depends on PERF_EVENTS && OPROFILE=n && (CPU_MIPS32 || CPU_MIPS64 || CPU_R10000 || CPU_SB1 || CPU_CAVIUM_OCTEON || CPU_XLP) 2264 default y 2265 help 2266 Enable hardware performance counter support for perf events. If 2267 disabled, perf events will use software events only. 2268 2269source "mm/Kconfig" 2270 2271config SMP 2272 bool "Multi-Processing support" 2273 depends on SYS_SUPPORTS_SMP 2274 help 2275 This enables support for systems with more than one CPU. If you have 2276 a system with only one CPU, say N. If you have a system with more 2277 than one CPU, say Y. 2278 2279 If you say N here, the kernel will run on uni- and multiprocessor 2280 machines, but will use only one CPU of a multiprocessor machine. If 2281 you say Y here, the kernel will run on many, but not all, 2282 uniprocessor machines. On a uniprocessor machine, the kernel 2283 will run faster if you say N here. 2284 2285 People using multiprocessor machines who say Y here should also say 2286 Y to "Enhanced Real Time Clock Support", below. 2287 2288 See also the SMP-HOWTO available at 2289 <http://www.tldp.org/docs.html#howto>. 2290 2291 If you don't know what to do here, say N. 2292 2293config SMP_UP 2294 bool 2295 2296config SYS_SUPPORTS_MIPS_CMP 2297 bool 2298 2299config SYS_SUPPORTS_MIPS_CPS 2300 bool 2301 2302config SYS_SUPPORTS_SMP 2303 bool 2304 2305config NR_CPUS_DEFAULT_4 2306 bool 2307 2308config NR_CPUS_DEFAULT_8 2309 bool 2310 2311config NR_CPUS_DEFAULT_16 2312 bool 2313 2314config NR_CPUS_DEFAULT_32 2315 bool 2316 2317config NR_CPUS_DEFAULT_64 2318 bool 2319 2320config NR_CPUS 2321 int "Maximum number of CPUs (2-256)" 2322 range 2 256 2323 depends on SMP 2324 default "4" if NR_CPUS_DEFAULT_4 2325 default "8" if NR_CPUS_DEFAULT_8 2326 default "16" if NR_CPUS_DEFAULT_16 2327 default "32" if NR_CPUS_DEFAULT_32 2328 default "64" if NR_CPUS_DEFAULT_64 2329 help 2330 This allows you to specify the maximum number of CPUs which this 2331 kernel will support. The maximum supported value is 32 for 32-bit 2332 kernel and 64 for 64-bit kernels; the minimum value which makes 2333 sense is 1 for Qemu (useful only for kernel debugging purposes) 2334 and 2 for all others. 2335 2336 This is purely to save memory - each supported CPU adds 2337 approximately eight kilobytes to the kernel image. For best 2338 performance should round up your number of processors to the next 2339 power of two. 2340 2341config MIPS_PERF_SHARED_TC_COUNTERS 2342 bool 2343 2344# 2345# Timer Interrupt Frequency Configuration 2346# 2347 2348choice 2349 prompt "Timer frequency" 2350 default HZ_250 2351 help 2352 Allows the configuration of the timer frequency. 2353 2354 config HZ_48 2355 bool "48 HZ" if SYS_SUPPORTS_48HZ || SYS_SUPPORTS_ARBIT_HZ 2356 2357 config HZ_100 2358 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ 2359 2360 config HZ_128 2361 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ 2362 2363 config HZ_250 2364 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ 2365 2366 config HZ_256 2367 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ 2368 2369 config HZ_1000 2370 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ 2371 2372 config HZ_1024 2373 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ 2374 2375endchoice 2376 2377config SYS_SUPPORTS_48HZ 2378 bool 2379 2380config SYS_SUPPORTS_100HZ 2381 bool 2382 2383config SYS_SUPPORTS_128HZ 2384 bool 2385 2386config SYS_SUPPORTS_250HZ 2387 bool 2388 2389config SYS_SUPPORTS_256HZ 2390 bool 2391 2392config SYS_SUPPORTS_1000HZ 2393 bool 2394 2395config SYS_SUPPORTS_1024HZ 2396 bool 2397 2398config SYS_SUPPORTS_ARBIT_HZ 2399 bool 2400 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \ 2401 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \ 2402 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \ 2403 !SYS_SUPPORTS_1024HZ 2404 2405config HZ 2406 int 2407 default 48 if HZ_48 2408 default 100 if HZ_100 2409 default 128 if HZ_128 2410 default 250 if HZ_250 2411 default 256 if HZ_256 2412 default 1000 if HZ_1000 2413 default 1024 if HZ_1024 2414 2415source "kernel/Kconfig.preempt" 2416 2417config KEXEC 2418 bool "Kexec system call" 2419 help 2420 kexec is a system call that implements the ability to shutdown your 2421 current kernel, and to start another kernel. It is like a reboot 2422 but it is independent of the system firmware. And like a reboot 2423 you can start any kernel with it, not just Linux. 2424 2425 The name comes from the similarity to the exec system call. 2426 2427 It is an ongoing process to be certain the hardware in a machine 2428 is properly shutdown, so do not be surprised if this code does not 2429 initially work for you. As of this writing the exact hardware 2430 interface is strongly in flux, so no good recommendation can be 2431 made. 2432 2433config CRASH_DUMP 2434 bool "Kernel crash dumps" 2435 help 2436 Generate crash dump after being started by kexec. 2437 This should be normally only set in special crash dump kernels 2438 which are loaded in the main kernel with kexec-tools into 2439 a specially reserved region and then later executed after 2440 a crash by kdump/kexec. The crash dump kernel must be compiled 2441 to a memory address not used by the main kernel or firmware using 2442 PHYSICAL_START. 2443 2444config PHYSICAL_START 2445 hex "Physical address where the kernel is loaded" 2446 default "0xffffffff84000000" if 64BIT 2447 default "0x84000000" if 32BIT 2448 depends on CRASH_DUMP 2449 help 2450 This gives the CKSEG0 or KSEG0 address where the kernel is loaded. 2451 If you plan to use kernel for capturing the crash dump change 2452 this value to start of the reserved region (the "X" value as 2453 specified in the "crashkernel=YM@XM" command line boot parameter 2454 passed to the panic-ed kernel). 2455 2456config SECCOMP 2457 bool "Enable seccomp to safely compute untrusted bytecode" 2458 depends on PROC_FS 2459 default y 2460 help 2461 This kernel feature is useful for number crunching applications 2462 that may need to compute untrusted bytecode during their 2463 execution. By using pipes or other transports made available to 2464 the process as file descriptors supporting the read/write 2465 syscalls, it's possible to isolate those applications in 2466 their own address space using seccomp. Once seccomp is 2467 enabled via /proc/<pid>/seccomp, it cannot be disabled 2468 and the task is only allowed to execute a few safe syscalls 2469 defined by each seccomp mode. 2470 2471 If unsure, say Y. Only embedded should say N here. 2472 2473config MIPS_O32_FP64_SUPPORT 2474 bool "Support for O32 binaries using 64-bit FP (EXPERIMENTAL)" 2475 depends on 32BIT || MIPS32_O32 2476 help 2477 When this is enabled, the kernel will support use of 64-bit floating 2478 point registers with binaries using the O32 ABI along with the 2479 EF_MIPS_FP64 ELF header flag (typically built with -mfp64). On 2480 32-bit MIPS systems this support is at the cost of increasing the 2481 size and complexity of the compiled FPU emulator. Thus if you are 2482 running a MIPS32 system and know that none of your userland binaries 2483 will require 64-bit floating point, you may wish to reduce the size 2484 of your kernel & potentially improve FP emulation performance by 2485 saying N here. 2486 2487 Although binutils currently supports use of this flag the details 2488 concerning its effect upon the O32 ABI in userland are still being 2489 worked on. In order to avoid userland becoming dependant upon current 2490 behaviour before the details have been finalised, this option should 2491 be considered experimental and only enabled by those working upon 2492 said details. 2493 2494 If unsure, say N. 2495 2496config USE_OF 2497 bool 2498 select OF 2499 select OF_EARLY_FLATTREE 2500 select IRQ_DOMAIN 2501 2502config BUILTIN_DTB 2503 bool 2504 2505endmenu 2506 2507config LOCKDEP_SUPPORT 2508 bool 2509 default y 2510 2511config STACKTRACE_SUPPORT 2512 bool 2513 default y 2514 2515source "init/Kconfig" 2516 2517source "kernel/Kconfig.freezer" 2518 2519menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)" 2520 2521config HW_HAS_EISA 2522 bool 2523config HW_HAS_PCI 2524 bool 2525 2526config PCI 2527 bool "Support for PCI controller" 2528 depends on HW_HAS_PCI 2529 select PCI_DOMAINS 2530 select NO_GENERIC_PCI_IOPORT_MAP 2531 help 2532 Find out whether you have a PCI motherboard. PCI is the name of a 2533 bus system, i.e. the way the CPU talks to the other stuff inside 2534 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI, 2535 say Y, otherwise N. 2536 2537config HT_PCI 2538 bool "Support for HT-linked PCI" 2539 default y 2540 depends on CPU_LOONGSON3 2541 select PCI 2542 select PCI_DOMAINS 2543 help 2544 Loongson family machines use Hyper-Transport bus for inter-core 2545 connection and device connection. The PCI bus is a subordinate 2546 linked at HT. Choose Y for Loongson-3 based machines. 2547 2548config PCI_DOMAINS 2549 bool 2550 2551source "drivers/pci/Kconfig" 2552 2553source "drivers/pci/pcie/Kconfig" 2554 2555# 2556# ISA support is now enabled via select. Too many systems still have the one 2557# or other ISA chip on the board that users don't know about so don't expect 2558# users to choose the right thing ... 2559# 2560config ISA 2561 bool 2562 2563config EISA 2564 bool "EISA support" 2565 depends on HW_HAS_EISA 2566 select ISA 2567 select GENERIC_ISA_DMA 2568 ---help--- 2569 The Extended Industry Standard Architecture (EISA) bus was 2570 developed as an open alternative to the IBM MicroChannel bus. 2571 2572 The EISA bus provided some of the features of the IBM MicroChannel 2573 bus while maintaining backward compatibility with cards made for 2574 the older ISA bus. The EISA bus saw limited use between 1988 and 2575 1995 when it was made obsolete by the PCI bus. 2576 2577 Say Y here if you are building a kernel for an EISA-based machine. 2578 2579 Otherwise, say N. 2580 2581source "drivers/eisa/Kconfig" 2582 2583config TC 2584 bool "TURBOchannel support" 2585 depends on MACH_DECSTATION 2586 help 2587 TURBOchannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS 2588 processors. TURBOchannel programming specifications are available 2589 at: 2590 <ftp://ftp.hp.com/pub/alphaserver/archive/triadd/> 2591 and: 2592 <http://www.computer-refuge.org/classiccmp/ftp.digital.com/pub/DEC/TriAdd/> 2593 Linux driver support status is documented at: 2594 <http://www.linux-mips.org/wiki/DECstation> 2595 2596config MMU 2597 bool 2598 default y 2599 2600config I8253 2601 bool 2602 select CLKSRC_I8253 2603 select CLKEVT_I8253 2604 select MIPS_EXTERNAL_TIMER 2605 2606config ZONE_DMA 2607 bool 2608 2609config ZONE_DMA32 2610 bool 2611 2612source "drivers/pcmcia/Kconfig" 2613 2614source "drivers/pci/hotplug/Kconfig" 2615 2616config RAPIDIO 2617 tristate "RapidIO support" 2618 depends on PCI 2619 default n 2620 help 2621 If you say Y here, the kernel will include drivers and 2622 infrastructure code to support RapidIO interconnect devices. 2623 2624source "drivers/rapidio/Kconfig" 2625 2626endmenu 2627 2628menu "Executable file formats" 2629 2630source "fs/Kconfig.binfmt" 2631 2632config TRAD_SIGNALS 2633 bool 2634 2635config MIPS32_COMPAT 2636 bool "Kernel support for Linux/MIPS 32-bit binary compatibility" 2637 depends on 64BIT 2638 help 2639 Select this option if you want Linux/MIPS 32-bit binary 2640 compatibility. Since all software available for Linux/MIPS is 2641 currently 32-bit you should say Y here. 2642 2643config COMPAT 2644 bool 2645 depends on MIPS32_COMPAT 2646 select ARCH_WANT_OLD_COMPAT_IPC 2647 default y 2648 2649config SYSVIPC_COMPAT 2650 bool 2651 depends on COMPAT && SYSVIPC 2652 default y 2653 2654config MIPS32_O32 2655 bool "Kernel support for o32 binaries" 2656 depends on MIPS32_COMPAT 2657 help 2658 Select this option if you want to run o32 binaries. These are pure 2659 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of 2660 existing binaries are in this format. 2661 2662 If unsure, say Y. 2663 2664config MIPS32_N32 2665 bool "Kernel support for n32 binaries" 2666 depends on MIPS32_COMPAT 2667 help 2668 Select this option if you want to run n32 binaries. These are 2669 64-bit binaries using 32-bit quantities for addressing and certain 2670 data that would normally be 64-bit. They are used in special 2671 cases. 2672 2673 If unsure, say N. 2674 2675config BINFMT_ELF32 2676 bool 2677 default y if MIPS32_O32 || MIPS32_N32 2678 2679endmenu 2680 2681menu "Power management options" 2682 2683config ARCH_HIBERNATION_POSSIBLE 2684 def_bool y 2685 depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP 2686 2687config ARCH_SUSPEND_POSSIBLE 2688 def_bool y 2689 depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP 2690 2691source "kernel/power/Kconfig" 2692 2693endmenu 2694 2695config MIPS_EXTERNAL_TIMER 2696 bool 2697 2698menu "CPU Power Management" 2699 2700if CPU_SUPPORTS_CPUFREQ && MIPS_EXTERNAL_TIMER 2701source "drivers/cpufreq/Kconfig" 2702endif 2703 2704source "drivers/cpuidle/Kconfig" 2705 2706endmenu 2707 2708source "net/Kconfig" 2709 2710source "drivers/Kconfig" 2711 2712source "drivers/firmware/Kconfig" 2713 2714source "fs/Kconfig" 2715 2716source "arch/mips/Kconfig.debug" 2717 2718source "security/Kconfig" 2719 2720source "crypto/Kconfig" 2721 2722source "lib/Kconfig" 2723 2724source "arch/mips/kvm/Kconfig" 2725