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