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