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