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