1config MIPS 2 bool 3 default y 4 # Horrible source of confusion. Die, die, die ... 5 select EMBEDDED 6 select RTC_LIB 7 8mainmenu "Linux/MIPS Kernel Configuration" 9 10menu "Machine selection" 11 12config ZONE_DMA 13 bool 14 15choice 16 prompt "System type" 17 default SGI_IP22 18 19config MACH_ALCHEMY 20 bool "Alchemy processor based machines" 21 22config BASLER_EXCITE 23 bool "Basler eXcite smart camera" 24 select CEVT_R4K 25 select CSRC_R4K 26 select DMA_COHERENT 27 select HW_HAS_PCI 28 select IRQ_CPU 29 select IRQ_CPU_RM7K 30 select IRQ_CPU_RM9K 31 select MIPS_RM9122 32 select SYS_HAS_CPU_RM9000 33 select SYS_SUPPORTS_32BIT_KERNEL 34 select SYS_SUPPORTS_BIG_ENDIAN 35 select SYS_SUPPORTS_KGDB 36 help 37 The eXcite is a smart camera platform manufactured by 38 Basler Vision Technologies AG. 39 40config BASLER_EXCITE_PROTOTYPE 41 bool "Support for pre-release units" 42 depends on BASLER_EXCITE 43 default n 44 help 45 Pre-series (prototype) units are different from later ones in 46 some ways. Select this option if you have one of these. Please 47 note that a kernel built with this option selected will not be 48 able to run on normal units. 49 50config BCM47XX 51 bool "BCM47XX based boards" 52 select CEVT_R4K 53 select CSRC_R4K 54 select DMA_NONCOHERENT 55 select HW_HAS_PCI 56 select IRQ_CPU 57 select SYS_HAS_CPU_MIPS32_R1 58 select SYS_SUPPORTS_32BIT_KERNEL 59 select SYS_SUPPORTS_LITTLE_ENDIAN 60 select SSB 61 select SSB_DRIVER_MIPS 62 select SSB_DRIVER_EXTIF 63 select SSB_PCICORE_HOSTMODE if PCI 64 select GENERIC_GPIO 65 select SYS_HAS_EARLY_PRINTK 66 select CFE 67 help 68 Support for BCM47XX based boards 69 70config MIPS_COBALT 71 bool "Cobalt Server" 72 select CEVT_R4K 73 select CSRC_R4K 74 select CEVT_GT641XX 75 select DMA_NONCOHERENT 76 select HW_HAS_PCI 77 select I8253 78 select I8259 79 select IRQ_CPU 80 select IRQ_GT641XX 81 select PCI_GT64XXX_PCI0 82 select SYS_HAS_CPU_NEVADA 83 select SYS_HAS_EARLY_PRINTK 84 select SYS_SUPPORTS_32BIT_KERNEL 85 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL 86 select SYS_SUPPORTS_LITTLE_ENDIAN 87 select GENERIC_HARDIRQS_NO__DO_IRQ 88 89config MACH_DECSTATION 90 bool "DECstations" 91 select BOOT_ELF32 92 select CEVT_R4K 93 select CSRC_R4K 94 select DMA_NONCOHERENT 95 select NO_IOPORT 96 select IRQ_CPU 97 select SYS_HAS_CPU_R3000 98 select SYS_HAS_CPU_R4X00 99 select SYS_SUPPORTS_32BIT_KERNEL 100 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL 101 select SYS_SUPPORTS_LITTLE_ENDIAN 102 select SYS_SUPPORTS_128HZ 103 select SYS_SUPPORTS_256HZ 104 select SYS_SUPPORTS_1024HZ 105 help 106 This enables support for DEC's MIPS based workstations. For details 107 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the 108 DECstation porting pages on <http://decstation.unix-ag.org/>. 109 110 If you have one of the following DECstation Models you definitely 111 want to choose R4xx0 for the CPU Type: 112 113 DECstation 5000/50 114 DECstation 5000/150 115 DECstation 5000/260 116 DECsystem 5900/260 117 118 otherwise choose R3000. 119 120config MACH_JAZZ 121 bool "Jazz family of machines" 122 select ARC 123 select ARC32 124 select ARCH_MAY_HAVE_PC_FDC 125 select CEVT_R4K 126 select CSRC_R4K 127 select GENERIC_ISA_DMA 128 select IRQ_CPU 129 select I8253 130 select I8259 131 select ISA 132 select PCSPEAKER 133 select SYS_HAS_CPU_R4X00 134 select SYS_SUPPORTS_32BIT_KERNEL 135 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL 136 select SYS_SUPPORTS_100HZ 137 select GENERIC_HARDIRQS_NO__DO_IRQ 138 help 139 This a family of machines based on the MIPS R4030 chipset which was 140 used by several vendors to build RISC/os and Windows NT workstations. 141 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and 142 Olivetti M700-10 workstations. 143 144config LASAT 145 bool "LASAT Networks platforms" 146 select CEVT_R4K 147 select CSRC_R4K 148 select DMA_NONCOHERENT 149 select SYS_HAS_EARLY_PRINTK 150 select HW_HAS_PCI 151 select IRQ_CPU 152 select PCI_GT64XXX_PCI0 153 select MIPS_NILE4 154 select R5000_CPU_SCACHE 155 select SYS_HAS_CPU_R5000 156 select SYS_SUPPORTS_32BIT_KERNEL 157 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN 158 select SYS_SUPPORTS_LITTLE_ENDIAN 159 select GENERIC_HARDIRQS_NO__DO_IRQ 160 161config LEMOTE_FULONG 162 bool "Lemote Fulong mini-PC" 163 select ARCH_SPARSEMEM_ENABLE 164 select CEVT_R4K 165 select CSRC_R4K 166 select SYS_HAS_CPU_LOONGSON2 167 select DMA_NONCOHERENT 168 select BOOT_ELF32 169 select BOARD_SCACHE 170 select HAVE_STD_PC_SERIAL_PORT 171 select HW_HAS_PCI 172 select I8259 173 select ISA 174 select IRQ_CPU 175 select SYS_SUPPORTS_32BIT_KERNEL 176 select SYS_SUPPORTS_64BIT_KERNEL 177 select SYS_SUPPORTS_LITTLE_ENDIAN 178 select SYS_SUPPORTS_HIGHMEM 179 select SYS_HAS_EARLY_PRINTK 180 select GENERIC_HARDIRQS_NO__DO_IRQ 181 select GENERIC_ISA_DMA_SUPPORT_BROKEN 182 select CPU_HAS_WB 183 help 184 Lemote Fulong mini-PC board based on the Chinese Loongson-2E CPU and 185 an FPGA northbridge 186 187config MIPS_ATLAS 188 bool "MIPS Atlas board" 189 select BOOT_ELF32 190 select CEVT_R4K 191 select CSRC_R4K 192 select DMA_NONCOHERENT 193 select SYS_HAS_EARLY_PRINTK 194 select IRQ_CPU 195 select HW_HAS_PCI 196 select MIPS_BOARDS_GEN 197 select MIPS_BONITO64 198 select PCI_GT64XXX_PCI0 199 select MIPS_MSC 200 select RM7000_CPU_SCACHE 201 select SWAP_IO_SPACE 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_SUPPORTS_32BIT_KERNEL 208 select SYS_SUPPORTS_64BIT_KERNEL 209 select SYS_SUPPORTS_BIG_ENDIAN 210 select SYS_SUPPORTS_LITTLE_ENDIAN 211 select SYS_SUPPORTS_MULTITHREADING if EXPERIMENTAL 212 select SYS_SUPPORTS_SMARTMIPS 213 select GENERIC_HARDIRQS_NO__DO_IRQ 214 help 215 This enables support for the MIPS Technologies Atlas evaluation 216 board. 217 218config MIPS_MALTA 219 bool "MIPS Malta board" 220 select ARCH_MAY_HAVE_PC_FDC 221 select BOOT_ELF32 222 select CEVT_R4K 223 select CSRC_R4K 224 select DMA_NONCOHERENT 225 select GENERIC_ISA_DMA 226 select IRQ_CPU 227 select HW_HAS_PCI 228 select I8253 229 select I8259 230 select MIPS_BOARDS_GEN 231 select MIPS_BONITO64 232 select MIPS_CPU_SCACHE 233 select PCI_GT64XXX_PCI0 234 select MIPS_MSC 235 select SWAP_IO_SPACE 236 select SYS_HAS_CPU_MIPS32_R1 237 select SYS_HAS_CPU_MIPS32_R2 238 select SYS_HAS_CPU_MIPS64_R1 239 select SYS_HAS_CPU_NEVADA 240 select SYS_HAS_CPU_RM7000 241 select SYS_HAS_EARLY_PRINTK 242 select SYS_SUPPORTS_32BIT_KERNEL 243 select SYS_SUPPORTS_64BIT_KERNEL 244 select SYS_SUPPORTS_BIG_ENDIAN 245 select SYS_SUPPORTS_LITTLE_ENDIAN 246 select SYS_SUPPORTS_MULTITHREADING 247 select SYS_SUPPORTS_SMARTMIPS 248 help 249 This enables support for the MIPS Technologies Malta evaluation 250 board. 251 252config MIPS_SEAD 253 bool "MIPS SEAD board" 254 select CEVT_R4K 255 select CSRC_R4K 256 select IRQ_CPU 257 select DMA_NONCOHERENT 258 select SYS_HAS_EARLY_PRINTK 259 select MIPS_BOARDS_GEN 260 select SYS_HAS_CPU_MIPS32_R1 261 select SYS_HAS_CPU_MIPS32_R2 262 select SYS_HAS_CPU_MIPS64_R1 263 select SYS_SUPPORTS_32BIT_KERNEL 264 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL 265 select SYS_SUPPORTS_BIG_ENDIAN 266 select SYS_SUPPORTS_LITTLE_ENDIAN 267 select SYS_SUPPORTS_SMARTMIPS 268 help 269 This enables support for the MIPS Technologies SEAD evaluation 270 board. 271 272config MIPS_SIM 273 bool 'MIPS simulator (MIPSsim)' 274 select CEVT_R4K 275 select CSRC_R4K 276 select DMA_NONCOHERENT 277 select SYS_HAS_EARLY_PRINTK 278 select IRQ_CPU 279 select BOOT_RAW 280 select SYS_HAS_CPU_MIPS32_R1 281 select SYS_HAS_CPU_MIPS32_R2 282 select SYS_HAS_EARLY_PRINTK 283 select SYS_SUPPORTS_32BIT_KERNEL 284 select SYS_SUPPORTS_BIG_ENDIAN 285 select SYS_SUPPORTS_MULTITHREADING 286 select SYS_SUPPORTS_LITTLE_ENDIAN 287 help 288 This option enables support for MIPS Technologies MIPSsim software 289 emulator. 290 291config MARKEINS 292 bool "NEC EMMA2RH Mark-eins" 293 select CEVT_R4K 294 select CSRC_R4K 295 select DMA_NONCOHERENT 296 select HW_HAS_PCI 297 select IRQ_CPU 298 select SWAP_IO_SPACE 299 select SYS_SUPPORTS_32BIT_KERNEL 300 select SYS_SUPPORTS_BIG_ENDIAN 301 select SYS_SUPPORTS_LITTLE_ENDIAN 302 select SYS_HAS_CPU_R5000 303 help 304 This enables support for the R5432-based NEC Mark-eins 305 boards with R5500 CPU. 306 307config MACH_VR41XX 308 bool "NEC VR4100 series based machines" 309 select CEVT_R4K 310 select CSRC_R4K 311 select SYS_HAS_CPU_VR41XX 312 select GENERIC_HARDIRQS_NO__DO_IRQ 313 314config PNX8550_JBS 315 bool "Philips PNX8550 based JBS board" 316 select PNX8550 317 select SYS_SUPPORTS_LITTLE_ENDIAN 318 319config PNX8550_STB810 320 bool "Philips PNX8550 based STB810 board" 321 select PNX8550 322 select SYS_SUPPORTS_LITTLE_ENDIAN 323 324config PMC_MSP 325 bool "PMC-Sierra MSP chipsets" 326 depends on EXPERIMENTAL 327 select DMA_NONCOHERENT 328 select SWAP_IO_SPACE 329 select NO_EXCEPT_FILL 330 select BOOT_RAW 331 select SYS_HAS_CPU_MIPS32_R1 332 select SYS_HAS_CPU_MIPS32_R2 333 select SYS_SUPPORTS_32BIT_KERNEL 334 select SYS_SUPPORTS_BIG_ENDIAN 335 select SYS_SUPPORTS_KGDB 336 select IRQ_CPU 337 select SERIAL_8250 338 select SERIAL_8250_CONSOLE 339 help 340 This adds support for the PMC-Sierra family of Multi-Service 341 Processor System-On-A-Chips. These parts include a number 342 of integrated peripherals, interfaces and DSPs in addition to 343 a variety of MIPS cores. 344 345config PMC_YOSEMITE 346 bool "PMC-Sierra Yosemite eval board" 347 select CEVT_R4K 348 select CSRC_R4K 349 select DMA_COHERENT 350 select HW_HAS_PCI 351 select IRQ_CPU 352 select IRQ_CPU_RM7K 353 select IRQ_CPU_RM9K 354 select SWAP_IO_SPACE 355 select SYS_HAS_CPU_RM9000 356 select SYS_HAS_EARLY_PRINTK 357 select SYS_SUPPORTS_32BIT_KERNEL 358 select SYS_SUPPORTS_64BIT_KERNEL 359 select SYS_SUPPORTS_BIG_ENDIAN 360 select SYS_SUPPORTS_HIGHMEM 361 select SYS_SUPPORTS_KGDB 362 select SYS_SUPPORTS_SMP 363 help 364 Yosemite is an evaluation board for the RM9000x2 processor 365 manufactured by PMC-Sierra. 366 367config QEMU 368 bool "Qemu" 369 select CEVT_R4K 370 select CSRC_R4K 371 select DMA_COHERENT 372 select GENERIC_ISA_DMA 373 select HAVE_STD_PC_SERIAL_PORT 374 select I8253 375 select I8259 376 select IRQ_CPU 377 select ISA 378 select PCSPEAKER 379 select SWAP_IO_SPACE 380 select SYS_HAS_CPU_MIPS32_R1 381 select SYS_HAS_EARLY_PRINTK 382 select SYS_SUPPORTS_32BIT_KERNEL 383 select SYS_SUPPORTS_BIG_ENDIAN 384 select SYS_SUPPORTS_LITTLE_ENDIAN 385 select GENERIC_HARDIRQS_NO__DO_IRQ 386 select NR_CPUS_DEFAULT_1 387 select SYS_SUPPORTS_SMP 388 help 389 Qemu is a software emulator which among other architectures also 390 can simulate a MIPS32 4Kc system. This patch adds support for the 391 system architecture that currently is being simulated by Qemu. It 392 will eventually be removed again when Qemu has the capability to 393 simulate actual MIPS hardware platforms. More information on Qemu 394 can be found at http://www.linux-mips.org/wiki/Qemu. 395 396config SGI_IP22 397 bool "SGI IP22 (Indy/Indigo2)" 398 select ARC 399 select ARC32 400 select BOOT_ELF32 401 select CEVT_R4K 402 select CSRC_R4K 403 select DMA_NONCOHERENT 404 select HW_HAS_EISA 405 select I8253 406 select I8259 407 select IP22_CPU_SCACHE 408 select IRQ_CPU 409 select GENERIC_ISA_DMA_SUPPORT_BROKEN 410 select SWAP_IO_SPACE 411 select SYS_HAS_CPU_R4X00 412 select SYS_HAS_CPU_R5000 413 select SYS_HAS_EARLY_PRINTK 414 select SYS_SUPPORTS_32BIT_KERNEL 415 select SYS_SUPPORTS_64BIT_KERNEL 416 select SYS_SUPPORTS_BIG_ENDIAN 417 help 418 This are the SGI Indy, Challenge S and Indigo2, as well as certain 419 OEM variants like the Tandem CMN B006S. To compile a Linux kernel 420 that runs on these, say Y here. 421 422config SGI_IP27 423 bool "SGI IP27 (Origin200/2000)" 424 select ARC 425 select ARC64 426 select BOOT_ELF64 427 select DMA_IP27 428 select SYS_HAS_EARLY_PRINTK 429 select HW_HAS_PCI 430 select NR_CPUS_DEFAULT_64 431 select SYS_HAS_CPU_R10000 432 select SYS_SUPPORTS_64BIT_KERNEL 433 select SYS_SUPPORTS_BIG_ENDIAN 434 select SYS_SUPPORTS_KGDB 435 select SYS_SUPPORTS_NUMA 436 select SYS_SUPPORTS_SMP 437 select GENERIC_HARDIRQS_NO__DO_IRQ 438 help 439 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics 440 workstations. To compile a Linux kernel that runs on these, say Y 441 here. 442 443config SGI_IP32 444 bool "SGI IP32 (O2)" 445 select ARC 446 select ARC32 447 select BOOT_ELF32 448 select CEVT_R4K 449 select CSRC_R4K 450 select DMA_NONCOHERENT 451 select HW_HAS_PCI 452 select IRQ_CPU 453 select R5000_CPU_SCACHE 454 select RM7000_CPU_SCACHE 455 select SYS_HAS_CPU_R5000 456 select SYS_HAS_CPU_R10000 if BROKEN 457 select SYS_HAS_CPU_RM7000 458 select SYS_HAS_CPU_NEVADA 459 select SYS_SUPPORTS_64BIT_KERNEL 460 select SYS_SUPPORTS_BIG_ENDIAN 461 help 462 If you want this kernel to run on SGI O2 workstation, say Y here. 463 464config SIBYTE_CRHINE 465 bool "Sibyte BCM91120C-CRhine" 466 depends on EXPERIMENTAL 467 select BOOT_ELF32 468 select DMA_COHERENT 469 select SIBYTE_BCM1120 470 select SWAP_IO_SPACE 471 select SYS_HAS_CPU_SB1 472 select SYS_SUPPORTS_BIG_ENDIAN 473 select SYS_SUPPORTS_LITTLE_ENDIAN 474 475config SIBYTE_CARMEL 476 bool "Sibyte BCM91120x-Carmel" 477 depends on EXPERIMENTAL 478 select BOOT_ELF32 479 select DMA_COHERENT 480 select SIBYTE_BCM1120 481 select SWAP_IO_SPACE 482 select SYS_HAS_CPU_SB1 483 select SYS_SUPPORTS_BIG_ENDIAN 484 select SYS_SUPPORTS_LITTLE_ENDIAN 485 486config SIBYTE_CRHONE 487 bool "Sibyte BCM91125C-CRhone" 488 depends on EXPERIMENTAL 489 select BOOT_ELF32 490 select DMA_COHERENT 491 select SIBYTE_BCM1125 492 select SWAP_IO_SPACE 493 select SYS_HAS_CPU_SB1 494 select SYS_SUPPORTS_BIG_ENDIAN 495 select SYS_SUPPORTS_HIGHMEM 496 select SYS_SUPPORTS_LITTLE_ENDIAN 497 498config SIBYTE_RHONE 499 bool "Sibyte BCM91125E-Rhone" 500 depends on EXPERIMENTAL 501 select BOOT_ELF32 502 select DMA_COHERENT 503 select SIBYTE_BCM1125H 504 select SWAP_IO_SPACE 505 select SYS_HAS_CPU_SB1 506 select SYS_SUPPORTS_BIG_ENDIAN 507 select SYS_SUPPORTS_LITTLE_ENDIAN 508 509config SIBYTE_SWARM 510 bool "Sibyte BCM91250A-SWARM" 511 select BOOT_ELF32 512 select DMA_COHERENT 513 select NR_CPUS_DEFAULT_2 514 select SIBYTE_SB1250 515 select SWAP_IO_SPACE 516 select SYS_HAS_CPU_SB1 517 select SYS_SUPPORTS_BIG_ENDIAN 518 select SYS_SUPPORTS_HIGHMEM 519 select SYS_SUPPORTS_KGDB 520 select SYS_SUPPORTS_LITTLE_ENDIAN 521 select ZONE_DMA32 if 64BIT 522 523config SIBYTE_LITTLESUR 524 bool "Sibyte BCM91250C2-LittleSur" 525 depends on EXPERIMENTAL 526 select BOOT_ELF32 527 select DMA_COHERENT 528 select NR_CPUS_DEFAULT_2 529 select SIBYTE_SB1250 530 select SWAP_IO_SPACE 531 select SYS_HAS_CPU_SB1 532 select SYS_SUPPORTS_BIG_ENDIAN 533 select SYS_SUPPORTS_HIGHMEM 534 select SYS_SUPPORTS_LITTLE_ENDIAN 535 536config SIBYTE_SENTOSA 537 bool "Sibyte BCM91250E-Sentosa" 538 depends on EXPERIMENTAL 539 select BOOT_ELF32 540 select DMA_COHERENT 541 select NR_CPUS_DEFAULT_2 542 select SIBYTE_SB1250 543 select SWAP_IO_SPACE 544 select SYS_HAS_CPU_SB1 545 select SYS_SUPPORTS_BIG_ENDIAN 546 select SYS_SUPPORTS_LITTLE_ENDIAN 547 548config SIBYTE_PTSWARM 549 bool "Sibyte BCM91250PT-PTSWARM" 550 depends on EXPERIMENTAL 551 select BOOT_ELF32 552 select DMA_COHERENT 553 select NR_CPUS_DEFAULT_2 554 select SIBYTE_SB1250 555 select SWAP_IO_SPACE 556 select SYS_HAS_CPU_SB1 557 select SYS_SUPPORTS_BIG_ENDIAN 558 select SYS_SUPPORTS_HIGHMEM 559 select SYS_SUPPORTS_LITTLE_ENDIAN 560 561config SIBYTE_BIGSUR 562 bool "Sibyte BCM91480B-BigSur" 563 select BOOT_ELF32 564 select DMA_COHERENT 565 select NR_CPUS_DEFAULT_4 566 select SIBYTE_BCM1x80 567 select SWAP_IO_SPACE 568 select SYS_HAS_CPU_SB1 569 select SYS_SUPPORTS_BIG_ENDIAN 570 select SYS_SUPPORTS_HIGHMEM 571 select SYS_SUPPORTS_LITTLE_ENDIAN 572 select ZONE_DMA32 if 64BIT 573 574config SNI_RM 575 bool "SNI RM200/300/400" 576 select ARC if CPU_LITTLE_ENDIAN 577 select ARC32 if CPU_LITTLE_ENDIAN 578 select ARCH_MAY_HAVE_PC_FDC 579 select BOOT_ELF32 580 select CEVT_R4K 581 select CSRC_R4K 582 select DMA_NONCOHERENT 583 select GENERIC_ISA_DMA 584 select HW_HAS_EISA 585 select HW_HAS_PCI 586 select IRQ_CPU 587 select I8253 588 select I8259 589 select ISA 590 select PCSPEAKER 591 select SWAP_IO_SPACE if CPU_BIG_ENDIAN 592 select SYS_HAS_CPU_R4X00 593 select SYS_HAS_CPU_R5000 594 select SYS_HAS_CPU_R10000 595 select R5000_CPU_SCACHE 596 select SYS_HAS_EARLY_PRINTK 597 select SYS_SUPPORTS_32BIT_KERNEL 598 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL 599 select SYS_SUPPORTS_BIG_ENDIAN 600 select SYS_SUPPORTS_HIGHMEM 601 select SYS_SUPPORTS_LITTLE_ENDIAN 602 help 603 The SNI RM200/300/400 are MIPS-based machines manufactured by 604 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid 605 Technology and now in turn merged with Fujitsu. Say Y here to 606 support this machine type. 607 608config TOSHIBA_JMR3927 609 bool "Toshiba JMR-TX3927 board" 610 select CEVT_TXX9 611 select DMA_NONCOHERENT 612 select HW_HAS_PCI 613 select MIPS_TX3927 614 select IRQ_TXX9 615 select SWAP_IO_SPACE 616 select SYS_HAS_CPU_TX39XX 617 select SYS_SUPPORTS_32BIT_KERNEL 618 select SYS_SUPPORTS_LITTLE_ENDIAN 619 select SYS_SUPPORTS_BIG_ENDIAN 620 select GENERIC_HARDIRQS_NO__DO_IRQ 621 622config TOSHIBA_RBTX4927 623 bool "Toshiba RBTX49[23]7 board" 624 select CEVT_R4K 625 select CSRC_R4K 626 select CEVT_TXX9 627 select DMA_NONCOHERENT 628 select HAS_TXX9_SERIAL 629 select HW_HAS_PCI 630 select IRQ_CPU 631 select IRQ_TXX9 632 select I8259 if TOSHIBA_FPCIB0 633 select SWAP_IO_SPACE 634 select SYS_HAS_CPU_TX49XX 635 select SYS_SUPPORTS_32BIT_KERNEL 636 select SYS_SUPPORTS_64BIT_KERNEL 637 select SYS_SUPPORTS_LITTLE_ENDIAN 638 select SYS_SUPPORTS_BIG_ENDIAN 639 select SYS_SUPPORTS_KGDB 640 select GENERIC_HARDIRQS_NO__DO_IRQ 641 help 642 This Toshiba board is based on the TX4927 processor. Say Y here to 643 support this machine type 644 645config TOSHIBA_RBTX4938 646 bool "Toshiba RBTX4938 board" 647 select CEVT_R4K 648 select CSRC_R4K 649 select CEVT_TXX9 650 select DMA_NONCOHERENT 651 select HAS_TXX9_SERIAL 652 select HW_HAS_PCI 653 select IRQ_CPU 654 select IRQ_TXX9 655 select SWAP_IO_SPACE 656 select SYS_HAS_CPU_TX49XX 657 select SYS_SUPPORTS_32BIT_KERNEL 658 select SYS_SUPPORTS_LITTLE_ENDIAN 659 select SYS_SUPPORTS_BIG_ENDIAN 660 select SYS_SUPPORTS_KGDB 661 select GENERIC_HARDIRQS_NO__DO_IRQ 662 select GENERIC_GPIO 663 help 664 This Toshiba board is based on the TX4938 processor. Say Y here to 665 support this machine type 666 667config WR_PPMC 668 bool "Wind River PPMC board" 669 select CEVT_R4K 670 select CSRC_R4K 671 select IRQ_CPU 672 select BOOT_ELF32 673 select DMA_NONCOHERENT 674 select HW_HAS_PCI 675 select PCI_GT64XXX_PCI0 676 select SWAP_IO_SPACE 677 select SYS_HAS_CPU_MIPS32_R1 678 select SYS_HAS_CPU_MIPS32_R2 679 select SYS_HAS_CPU_MIPS64_R1 680 select SYS_HAS_CPU_NEVADA 681 select SYS_HAS_CPU_RM7000 682 select SYS_SUPPORTS_32BIT_KERNEL 683 select SYS_SUPPORTS_64BIT_KERNEL 684 select SYS_SUPPORTS_BIG_ENDIAN 685 select SYS_SUPPORTS_LITTLE_ENDIAN 686 help 687 This enables support for the Wind River MIPS32 4KC PPMC evaluation 688 board, which is based on GT64120 bridge chip. 689 690endchoice 691 692source "arch/mips/au1000/Kconfig" 693source "arch/mips/jazz/Kconfig" 694source "arch/mips/lasat/Kconfig" 695source "arch/mips/pmc-sierra/Kconfig" 696source "arch/mips/sgi-ip27/Kconfig" 697source "arch/mips/sibyte/Kconfig" 698source "arch/mips/tx4927/Kconfig" 699source "arch/mips/tx4938/Kconfig" 700source "arch/mips/vr41xx/Kconfig" 701 702endmenu 703 704config RWSEM_GENERIC_SPINLOCK 705 bool 706 default y 707 708config RWSEM_XCHGADD_ALGORITHM 709 bool 710 711config ARCH_HAS_ILOG2_U32 712 bool 713 default n 714 715config ARCH_HAS_ILOG2_U64 716 bool 717 default n 718 719config ARCH_SUPPORTS_OPROFILE 720 bool 721 default y if !MIPS_MT_SMTC 722 723config GENERIC_FIND_NEXT_BIT 724 bool 725 default y 726 727config GENERIC_HWEIGHT 728 bool 729 default y 730 731config GENERIC_CALIBRATE_DELAY 732 bool 733 default y 734 735config GENERIC_CLOCKEVENTS 736 bool 737 default y 738 739config GENERIC_TIME 740 bool 741 default y 742 743config GENERIC_CMOS_UPDATE 744 bool 745 default y 746 747config SCHED_NO_NO_OMIT_FRAME_POINTER 748 bool 749 default y 750 751config GENERIC_HARDIRQS_NO__DO_IRQ 752 bool 753 default n 754 755# 756# Select some configuration options automatically based on user selections. 757# 758config ARC 759 bool 760 761config ARCH_MAY_HAVE_PC_FDC 762 bool 763 764config BOOT_RAW 765 bool 766 767config CEVT_BCM1480 768 bool 769 770config CEVT_GT641XX 771 bool 772 773config CEVT_R4K 774 bool 775 776config CEVT_SB1250 777 bool 778 779config CEVT_TXX9 780 bool 781 782config CSRC_BCM1480 783 bool 784 785config CSRC_R4K 786 bool 787 788config CSRC_SB1250 789 bool 790 791config CFE 792 bool 793 794config DMA_COHERENT 795 bool 796 797config DMA_IP27 798 bool 799 800config DMA_IP32 801 bool 802 select DMA_NEED_PCI_MAP_STATE 803 804config DMA_NONCOHERENT 805 bool 806 select DMA_NEED_PCI_MAP_STATE 807 808config DMA_NEED_PCI_MAP_STATE 809 bool 810 811config EARLY_PRINTK 812 bool "Early printk" if EMBEDDED && DEBUG_KERNEL 813 depends on SYS_HAS_EARLY_PRINTK 814 default y 815 help 816 This option enables special console drivers which allow the kernel 817 to print messages very early in the bootup process. 818 819 This is useful for kernel debugging when your machine crashes very 820 early before the console code is initialized. For normal operation, 821 it is not recommended because it looks ugly on some machines and 822 doesn't cooperate with an X server. You should normally say N here, 823 unless you want to debug such a crash. 824 825config SYS_HAS_EARLY_PRINTK 826 bool 827 828config HOTPLUG_CPU 829 bool 830 default n 831 832config I8259 833 bool 834 835config MIPS_BONITO64 836 bool 837 838config MIPS_MSC 839 bool 840 841config MIPS_NILE4 842 bool 843 844config MIPS_DISABLE_OBSOLETE_IDE 845 bool 846 847config NO_IOPORT 848 def_bool n 849 850config GENERIC_ISA_DMA 851 bool 852 select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n 853 854config GENERIC_ISA_DMA_SUPPORT_BROKEN 855 bool 856 select GENERIC_ISA_DMA 857 858config GENERIC_GPIO 859 bool 860 861# 862# Endianess selection. Sufficiently obscure so many users don't know what to 863# answer,so we try hard to limit the available choices. Also the use of a 864# choice statement should be more obvious to the user. 865# 866choice 867 prompt "Endianess selection" 868 help 869 Some MIPS machines can be configured for either little or big endian 870 byte order. These modes require different kernels and a different 871 Linux distribution. In general there is one preferred byteorder for a 872 particular system but some systems are just as commonly used in the 873 one or the other endianness. 874 875config CPU_BIG_ENDIAN 876 bool "Big endian" 877 depends on SYS_SUPPORTS_BIG_ENDIAN 878 879config CPU_LITTLE_ENDIAN 880 bool "Little endian" 881 depends on SYS_SUPPORTS_LITTLE_ENDIAN 882 help 883 884endchoice 885 886config SYS_SUPPORTS_APM_EMULATION 887 bool 888 889config SYS_SUPPORTS_BIG_ENDIAN 890 bool 891 892config SYS_SUPPORTS_LITTLE_ENDIAN 893 bool 894 895config IRQ_CPU 896 bool 897 898config IRQ_CPU_RM7K 899 bool 900 901config IRQ_CPU_RM9K 902 bool 903 904config IRQ_MSP_SLP 905 bool 906 907config IRQ_MSP_CIC 908 bool 909 910config IRQ_TXX9 911 bool 912 913config IRQ_GT641XX 914 bool 915 916config MIPS_BOARDS_GEN 917 bool 918 919config PCI_GT64XXX_PCI0 920 bool 921 922config NO_EXCEPT_FILL 923 bool 924 925config MIPS_TX3927 926 bool 927 select HAS_TXX9_SERIAL 928 929config MIPS_RM9122 930 bool 931 select SERIAL_RM9000 932 933config PNX8550 934 bool 935 select SOC_PNX8550 936 937config SOC_PNX8550 938 bool 939 select DMA_NONCOHERENT 940 select HW_HAS_PCI 941 select SYS_HAS_CPU_MIPS32_R1 942 select SYS_HAS_EARLY_PRINTK 943 select SYS_SUPPORTS_32BIT_KERNEL 944 select GENERIC_HARDIRQS_NO__DO_IRQ 945 select SYS_SUPPORTS_KGDB 946 select GENERIC_GPIO 947 948config SWAP_IO_SPACE 949 bool 950 951config EMMA2RH 952 bool 953 depends on MARKEINS 954 default y 955 956config SERIAL_RM9000 957 bool 958 959config ARC32 960 bool 961 962config BOOT_ELF32 963 bool 964 965config MIPS_L1_CACHE_SHIFT 966 int 967 default "4" if MACH_DECSTATION 968 default "7" if SGI_IP27 || SNI_RM 969 default "4" if PMC_MSP4200_EVAL 970 default "5" 971 972config HAVE_STD_PC_SERIAL_PORT 973 bool 974 975config ARC_CONSOLE 976 bool "ARC console support" 977 depends on SGI_IP22 || (SNI_RM && CPU_LITTLE_ENDIAN) 978 979config ARC_MEMORY 980 bool 981 depends on MACH_JAZZ || SNI_RM || SGI_IP32 982 default y 983 984config ARC_PROMLIB 985 bool 986 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP32 987 default y 988 989config ARC64 990 bool 991 992config BOOT_ELF64 993 bool 994 995menu "CPU selection" 996 997choice 998 prompt "CPU type" 999 default CPU_R4X00 1000 1001config CPU_LOONGSON2 1002 bool "Loongson 2" 1003 depends on SYS_HAS_CPU_LOONGSON2 1004 select CPU_SUPPORTS_32BIT_KERNEL 1005 select CPU_SUPPORTS_64BIT_KERNEL 1006 select CPU_SUPPORTS_HIGHMEM 1007 help 1008 The Loongson 2E processor implements the MIPS III instruction set 1009 with many extensions. 1010 1011config CPU_MIPS32_R1 1012 bool "MIPS32 Release 1" 1013 depends on SYS_HAS_CPU_MIPS32_R1 1014 select CPU_HAS_LLSC 1015 select CPU_HAS_PREFETCH 1016 select CPU_SUPPORTS_32BIT_KERNEL 1017 select CPU_SUPPORTS_HIGHMEM 1018 help 1019 Choose this option to build a kernel for release 1 or later of the 1020 MIPS32 architecture. Most modern embedded systems with a 32-bit 1021 MIPS processor are based on a MIPS32 processor. If you know the 1022 specific type of processor in your system, choose those that one 1023 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system. 1024 Release 2 of the MIPS32 architecture is available since several 1025 years so chances are you even have a MIPS32 Release 2 processor 1026 in which case you should choose CPU_MIPS32_R2 instead for better 1027 performance. 1028 1029config CPU_MIPS32_R2 1030 bool "MIPS32 Release 2" 1031 depends on SYS_HAS_CPU_MIPS32_R2 1032 select CPU_HAS_LLSC 1033 select CPU_HAS_PREFETCH 1034 select CPU_SUPPORTS_32BIT_KERNEL 1035 select CPU_SUPPORTS_HIGHMEM 1036 help 1037 Choose this option to build a kernel for release 2 or later of the 1038 MIPS32 architecture. Most modern embedded systems with a 32-bit 1039 MIPS processor are based on a MIPS32 processor. If you know the 1040 specific type of processor in your system, choose those that one 1041 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system. 1042 1043config CPU_MIPS64_R1 1044 bool "MIPS64 Release 1" 1045 depends on SYS_HAS_CPU_MIPS64_R1 1046 select CPU_HAS_LLSC 1047 select CPU_HAS_PREFETCH 1048 select CPU_SUPPORTS_32BIT_KERNEL 1049 select CPU_SUPPORTS_64BIT_KERNEL 1050 select CPU_SUPPORTS_HIGHMEM 1051 help 1052 Choose this option to build a kernel for release 1 or later of the 1053 MIPS64 architecture. Many modern embedded systems with a 64-bit 1054 MIPS processor are based on a MIPS64 processor. If you know the 1055 specific type of processor in your system, choose those that one 1056 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system. 1057 Release 2 of the MIPS64 architecture is available since several 1058 years so chances are you even have a MIPS64 Release 2 processor 1059 in which case you should choose CPU_MIPS64_R2 instead for better 1060 performance. 1061 1062config CPU_MIPS64_R2 1063 bool "MIPS64 Release 2" 1064 depends on SYS_HAS_CPU_MIPS64_R2 1065 select CPU_HAS_LLSC 1066 select CPU_HAS_PREFETCH 1067 select CPU_SUPPORTS_32BIT_KERNEL 1068 select CPU_SUPPORTS_64BIT_KERNEL 1069 select CPU_SUPPORTS_HIGHMEM 1070 help 1071 Choose this option to build a kernel for release 2 or later of the 1072 MIPS64 architecture. Many modern embedded systems with a 64-bit 1073 MIPS processor are based on a MIPS64 processor. If you know the 1074 specific type of processor in your system, choose those that one 1075 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system. 1076 1077config CPU_R3000 1078 bool "R3000" 1079 depends on SYS_HAS_CPU_R3000 1080 select CPU_HAS_WB 1081 select CPU_SUPPORTS_32BIT_KERNEL 1082 select CPU_SUPPORTS_HIGHMEM 1083 help 1084 Please make sure to pick the right CPU type. Linux/MIPS is not 1085 designed to be generic, i.e. Kernels compiled for R3000 CPUs will 1086 *not* work on R4000 machines and vice versa. However, since most 1087 of the supported machines have an R4000 (or similar) CPU, R4x00 1088 might be a safe bet. If the resulting kernel does not work, 1089 try to recompile with R3000. 1090 1091config CPU_TX39XX 1092 bool "R39XX" 1093 depends on SYS_HAS_CPU_TX39XX 1094 select CPU_SUPPORTS_32BIT_KERNEL 1095 1096config CPU_VR41XX 1097 bool "R41xx" 1098 depends on SYS_HAS_CPU_VR41XX 1099 select CPU_SUPPORTS_32BIT_KERNEL 1100 select CPU_SUPPORTS_64BIT_KERNEL 1101 help 1102 The options selects support for the NEC VR4100 series of processors. 1103 Only choose this option if you have one of these processors as a 1104 kernel built with this option will not run on any other type of 1105 processor or vice versa. 1106 1107config CPU_R4300 1108 bool "R4300" 1109 depends on SYS_HAS_CPU_R4300 1110 select CPU_HAS_LLSC 1111 select CPU_SUPPORTS_32BIT_KERNEL 1112 select CPU_SUPPORTS_64BIT_KERNEL 1113 help 1114 MIPS Technologies R4300-series processors. 1115 1116config CPU_R4X00 1117 bool "R4x00" 1118 depends on SYS_HAS_CPU_R4X00 1119 select CPU_HAS_LLSC 1120 select CPU_SUPPORTS_32BIT_KERNEL 1121 select CPU_SUPPORTS_64BIT_KERNEL 1122 help 1123 MIPS Technologies R4000-series processors other than 4300, including 1124 the R4000, R4400, R4600, and 4700. 1125 1126config CPU_TX49XX 1127 bool "R49XX" 1128 depends on SYS_HAS_CPU_TX49XX 1129 select CPU_HAS_LLSC 1130 select CPU_HAS_PREFETCH 1131 select CPU_SUPPORTS_32BIT_KERNEL 1132 select CPU_SUPPORTS_64BIT_KERNEL 1133 1134config CPU_R5000 1135 bool "R5000" 1136 depends on SYS_HAS_CPU_R5000 1137 select CPU_HAS_LLSC 1138 select CPU_SUPPORTS_32BIT_KERNEL 1139 select CPU_SUPPORTS_64BIT_KERNEL 1140 help 1141 MIPS Technologies R5000-series processors other than the Nevada. 1142 1143config CPU_R5432 1144 bool "R5432" 1145 depends on SYS_HAS_CPU_R5432 1146 select CPU_HAS_LLSC 1147 select CPU_SUPPORTS_32BIT_KERNEL 1148 select CPU_SUPPORTS_64BIT_KERNEL 1149 1150config CPU_R6000 1151 bool "R6000" 1152 depends on EXPERIMENTAL 1153 select CPU_HAS_LLSC 1154 depends on SYS_HAS_CPU_R6000 1155 select CPU_SUPPORTS_32BIT_KERNEL 1156 help 1157 MIPS Technologies R6000 and R6000A series processors. Note these 1158 processors are extremely rare and the support for them is incomplete. 1159 1160config CPU_NEVADA 1161 bool "RM52xx" 1162 depends on SYS_HAS_CPU_NEVADA 1163 select CPU_HAS_LLSC 1164 select CPU_SUPPORTS_32BIT_KERNEL 1165 select CPU_SUPPORTS_64BIT_KERNEL 1166 help 1167 QED / PMC-Sierra RM52xx-series ("Nevada") processors. 1168 1169config CPU_R8000 1170 bool "R8000" 1171 depends on EXPERIMENTAL 1172 depends on SYS_HAS_CPU_R8000 1173 select CPU_HAS_LLSC 1174 select CPU_HAS_PREFETCH 1175 select CPU_SUPPORTS_64BIT_KERNEL 1176 help 1177 MIPS Technologies R8000 processors. Note these processors are 1178 uncommon and the support for them is incomplete. 1179 1180config CPU_R10000 1181 bool "R10000" 1182 depends on SYS_HAS_CPU_R10000 1183 select CPU_HAS_LLSC 1184 select CPU_HAS_PREFETCH 1185 select CPU_SUPPORTS_32BIT_KERNEL 1186 select CPU_SUPPORTS_64BIT_KERNEL 1187 select CPU_SUPPORTS_HIGHMEM 1188 help 1189 MIPS Technologies R10000-series processors. 1190 1191config CPU_RM7000 1192 bool "RM7000" 1193 depends on SYS_HAS_CPU_RM7000 1194 select CPU_HAS_LLSC 1195 select CPU_HAS_PREFETCH 1196 select CPU_SUPPORTS_32BIT_KERNEL 1197 select CPU_SUPPORTS_64BIT_KERNEL 1198 select CPU_SUPPORTS_HIGHMEM 1199 1200config CPU_RM9000 1201 bool "RM9000" 1202 depends on SYS_HAS_CPU_RM9000 1203 select CPU_HAS_LLSC 1204 select CPU_HAS_PREFETCH 1205 select CPU_SUPPORTS_32BIT_KERNEL 1206 select CPU_SUPPORTS_64BIT_KERNEL 1207 select CPU_SUPPORTS_HIGHMEM 1208 select WEAK_ORDERING 1209 1210config CPU_SB1 1211 bool "SB1" 1212 depends on SYS_HAS_CPU_SB1 1213 select CPU_HAS_LLSC 1214 select CPU_SUPPORTS_32BIT_KERNEL 1215 select CPU_SUPPORTS_64BIT_KERNEL 1216 select CPU_SUPPORTS_HIGHMEM 1217 select WEAK_ORDERING 1218 1219endchoice 1220 1221config SYS_HAS_CPU_LOONGSON2 1222 bool 1223 1224config SYS_HAS_CPU_MIPS32_R1 1225 bool 1226 1227config SYS_HAS_CPU_MIPS32_R2 1228 bool 1229 1230config SYS_HAS_CPU_MIPS64_R1 1231 bool 1232 1233config SYS_HAS_CPU_MIPS64_R2 1234 bool 1235 1236config SYS_HAS_CPU_R3000 1237 bool 1238 1239config SYS_HAS_CPU_TX39XX 1240 bool 1241 1242config SYS_HAS_CPU_VR41XX 1243 bool 1244 1245config SYS_HAS_CPU_R4300 1246 bool 1247 1248config SYS_HAS_CPU_R4X00 1249 bool 1250 1251config SYS_HAS_CPU_TX49XX 1252 bool 1253 1254config SYS_HAS_CPU_R5000 1255 bool 1256 1257config SYS_HAS_CPU_R5432 1258 bool 1259 1260config SYS_HAS_CPU_R6000 1261 bool 1262 1263config SYS_HAS_CPU_NEVADA 1264 bool 1265 1266config SYS_HAS_CPU_R8000 1267 bool 1268 1269config SYS_HAS_CPU_R10000 1270 bool 1271 1272config SYS_HAS_CPU_RM7000 1273 bool 1274 1275config SYS_HAS_CPU_RM9000 1276 bool 1277 1278config SYS_HAS_CPU_SB1 1279 bool 1280 1281# 1282# CPU may reorder R->R, R->W, W->R, W->W 1283# Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC 1284# 1285config WEAK_ORDERING 1286 bool 1287 1288# 1289# CPU may reorder reads and writes beyond LL/SC 1290# CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC 1291# 1292config WEAK_REORDERING_BEYOND_LLSC 1293 bool 1294endmenu 1295 1296# 1297# These two indicate any level of the MIPS32 and MIPS64 architecture 1298# 1299config CPU_MIPS32 1300 bool 1301 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2 1302 1303config CPU_MIPS64 1304 bool 1305 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 1306 1307# 1308# These two indicate the revision of the architecture, either Release 1 or Release 2 1309# 1310config CPU_MIPSR1 1311 bool 1312 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1 1313 1314config CPU_MIPSR2 1315 bool 1316 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 1317 1318config SYS_SUPPORTS_32BIT_KERNEL 1319 bool 1320config SYS_SUPPORTS_64BIT_KERNEL 1321 bool 1322config CPU_SUPPORTS_32BIT_KERNEL 1323 bool 1324config CPU_SUPPORTS_64BIT_KERNEL 1325 bool 1326 1327menu "Kernel type" 1328 1329choice 1330 1331 prompt "Kernel code model" 1332 help 1333 You should only select this option if you have a workload that 1334 actually benefits from 64-bit processing or if your machine has 1335 large memory. You will only be presented a single option in this 1336 menu if your system does not support both 32-bit and 64-bit kernels. 1337 1338config 32BIT 1339 bool "32-bit kernel" 1340 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL 1341 select TRAD_SIGNALS 1342 help 1343 Select this option if you want to build a 32-bit kernel. 1344config 64BIT 1345 bool "64-bit kernel" 1346 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL 1347 help 1348 Select this option if you want to build a 64-bit kernel. 1349 1350endchoice 1351 1352choice 1353 prompt "Kernel page size" 1354 default PAGE_SIZE_4KB 1355 1356config PAGE_SIZE_4KB 1357 bool "4kB" 1358 help 1359 This option select the standard 4kB Linux page size. On some 1360 R3000-family processors this is the only available page size. Using 1361 4kB page size will minimize memory consumption and is therefore 1362 recommended for low memory systems. 1363 1364config PAGE_SIZE_8KB 1365 bool "8kB" 1366 depends on EXPERIMENTAL && CPU_R8000 1367 help 1368 Using 8kB page size will result in higher performance kernel at 1369 the price of higher memory consumption. This option is available 1370 only on the R8000 processor. Not that at the time of this writing 1371 this option is still high experimental; there are also issues with 1372 compatibility of user applications. 1373 1374config PAGE_SIZE_16KB 1375 bool "16kB" 1376 depends on !CPU_R3000 && !CPU_TX39XX 1377 help 1378 Using 16kB page size will result in higher performance kernel at 1379 the price of higher memory consumption. This option is available on 1380 all non-R3000 family processors. Note that you will need a suitable 1381 Linux distribution to support this. 1382 1383config PAGE_SIZE_64KB 1384 bool "64kB" 1385 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX 1386 help 1387 Using 64kB page size will result in higher performance kernel at 1388 the price of higher memory consumption. This option is available on 1389 all non-R3000 family processor. Not that at the time of this 1390 writing this option is still high experimental. 1391 1392endchoice 1393 1394config BOARD_SCACHE 1395 bool 1396 1397config IP22_CPU_SCACHE 1398 bool 1399 select BOARD_SCACHE 1400 1401# 1402# Support for a MIPS32 / MIPS64 style S-caches 1403# 1404config MIPS_CPU_SCACHE 1405 bool 1406 select BOARD_SCACHE 1407 1408config R5000_CPU_SCACHE 1409 bool 1410 select BOARD_SCACHE 1411 1412config RM7000_CPU_SCACHE 1413 bool 1414 select BOARD_SCACHE 1415 1416config SIBYTE_DMA_PAGEOPS 1417 bool "Use DMA to clear/copy pages" 1418 depends on CPU_SB1 1419 help 1420 Instead of using the CPU to zero and copy pages, use a Data Mover 1421 channel. These DMA channels are otherwise unused by the standard 1422 SiByte Linux port. Seems to give a small performance benefit. 1423 1424config CPU_HAS_PREFETCH 1425 bool 1426 1427choice 1428 prompt "MIPS MT options" 1429 1430config MIPS_MT_DISABLED 1431 bool "Disable multithreading support." 1432 help 1433 Use this option if your workload can't take advantage of 1434 MIPS hardware multithreading support. On systems that don't have 1435 the option of an MT-enabled processor this option will be the only 1436 option in this menu. 1437 1438config MIPS_MT_SMP 1439 bool "Use 1 TC on each available VPE for SMP" 1440 depends on SYS_SUPPORTS_MULTITHREADING 1441 select CPU_MIPSR2_IRQ_VI 1442 select CPU_MIPSR2_IRQ_EI 1443 select MIPS_MT 1444 select NR_CPUS_DEFAULT_2 1445 select SMP 1446 select SYS_SUPPORTS_SMP 1447 help 1448 This is a kernel model which is also known a VSMP or lately 1449 has been marketesed into SMVP. 1450 1451config MIPS_MT_SMTC 1452 bool "SMTC: Use all TCs on all VPEs for SMP" 1453 depends on CPU_MIPS32_R2 1454 #depends on CPU_MIPS64_R2 # once there is hardware ... 1455 depends on SYS_SUPPORTS_MULTITHREADING 1456 select GENERIC_CLOCKEVENTS_BROADCAST 1457 select CPU_MIPSR2_IRQ_VI 1458 select CPU_MIPSR2_IRQ_EI 1459 select MIPS_MT 1460 select NR_CPUS_DEFAULT_8 1461 select SMP 1462 select SYS_SUPPORTS_SMP 1463 help 1464 This is a kernel model which is known a SMTC or lately has been 1465 marketesed into SMVP. 1466 1467endchoice 1468 1469config MIPS_MT 1470 bool 1471 1472config SYS_SUPPORTS_MULTITHREADING 1473 bool 1474 1475config MIPS_MT_FPAFF 1476 bool "Dynamic FPU affinity for FP-intensive threads" 1477 default y 1478 depends on MIPS_MT_SMP || MIPS_MT_SMTC 1479 1480config MIPS_VPE_LOADER 1481 bool "VPE loader support." 1482 depends on SYS_SUPPORTS_MULTITHREADING 1483 select CPU_MIPSR2_IRQ_VI 1484 select CPU_MIPSR2_IRQ_EI 1485 select MIPS_MT 1486 help 1487 Includes a loader for loading an elf relocatable object 1488 onto another VPE and running it. 1489 1490config MIPS_MT_SMTC_INSTANT_REPLAY 1491 bool "Low-latency Dispatch of Deferred SMTC IPIs" 1492 depends on MIPS_MT_SMTC && !PREEMPT 1493 default y 1494 help 1495 SMTC pseudo-interrupts between TCs are deferred and queued 1496 if the target TC is interrupt-inhibited (IXMT). In the first 1497 SMTC prototypes, these queued IPIs were serviced on return 1498 to user mode, or on entry into the kernel idle loop. The 1499 INSTANT_REPLAY option dispatches them as part of local_irq_restore() 1500 processing, which adds runtime overhead (hence the option to turn 1501 it off), but ensures that IPIs are handled promptly even under 1502 heavy I/O interrupt load. 1503 1504config MIPS_MT_SMTC_IM_BACKSTOP 1505 bool "Use per-TC register bits as backstop for inhibited IM bits" 1506 depends on MIPS_MT_SMTC 1507 default y 1508 help 1509 To support multiple TC microthreads acting as "CPUs" within 1510 a VPE, VPE-wide interrupt mask bits must be specially manipulated 1511 during interrupt handling. To support legacy drivers and interrupt 1512 controller management code, SMTC has a "backstop" to track and 1513 if necessary restore the interrupt mask. This has some performance 1514 impact on interrupt service overhead. Disable it only if you know 1515 what you are doing. 1516 1517config MIPS_MT_SMTC_IRQAFF 1518 bool "Support IRQ affinity API" 1519 depends on MIPS_MT_SMTC 1520 default n 1521 help 1522 Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.) 1523 for SMTC Linux kernel. Requires platform support, of which 1524 an example can be found in the MIPS kernel i8259 and Malta 1525 platform code. It is recommended that MIPS_MT_SMTC_INSTANT_REPLAY 1526 be enabled if MIPS_MT_SMTC_IRQAFF is used. Adds overhead to 1527 interrupt dispatch, and should be used only if you know what 1528 you are doing. 1529 1530config MIPS_VPE_LOADER_TOM 1531 bool "Load VPE program into memory hidden from linux" 1532 depends on MIPS_VPE_LOADER 1533 default y 1534 help 1535 The loader can use memory that is present but has been hidden from 1536 Linux using the kernel command line option "mem=xxMB". It's up to 1537 you to ensure the amount you put in the option and the space your 1538 program requires is less or equal to the amount physically present. 1539 1540# this should possibly be in drivers/char, but it is rather cpu related. Hmmm 1541config MIPS_VPE_APSP_API 1542 bool "Enable support for AP/SP API (RTLX)" 1543 depends on MIPS_VPE_LOADER 1544 help 1545 1546config MIPS_APSP_KSPD 1547 bool "Enable KSPD" 1548 depends on MIPS_VPE_APSP_API 1549 default y 1550 help 1551 KSPD is a kernel daemon that accepts syscall requests from the SP 1552 side, actions them and returns the results. It also handles the 1553 "exit" syscall notifying other kernel modules the SP program is 1554 exiting. You probably want to say yes here. 1555 1556config SB1_PASS_1_WORKAROUNDS 1557 bool 1558 depends on CPU_SB1_PASS_1 1559 default y 1560 1561config SB1_PASS_2_WORKAROUNDS 1562 bool 1563 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2) 1564 default y 1565 1566config SB1_PASS_2_1_WORKAROUNDS 1567 bool 1568 depends on CPU_SB1 && CPU_SB1_PASS_2 1569 default y 1570 1571config 64BIT_PHYS_ADDR 1572 bool 1573 1574config CPU_HAS_LLSC 1575 bool 1576 1577config CPU_HAS_SMARTMIPS 1578 depends on SYS_SUPPORTS_SMARTMIPS 1579 bool "Support for the SmartMIPS ASE" 1580 help 1581 SmartMIPS is a extension of the MIPS32 architecture aimed at 1582 increased security at both hardware and software level for 1583 smartcards. Enabling this option will allow proper use of the 1584 SmartMIPS instructions by Linux applications. However a kernel with 1585 this option will not work on a MIPS core without SmartMIPS core. If 1586 you don't know you probably don't have SmartMIPS and should say N 1587 here. 1588 1589config CPU_HAS_WB 1590 bool 1591 1592config 64BIT_CONTEXT 1593 bool "Save 64bit integer registers" 1594 depends on 32BIT && CPU_LOONGSON2 1595 help 1596 Loongson2 CPU is 64bit , when used in 32BIT mode, its integer 1597 registers can still be accessed as 64bit, mainly for multimedia 1598 instructions. We must have all 64bit save/restored to make sure 1599 those instructions to get correct result. 1600 1601# 1602# Vectored interrupt mode is an R2 feature 1603# 1604config CPU_MIPSR2_IRQ_VI 1605 bool 1606 1607# 1608# Extended interrupt mode is an R2 feature 1609# 1610config CPU_MIPSR2_IRQ_EI 1611 bool 1612 1613config CPU_HAS_SYNC 1614 bool 1615 depends on !CPU_R3000 1616 default y 1617 1618config GENERIC_CLOCKEVENTS_BROADCAST 1619 bool 1620 1621# 1622# Use the generic interrupt handling code in kernel/irq/: 1623# 1624config GENERIC_HARDIRQS 1625 bool 1626 default y 1627 1628config GENERIC_IRQ_PROBE 1629 bool 1630 default y 1631 1632config IRQ_PER_CPU 1633 bool 1634 1635# 1636# - Highmem only makes sense for the 32-bit kernel. 1637# - The current highmem code will only work properly on physically indexed 1638# caches such as R3000, SB1, R7000 or those that look like they're virtually 1639# indexed such as R4000/R4400 SC and MC versions or R10000. So for the 1640# moment we protect the user and offer the highmem option only on machines 1641# where it's known to be safe. This will not offer highmem on a few systems 1642# such as MIPS32 and MIPS64 CPUs which may have virtual and physically 1643# indexed CPUs but we're playing safe. 1644# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we 1645# know they might have memory configurations that could make use of highmem 1646# support. 1647# 1648config HIGHMEM 1649 bool "High Memory Support" 1650 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM 1651 1652config CPU_SUPPORTS_HIGHMEM 1653 bool 1654 1655config SYS_SUPPORTS_HIGHMEM 1656 bool 1657 1658config SYS_SUPPORTS_SMARTMIPS 1659 bool 1660 1661config ARCH_FLATMEM_ENABLE 1662 def_bool y 1663 depends on !NUMA 1664 1665config ARCH_DISCONTIGMEM_ENABLE 1666 bool 1667 default y if SGI_IP27 1668 help 1669 Say Y to support efficient handling of discontiguous physical memory, 1670 for architectures which are either NUMA (Non-Uniform Memory Access) 1671 or have huge holes in the physical address space for other reasons. 1672 See <file:Documentation/vm/numa> for more. 1673 1674config ARCH_POPULATES_NODE_MAP 1675 def_bool y 1676 1677config ARCH_SPARSEMEM_ENABLE 1678 bool 1679 select SPARSEMEM_STATIC 1680 1681config NUMA 1682 bool "NUMA Support" 1683 depends on SYS_SUPPORTS_NUMA 1684 help 1685 Say Y to compile the kernel to support NUMA (Non-Uniform Memory 1686 Access). This option improves performance on systems with more 1687 than two nodes; on two node systems it is generally better to 1688 leave it disabled; on single node systems disable this option 1689 disabled. 1690 1691config SYS_SUPPORTS_NUMA 1692 bool 1693 1694config NODES_SHIFT 1695 int 1696 default "6" 1697 depends on NEED_MULTIPLE_NODES 1698 1699source "mm/Kconfig" 1700 1701config SMP 1702 bool "Multi-Processing support" 1703 depends on SYS_SUPPORTS_SMP 1704 select IRQ_PER_CPU 1705 help 1706 This enables support for systems with more than one CPU. If you have 1707 a system with only one CPU, like most personal computers, say N. If 1708 you have a system with more than one CPU, say Y. 1709 1710 If you say N here, the kernel will run on single and multiprocessor 1711 machines, but will use only one CPU of a multiprocessor machine. If 1712 you say Y here, the kernel will run on many, but not all, 1713 singleprocessor machines. On a singleprocessor machine, the kernel 1714 will run faster if you say N here. 1715 1716 People using multiprocessor machines who say Y here should also say 1717 Y to "Enhanced Real Time Clock Support", below. 1718 1719 See also the <file:Documentation/smp.txt> and the SMP-HOWTO 1720 available at <http://www.tldp.org/docs.html#howto>. 1721 1722 If you don't know what to do here, say N. 1723 1724config SYS_SUPPORTS_SMP 1725 bool 1726 1727config NR_CPUS_DEFAULT_1 1728 bool 1729 1730config NR_CPUS_DEFAULT_2 1731 bool 1732 1733config NR_CPUS_DEFAULT_4 1734 bool 1735 1736config NR_CPUS_DEFAULT_8 1737 bool 1738 1739config NR_CPUS_DEFAULT_16 1740 bool 1741 1742config NR_CPUS_DEFAULT_32 1743 bool 1744 1745config NR_CPUS_DEFAULT_64 1746 bool 1747 1748config NR_CPUS 1749 int "Maximum number of CPUs (2-64)" 1750 range 1 64 if NR_CPUS_DEFAULT_1 1751 depends on SMP 1752 default "1" if NR_CPUS_DEFAULT_1 1753 default "2" if NR_CPUS_DEFAULT_2 1754 default "4" if NR_CPUS_DEFAULT_4 1755 default "8" if NR_CPUS_DEFAULT_8 1756 default "16" if NR_CPUS_DEFAULT_16 1757 default "32" if NR_CPUS_DEFAULT_32 1758 default "64" if NR_CPUS_DEFAULT_64 1759 help 1760 This allows you to specify the maximum number of CPUs which this 1761 kernel will support. The maximum supported value is 32 for 32-bit 1762 kernel and 64 for 64-bit kernels; the minimum value which makes 1763 sense is 1 for Qemu (useful only for kernel debugging purposes) 1764 and 2 for all others. 1765 1766 This is purely to save memory - each supported CPU adds 1767 approximately eight kilobytes to the kernel image. For best 1768 performance should round up your number of processors to the next 1769 power of two. 1770 1771source "kernel/time/Kconfig" 1772 1773# 1774# Timer Interrupt Frequency Configuration 1775# 1776 1777choice 1778 prompt "Timer frequency" 1779 default HZ_250 1780 help 1781 Allows the configuration of the timer frequency. 1782 1783 config HZ_48 1784 bool "48 HZ" if SYS_SUPPORTS_48HZ 1785 1786 config HZ_100 1787 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ 1788 1789 config HZ_128 1790 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ 1791 1792 config HZ_250 1793 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ 1794 1795 config HZ_256 1796 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ 1797 1798 config HZ_1000 1799 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ 1800 1801 config HZ_1024 1802 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ 1803 1804endchoice 1805 1806config SYS_SUPPORTS_48HZ 1807 bool 1808 1809config SYS_SUPPORTS_100HZ 1810 bool 1811 1812config SYS_SUPPORTS_128HZ 1813 bool 1814 1815config SYS_SUPPORTS_250HZ 1816 bool 1817 1818config SYS_SUPPORTS_256HZ 1819 bool 1820 1821config SYS_SUPPORTS_1000HZ 1822 bool 1823 1824config SYS_SUPPORTS_1024HZ 1825 bool 1826 1827config SYS_SUPPORTS_ARBIT_HZ 1828 bool 1829 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \ 1830 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \ 1831 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \ 1832 !SYS_SUPPORTS_1024HZ 1833 1834config HZ 1835 int 1836 default 48 if HZ_48 1837 default 100 if HZ_100 1838 default 128 if HZ_128 1839 default 250 if HZ_250 1840 default 256 if HZ_256 1841 default 1000 if HZ_1000 1842 default 1024 if HZ_1024 1843 1844source "kernel/Kconfig.preempt" 1845 1846config MIPS_INSANE_LARGE 1847 bool "Support for large 64-bit configurations" 1848 depends on CPU_R10000 && 64BIT 1849 help 1850 MIPS R10000 does support a 44 bit / 16TB address space as opposed to 1851 previous 64-bit processors which only supported 40 bit / 1TB. If you 1852 need processes of more than 1TB virtual address space, say Y here. 1853 This will result in additional memory usage, so it is not 1854 recommended for normal users. 1855 1856config KEXEC 1857 bool "Kexec system call (EXPERIMENTAL)" 1858 depends on EXPERIMENTAL 1859 help 1860 kexec is a system call that implements the ability to shutdown your 1861 current kernel, and to start another kernel. It is like a reboot 1862 but it is independent of the system firmware. And like a reboot 1863 you can start any kernel with it, not just Linux. 1864 1865 The name comes from the similarity to the exec system call. 1866 1867 It is an ongoing process to be certain the hardware in a machine 1868 is properly shutdown, so do not be surprised if this code does not 1869 initially work for you. It may help to enable device hotplugging 1870 support. As of this writing the exact hardware interface is 1871 strongly in flux, so no good recommendation can be made. 1872 1873config SECCOMP 1874 bool "Enable seccomp to safely compute untrusted bytecode" 1875 depends on PROC_FS 1876 default y 1877 help 1878 This kernel feature is useful for number crunching applications 1879 that may need to compute untrusted bytecode during their 1880 execution. By using pipes or other transports made available to 1881 the process as file descriptors supporting the read/write 1882 syscalls, it's possible to isolate those applications in 1883 their own address space using seccomp. Once seccomp is 1884 enabled via /proc/<pid>/seccomp, it cannot be disabled 1885 and the task is only allowed to execute a few safe syscalls 1886 defined by each seccomp mode. 1887 1888 If unsure, say Y. Only embedded should say N here. 1889 1890endmenu 1891 1892config RWSEM_GENERIC_SPINLOCK 1893 bool 1894 default y 1895 1896config LOCKDEP_SUPPORT 1897 bool 1898 default y 1899 1900config STACKTRACE_SUPPORT 1901 bool 1902 default y 1903 1904source "init/Kconfig" 1905 1906menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)" 1907 1908config HW_HAS_EISA 1909 bool 1910config HW_HAS_PCI 1911 bool 1912 1913config PCI 1914 bool "Support for PCI controller" 1915 depends on HW_HAS_PCI 1916 select PCI_DOMAINS 1917 help 1918 Find out whether you have a PCI motherboard. PCI is the name of a 1919 bus system, i.e. the way the CPU talks to the other stuff inside 1920 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI, 1921 say Y, otherwise N. 1922 1923 The PCI-HOWTO, available from 1924 <http://www.tldp.org/docs.html#howto>, contains valuable 1925 information about which PCI hardware does work under Linux and which 1926 doesn't. 1927 1928config PCI_DOMAINS 1929 bool 1930 1931source "drivers/pci/Kconfig" 1932 1933# 1934# ISA support is now enabled via select. Too many systems still have the one 1935# or other ISA chip on the board that users don't know about so don't expect 1936# users to choose the right thing ... 1937# 1938config ISA 1939 bool 1940 1941config EISA 1942 bool "EISA support" 1943 depends on HW_HAS_EISA 1944 select ISA 1945 select GENERIC_ISA_DMA 1946 ---help--- 1947 The Extended Industry Standard Architecture (EISA) bus was 1948 developed as an open alternative to the IBM MicroChannel bus. 1949 1950 The EISA bus provided some of the features of the IBM MicroChannel 1951 bus while maintaining backward compatibility with cards made for 1952 the older ISA bus. The EISA bus saw limited use between 1988 and 1953 1995 when it was made obsolete by the PCI bus. 1954 1955 Say Y here if you are building a kernel for an EISA-based machine. 1956 1957 Otherwise, say N. 1958 1959source "drivers/eisa/Kconfig" 1960 1961config TC 1962 bool "TURBOchannel support" 1963 depends on MACH_DECSTATION 1964 help 1965 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS 1966 processors. Documentation on writing device drivers for TurboChannel 1967 is available at: 1968 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>. 1969 1970#config ACCESSBUS 1971# bool "Access.Bus support" 1972# depends on TC 1973 1974config MMU 1975 bool 1976 default y 1977 1978config I8253 1979 bool 1980 1981config PCSPEAKER 1982 bool 1983 1984config ZONE_DMA32 1985 bool 1986 1987source "drivers/pcmcia/Kconfig" 1988 1989source "drivers/pci/hotplug/Kconfig" 1990 1991endmenu 1992 1993menu "Executable file formats" 1994 1995source "fs/Kconfig.binfmt" 1996 1997config TRAD_SIGNALS 1998 bool 1999 2000config BINFMT_IRIX 2001 bool "Include IRIX binary compatibility" 2002 depends on CPU_BIG_ENDIAN && 32BIT && BROKEN 2003 2004config MIPS32_COMPAT 2005 bool "Kernel support for Linux/MIPS 32-bit binary compatibility" 2006 depends on 64BIT 2007 help 2008 Select this option if you want Linux/MIPS 32-bit binary 2009 compatibility. Since all software available for Linux/MIPS is 2010 currently 32-bit you should say Y here. 2011 2012config COMPAT 2013 bool 2014 depends on MIPS32_COMPAT 2015 default y 2016 2017config SYSVIPC_COMPAT 2018 bool 2019 depends on COMPAT && SYSVIPC 2020 default y 2021 2022config MIPS32_O32 2023 bool "Kernel support for o32 binaries" 2024 depends on MIPS32_COMPAT 2025 help 2026 Select this option if you want to run o32 binaries. These are pure 2027 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of 2028 existing binaries are in this format. 2029 2030 If unsure, say Y. 2031 2032config MIPS32_N32 2033 bool "Kernel support for n32 binaries" 2034 depends on MIPS32_COMPAT 2035 help 2036 Select this option if you want to run n32 binaries. These are 2037 64-bit binaries using 32-bit quantities for addressing and certain 2038 data that would normally be 64-bit. They are used in special 2039 cases. 2040 2041 If unsure, say N. 2042 2043config BINFMT_ELF32 2044 bool 2045 default y if MIPS32_O32 || MIPS32_N32 2046 2047endmenu 2048 2049menu "Power management options" 2050 2051source "kernel/power/Kconfig" 2052 2053endmenu 2054 2055source "net/Kconfig" 2056 2057source "drivers/Kconfig" 2058 2059source "fs/Kconfig" 2060 2061source "kernel/Kconfig.instrumentation" 2062 2063source "arch/mips/Kconfig.debug" 2064 2065source "security/Kconfig" 2066 2067source "crypto/Kconfig" 2068 2069source "lib/Kconfig" 2070