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