18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 28c2ecf20Sopenharmony_ciconfig MIPS 38c2ecf20Sopenharmony_ci bool 48c2ecf20Sopenharmony_ci default y 58c2ecf20Sopenharmony_ci select ARCH_32BIT_OFF_T if !64BIT 68c2ecf20Sopenharmony_ci select ARCH_BINFMT_ELF_STATE if MIPS_FP_SUPPORT 78c2ecf20Sopenharmony_ci select ARCH_HAS_CPU_FINALIZE_INIT 88c2ecf20Sopenharmony_ci select ARCH_HAS_FORTIFY_SOURCE 98c2ecf20Sopenharmony_ci select ARCH_HAS_KCOV 108c2ecf20Sopenharmony_ci select ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE if !EVA 118c2ecf20Sopenharmony_ci select ARCH_HAS_PTE_SPECIAL if !(32BIT && CPU_HAS_RIXI) 128c2ecf20Sopenharmony_ci select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST 138c2ecf20Sopenharmony_ci select ARCH_HAS_UBSAN_SANITIZE_ALL 148c2ecf20Sopenharmony_ci select ARCH_SUPPORTS_UPROBES 158c2ecf20Sopenharmony_ci select ARCH_USE_BUILTIN_BSWAP 168c2ecf20Sopenharmony_ci select ARCH_USE_CMPXCHG_LOCKREF if 64BIT 178c2ecf20Sopenharmony_ci select ARCH_USE_QUEUED_RWLOCKS 188c2ecf20Sopenharmony_ci select ARCH_USE_QUEUED_SPINLOCKS 198c2ecf20Sopenharmony_ci select ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT if MMU 208c2ecf20Sopenharmony_ci select ARCH_WANT_IPC_PARSE_VERSION 218c2ecf20Sopenharmony_ci select BUILDTIME_TABLE_SORT 228c2ecf20Sopenharmony_ci select CLONE_BACKWARDS 238c2ecf20Sopenharmony_ci select CPU_NO_EFFICIENT_FFS if (TARGET_ISA_REV < 1) 248c2ecf20Sopenharmony_ci select CPU_PM if CPU_IDLE 258c2ecf20Sopenharmony_ci select GENERIC_ATOMIC64 if !64BIT 268c2ecf20Sopenharmony_ci select GENERIC_CLOCKEVENTS 278c2ecf20Sopenharmony_ci select GENERIC_CMOS_UPDATE 288c2ecf20Sopenharmony_ci select GENERIC_CPU_AUTOPROBE 298c2ecf20Sopenharmony_ci select GENERIC_GETTIMEOFDAY 308c2ecf20Sopenharmony_ci select GENERIC_IOMAP 318c2ecf20Sopenharmony_ci select GENERIC_IRQ_PROBE 328c2ecf20Sopenharmony_ci select GENERIC_IRQ_SHOW 338c2ecf20Sopenharmony_ci select GENERIC_ISA_DMA if EISA 348c2ecf20Sopenharmony_ci select GENERIC_LIB_ASHLDI3 358c2ecf20Sopenharmony_ci select GENERIC_LIB_ASHRDI3 368c2ecf20Sopenharmony_ci select GENERIC_LIB_CMPDI2 378c2ecf20Sopenharmony_ci select GENERIC_LIB_LSHRDI3 388c2ecf20Sopenharmony_ci select GENERIC_LIB_UCMPDI2 398c2ecf20Sopenharmony_ci select GENERIC_SCHED_CLOCK if !CAVIUM_OCTEON_SOC 408c2ecf20Sopenharmony_ci select GENERIC_SMP_IDLE_THREAD 418c2ecf20Sopenharmony_ci select GENERIC_TIME_VSYSCALL 428c2ecf20Sopenharmony_ci select GUP_GET_PTE_LOW_HIGH if CPU_MIPS32 && PHYS_ADDR_T_64BIT 438c2ecf20Sopenharmony_ci select HANDLE_DOMAIN_IRQ 448c2ecf20Sopenharmony_ci select HAVE_ARCH_COMPILER_H 458c2ecf20Sopenharmony_ci select HAVE_ARCH_JUMP_LABEL 468c2ecf20Sopenharmony_ci select HAVE_ARCH_KGDB 478c2ecf20Sopenharmony_ci select HAVE_ARCH_MMAP_RND_BITS if MMU 488c2ecf20Sopenharmony_ci select HAVE_ARCH_MMAP_RND_COMPAT_BITS if MMU && COMPAT 498c2ecf20Sopenharmony_ci select HAVE_ARCH_SECCOMP_FILTER 508c2ecf20Sopenharmony_ci select HAVE_ARCH_TRACEHOOK 518c2ecf20Sopenharmony_ci select HAVE_ARCH_TRANSPARENT_HUGEPAGE if CPU_SUPPORTS_HUGEPAGES 528c2ecf20Sopenharmony_ci select HAVE_ASM_MODVERSIONS 538c2ecf20Sopenharmony_ci select HAVE_CBPF_JIT if !64BIT && !CPU_MICROMIPS 548c2ecf20Sopenharmony_ci select HAVE_CONTEXT_TRACKING 558c2ecf20Sopenharmony_ci select HAVE_TIF_NOHZ 568c2ecf20Sopenharmony_ci select HAVE_C_RECORDMCOUNT 578c2ecf20Sopenharmony_ci select HAVE_DEBUG_KMEMLEAK 588c2ecf20Sopenharmony_ci select HAVE_DEBUG_STACKOVERFLOW 598c2ecf20Sopenharmony_ci select HAVE_DMA_CONTIGUOUS 608c2ecf20Sopenharmony_ci select HAVE_DYNAMIC_FTRACE 618c2ecf20Sopenharmony_ci select HAVE_EBPF_JIT if 64BIT && !CPU_MICROMIPS && TARGET_ISA_REV >= 2 628c2ecf20Sopenharmony_ci select HAVE_EXIT_THREAD 638c2ecf20Sopenharmony_ci select HAVE_FAST_GUP 648c2ecf20Sopenharmony_ci select HAVE_FTRACE_MCOUNT_RECORD 658c2ecf20Sopenharmony_ci select HAVE_FUNCTION_GRAPH_TRACER 668c2ecf20Sopenharmony_ci select HAVE_FUNCTION_TRACER 678c2ecf20Sopenharmony_ci select HAVE_GCC_PLUGINS 688c2ecf20Sopenharmony_ci select HAVE_GENERIC_VDSO 698c2ecf20Sopenharmony_ci select HAVE_IDE 708c2ecf20Sopenharmony_ci select HAVE_IOREMAP_PROT 718c2ecf20Sopenharmony_ci select HAVE_IRQ_EXIT_ON_IRQ_STACK 728c2ecf20Sopenharmony_ci select HAVE_IRQ_TIME_ACCOUNTING 738c2ecf20Sopenharmony_ci select HAVE_KPROBES 748c2ecf20Sopenharmony_ci select HAVE_KRETPROBES 758c2ecf20Sopenharmony_ci select HAVE_LD_DEAD_CODE_DATA_ELIMINATION 768c2ecf20Sopenharmony_ci select HAVE_MOD_ARCH_SPECIFIC 778c2ecf20Sopenharmony_ci select HAVE_NMI 788c2ecf20Sopenharmony_ci select HAVE_OPROFILE 798c2ecf20Sopenharmony_ci select HAVE_PERF_EVENTS 808c2ecf20Sopenharmony_ci select HAVE_REGS_AND_STACK_ACCESS_API 818c2ecf20Sopenharmony_ci select HAVE_RSEQ 828c2ecf20Sopenharmony_ci select HAVE_SPARSE_SYSCALL_NR 838c2ecf20Sopenharmony_ci select HAVE_STACKPROTECTOR 848c2ecf20Sopenharmony_ci select HAVE_SYSCALL_TRACEPOINTS 858c2ecf20Sopenharmony_ci select HAVE_VIRT_CPU_ACCOUNTING_GEN if 64BIT || !SMP 868c2ecf20Sopenharmony_ci select IRQ_FORCED_THREADING 878c2ecf20Sopenharmony_ci select ISA if EISA 888c2ecf20Sopenharmony_ci select MODULES_USE_ELF_REL if MODULES 898c2ecf20Sopenharmony_ci select MODULES_USE_ELF_RELA if MODULES && 64BIT 908c2ecf20Sopenharmony_ci select PERF_USE_VMALLOC 918c2ecf20Sopenharmony_ci select PCI_MSI_ARCH_FALLBACKS if PCI_MSI 928c2ecf20Sopenharmony_ci select RTC_LIB 938c2ecf20Sopenharmony_ci select SET_FS 948c2ecf20Sopenharmony_ci select SYSCTL_EXCEPTION_TRACE 958c2ecf20Sopenharmony_ci select VIRT_TO_BUS 968c2ecf20Sopenharmony_ci 978c2ecf20Sopenharmony_ciconfig MIPS_FIXUP_BIGPHYS_ADDR 988c2ecf20Sopenharmony_ci bool 998c2ecf20Sopenharmony_ci 1008c2ecf20Sopenharmony_ciconfig MIPS_GENERIC 1018c2ecf20Sopenharmony_ci bool 1028c2ecf20Sopenharmony_ci 1038c2ecf20Sopenharmony_ciconfig MACH_INGENIC 1048c2ecf20Sopenharmony_ci bool 1058c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 1068c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 1078c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT 1088c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 1098c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 1108c2ecf20Sopenharmony_ci select PINCTRL 1118c2ecf20Sopenharmony_ci select GPIOLIB 1128c2ecf20Sopenharmony_ci select COMMON_CLK 1138c2ecf20Sopenharmony_ci select GENERIC_IRQ_CHIP 1148c2ecf20Sopenharmony_ci select BUILTIN_DTB if MIPS_NO_APPENDED_DTB 1158c2ecf20Sopenharmony_ci select USE_OF 1168c2ecf20Sopenharmony_ci select CPU_SUPPORTS_CPUFREQ 1178c2ecf20Sopenharmony_ci select MIPS_EXTERNAL_TIMER 1188c2ecf20Sopenharmony_ci 1198c2ecf20Sopenharmony_cimenu "Machine selection" 1208c2ecf20Sopenharmony_ci 1218c2ecf20Sopenharmony_cichoice 1228c2ecf20Sopenharmony_ci prompt "System type" 1238c2ecf20Sopenharmony_ci default MIPS_GENERIC_KERNEL 1248c2ecf20Sopenharmony_ci 1258c2ecf20Sopenharmony_ciconfig MIPS_GENERIC_KERNEL 1268c2ecf20Sopenharmony_ci bool "Generic board-agnostic MIPS kernel" 1278c2ecf20Sopenharmony_ci select MIPS_GENERIC 1288c2ecf20Sopenharmony_ci select BOOT_RAW 1298c2ecf20Sopenharmony_ci select BUILTIN_DTB 1308c2ecf20Sopenharmony_ci select CEVT_R4K 1318c2ecf20Sopenharmony_ci select CLKSRC_MIPS_GIC 1328c2ecf20Sopenharmony_ci select COMMON_CLK 1338c2ecf20Sopenharmony_ci select CPU_MIPSR2_IRQ_EI 1348c2ecf20Sopenharmony_ci select CPU_MIPSR2_IRQ_VI 1358c2ecf20Sopenharmony_ci select CSRC_R4K 1368c2ecf20Sopenharmony_ci select DMA_PERDEV_COHERENT 1378c2ecf20Sopenharmony_ci select HAVE_PCI 1388c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 1398c2ecf20Sopenharmony_ci select MIPS_AUTO_PFN_OFFSET 1408c2ecf20Sopenharmony_ci select MIPS_CPU_SCACHE 1418c2ecf20Sopenharmony_ci select MIPS_GIC 1428c2ecf20Sopenharmony_ci select MIPS_L1_CACHE_SHIFT_7 1438c2ecf20Sopenharmony_ci select NO_EXCEPT_FILL 1448c2ecf20Sopenharmony_ci select PCI_DRIVERS_GENERIC 1458c2ecf20Sopenharmony_ci select SMP_UP if SMP 1468c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 1478c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R1 1488c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R2 1498c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R6 1508c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS64_R1 1518c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS64_R2 1528c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS64_R6 1538c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 1548c2ecf20Sopenharmony_ci select SYS_SUPPORTS_64BIT_KERNEL 1558c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 1568c2ecf20Sopenharmony_ci select SYS_SUPPORTS_HIGHMEM 1578c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 1588c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MICROMIPS 1598c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MIPS16 1608c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MIPS_CPS 1618c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MULTITHREADING 1628c2ecf20Sopenharmony_ci select SYS_SUPPORTS_RELOCATABLE 1638c2ecf20Sopenharmony_ci select SYS_SUPPORTS_SMARTMIPS 1648c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT 1658c2ecf20Sopenharmony_ci select UHI_BOOT 1668c2ecf20Sopenharmony_ci select USB_EHCI_BIG_ENDIAN_DESC if CPU_BIG_ENDIAN 1678c2ecf20Sopenharmony_ci select USB_EHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN 1688c2ecf20Sopenharmony_ci select USB_OHCI_BIG_ENDIAN_DESC if CPU_BIG_ENDIAN 1698c2ecf20Sopenharmony_ci select USB_OHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN 1708c2ecf20Sopenharmony_ci select USB_UHCI_BIG_ENDIAN_DESC if CPU_BIG_ENDIAN 1718c2ecf20Sopenharmony_ci select USB_UHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN 1728c2ecf20Sopenharmony_ci select USE_OF 1738c2ecf20Sopenharmony_ci help 1748c2ecf20Sopenharmony_ci Select this to build a kernel which aims to support multiple boards, 1758c2ecf20Sopenharmony_ci generally using a flattened device tree passed from the bootloader 1768c2ecf20Sopenharmony_ci using the boot protocol defined in the UHI (Unified Hosting 1778c2ecf20Sopenharmony_ci Interface) specification. 1788c2ecf20Sopenharmony_ci 1798c2ecf20Sopenharmony_ciconfig MIPS_ALCHEMY 1808c2ecf20Sopenharmony_ci bool "Alchemy processor based machines" 1818c2ecf20Sopenharmony_ci select PHYS_ADDR_T_64BIT 1828c2ecf20Sopenharmony_ci select CEVT_R4K 1838c2ecf20Sopenharmony_ci select CSRC_R4K 1848c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 1858c2ecf20Sopenharmony_ci select DMA_MAYBE_COHERENT # Au1000,1500,1100 aren't, rest is 1868c2ecf20Sopenharmony_ci select MIPS_FIXUP_BIGPHYS_ADDR if PCI 1878c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R1 1888c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 1898c2ecf20Sopenharmony_ci select SYS_SUPPORTS_APM_EMULATION 1908c2ecf20Sopenharmony_ci select GPIOLIB 1918c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT 1928c2ecf20Sopenharmony_ci select COMMON_CLK 1938c2ecf20Sopenharmony_ci 1948c2ecf20Sopenharmony_ciconfig AR7 1958c2ecf20Sopenharmony_ci bool "Texas Instruments AR7" 1968c2ecf20Sopenharmony_ci select BOOT_ELF32 1978c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 1988c2ecf20Sopenharmony_ci select CEVT_R4K 1998c2ecf20Sopenharmony_ci select CSRC_R4K 2008c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 2018c2ecf20Sopenharmony_ci select NO_EXCEPT_FILL 2028c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 2038c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R1 2048c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 2058c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 2068c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 2078c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MIPS16 2088c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT_UART16550 2098c2ecf20Sopenharmony_ci select GPIOLIB 2108c2ecf20Sopenharmony_ci select VLYNQ 2118c2ecf20Sopenharmony_ci select HAVE_LEGACY_CLK 2128c2ecf20Sopenharmony_ci help 2138c2ecf20Sopenharmony_ci Support for the Texas Instruments AR7 System-on-a-Chip 2148c2ecf20Sopenharmony_ci family: TNETD7100, 7200 and 7300. 2158c2ecf20Sopenharmony_ci 2168c2ecf20Sopenharmony_ciconfig ATH25 2178c2ecf20Sopenharmony_ci bool "Atheros AR231x/AR531x SoC support" 2188c2ecf20Sopenharmony_ci select CEVT_R4K 2198c2ecf20Sopenharmony_ci select CSRC_R4K 2208c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 2218c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 2228c2ecf20Sopenharmony_ci select IRQ_DOMAIN 2238c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R1 2248c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 2258c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 2268c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 2278c2ecf20Sopenharmony_ci help 2288c2ecf20Sopenharmony_ci Support for Atheros AR231x and Atheros AR531x based boards 2298c2ecf20Sopenharmony_ci 2308c2ecf20Sopenharmony_ciconfig ATH79 2318c2ecf20Sopenharmony_ci bool "Atheros AR71XX/AR724X/AR913X based boards" 2328c2ecf20Sopenharmony_ci select ARCH_HAS_RESET_CONTROLLER 2338c2ecf20Sopenharmony_ci select BOOT_RAW 2348c2ecf20Sopenharmony_ci select CEVT_R4K 2358c2ecf20Sopenharmony_ci select CSRC_R4K 2368c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 2378c2ecf20Sopenharmony_ci select GPIOLIB 2388c2ecf20Sopenharmony_ci select PINCTRL 2398c2ecf20Sopenharmony_ci select COMMON_CLK 2408c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 2418c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R2 2428c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 2438c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 2448c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 2458c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MIPS16 2468c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT_UART_PROM 2478c2ecf20Sopenharmony_ci select USE_OF 2488c2ecf20Sopenharmony_ci select USB_EHCI_ROOT_HUB_TT if USB_EHCI_HCD_PLATFORM 2498c2ecf20Sopenharmony_ci help 2508c2ecf20Sopenharmony_ci Support for the Atheros AR71XX/AR724X/AR913X SoCs. 2518c2ecf20Sopenharmony_ci 2528c2ecf20Sopenharmony_ciconfig BMIPS_GENERIC 2538c2ecf20Sopenharmony_ci bool "Broadcom Generic BMIPS kernel" 2548c2ecf20Sopenharmony_ci select ARCH_HAS_SYNC_DMA_FOR_CPU_ALL 2558c2ecf20Sopenharmony_ci select ARCH_HAS_PHYS_TO_DMA 2568c2ecf20Sopenharmony_ci select BOOT_RAW 2578c2ecf20Sopenharmony_ci select NO_EXCEPT_FILL 2588c2ecf20Sopenharmony_ci select USE_OF 2598c2ecf20Sopenharmony_ci select CEVT_R4K 2608c2ecf20Sopenharmony_ci select CSRC_R4K 2618c2ecf20Sopenharmony_ci select SYNC_R4K 2628c2ecf20Sopenharmony_ci select COMMON_CLK 2638c2ecf20Sopenharmony_ci select BCM6345_L1_IRQ 2648c2ecf20Sopenharmony_ci select BCM7038_L1_IRQ 2658c2ecf20Sopenharmony_ci select BCM7120_L2_IRQ 2668c2ecf20Sopenharmony_ci select BRCMSTB_L2_IRQ 2678c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 2688c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 2698c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 2708c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 2718c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 2728c2ecf20Sopenharmony_ci select SYS_SUPPORTS_HIGHMEM 2738c2ecf20Sopenharmony_ci select SYS_HAS_CPU_BMIPS32_3300 2748c2ecf20Sopenharmony_ci select SYS_HAS_CPU_BMIPS4350 2758c2ecf20Sopenharmony_ci select SYS_HAS_CPU_BMIPS4380 2768c2ecf20Sopenharmony_ci select SYS_HAS_CPU_BMIPS5000 2778c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 2788c2ecf20Sopenharmony_ci select USB_EHCI_BIG_ENDIAN_DESC if CPU_BIG_ENDIAN 2798c2ecf20Sopenharmony_ci select USB_EHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN 2808c2ecf20Sopenharmony_ci select USB_OHCI_BIG_ENDIAN_DESC if CPU_BIG_ENDIAN 2818c2ecf20Sopenharmony_ci select USB_OHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN 2828c2ecf20Sopenharmony_ci select HARDIRQS_SW_RESEND 2838c2ecf20Sopenharmony_ci help 2848c2ecf20Sopenharmony_ci Build a generic DT-based kernel image that boots on select 2858c2ecf20Sopenharmony_ci BCM33xx cable modem chips, BCM63xx DSL chips, and BCM7xxx set-top 2868c2ecf20Sopenharmony_ci box chips. Note that CONFIG_CPU_BIG_ENDIAN/CONFIG_CPU_LITTLE_ENDIAN 2878c2ecf20Sopenharmony_ci must be set appropriately for your board. 2888c2ecf20Sopenharmony_ci 2898c2ecf20Sopenharmony_ciconfig BCM47XX 2908c2ecf20Sopenharmony_ci bool "Broadcom BCM47XX based boards" 2918c2ecf20Sopenharmony_ci select BOOT_RAW 2928c2ecf20Sopenharmony_ci select CEVT_R4K 2938c2ecf20Sopenharmony_ci select CSRC_R4K 2948c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 2958c2ecf20Sopenharmony_ci select HAVE_PCI 2968c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 2978c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R1 2988c2ecf20Sopenharmony_ci select NO_EXCEPT_FILL 2998c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 3008c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 3018c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MIPS16 3028c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT 3038c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 3048c2ecf20Sopenharmony_ci select USE_GENERIC_EARLY_PRINTK_8250 3058c2ecf20Sopenharmony_ci select GPIOLIB 3068c2ecf20Sopenharmony_ci select LEDS_GPIO_REGISTER 3078c2ecf20Sopenharmony_ci select BCM47XX_NVRAM 3088c2ecf20Sopenharmony_ci select BCM47XX_SPROM 3098c2ecf20Sopenharmony_ci select BCM47XX_SSB if !BCM47XX_BCMA 3108c2ecf20Sopenharmony_ci help 3118c2ecf20Sopenharmony_ci Support for BCM47XX based boards 3128c2ecf20Sopenharmony_ci 3138c2ecf20Sopenharmony_ciconfig BCM63XX 3148c2ecf20Sopenharmony_ci bool "Broadcom BCM63XX based boards" 3158c2ecf20Sopenharmony_ci select BOOT_RAW 3168c2ecf20Sopenharmony_ci select CEVT_R4K 3178c2ecf20Sopenharmony_ci select CSRC_R4K 3188c2ecf20Sopenharmony_ci select SYNC_R4K 3198c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 3208c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 3218c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 3228c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 3238c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 3248c2ecf20Sopenharmony_ci select SYS_HAS_CPU_BMIPS32_3300 3258c2ecf20Sopenharmony_ci select SYS_HAS_CPU_BMIPS4350 3268c2ecf20Sopenharmony_ci select SYS_HAS_CPU_BMIPS4380 3278c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 3288c2ecf20Sopenharmony_ci select GPIOLIB 3298c2ecf20Sopenharmony_ci select MIPS_L1_CACHE_SHIFT_4 3308c2ecf20Sopenharmony_ci select CLKDEV_LOOKUP 3318c2ecf20Sopenharmony_ci select HAVE_LEGACY_CLK 3328c2ecf20Sopenharmony_ci help 3338c2ecf20Sopenharmony_ci Support for BCM63XX based boards 3348c2ecf20Sopenharmony_ci 3358c2ecf20Sopenharmony_ciconfig MIPS_COBALT 3368c2ecf20Sopenharmony_ci bool "Cobalt Server" 3378c2ecf20Sopenharmony_ci select CEVT_R4K 3388c2ecf20Sopenharmony_ci select CSRC_R4K 3398c2ecf20Sopenharmony_ci select CEVT_GT641XX 3408c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 3418c2ecf20Sopenharmony_ci select FORCE_PCI 3428c2ecf20Sopenharmony_ci select I8253 3438c2ecf20Sopenharmony_ci select I8259 3448c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 3458c2ecf20Sopenharmony_ci select IRQ_GT641XX 3468c2ecf20Sopenharmony_ci select PCI_GT64XXX_PCI0 3478c2ecf20Sopenharmony_ci select SYS_HAS_CPU_NEVADA 3488c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 3498c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 3508c2ecf20Sopenharmony_ci select SYS_SUPPORTS_64BIT_KERNEL 3518c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 3528c2ecf20Sopenharmony_ci select USE_GENERIC_EARLY_PRINTK_8250 3538c2ecf20Sopenharmony_ci 3548c2ecf20Sopenharmony_ciconfig MACH_DECSTATION 3558c2ecf20Sopenharmony_ci bool "DECstations" 3568c2ecf20Sopenharmony_ci select BOOT_ELF32 3578c2ecf20Sopenharmony_ci select CEVT_DS1287 3588c2ecf20Sopenharmony_ci select CEVT_R4K if CPU_R4X00 3598c2ecf20Sopenharmony_ci select CSRC_IOASIC 3608c2ecf20Sopenharmony_ci select CSRC_R4K if CPU_R4X00 3618c2ecf20Sopenharmony_ci select CPU_DADDI_WORKAROUNDS if 64BIT 3628c2ecf20Sopenharmony_ci select CPU_R4000_WORKAROUNDS if 64BIT 3638c2ecf20Sopenharmony_ci select CPU_R4400_WORKAROUNDS if 64BIT 3648c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 3658c2ecf20Sopenharmony_ci select NO_IOPORT_MAP 3668c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 3678c2ecf20Sopenharmony_ci select SYS_HAS_CPU_R3000 3688c2ecf20Sopenharmony_ci select SYS_HAS_CPU_R4X00 3698c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 3708c2ecf20Sopenharmony_ci select SYS_SUPPORTS_64BIT_KERNEL 3718c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 3728c2ecf20Sopenharmony_ci select SYS_SUPPORTS_128HZ 3738c2ecf20Sopenharmony_ci select SYS_SUPPORTS_256HZ 3748c2ecf20Sopenharmony_ci select SYS_SUPPORTS_1024HZ 3758c2ecf20Sopenharmony_ci select MIPS_L1_CACHE_SHIFT_4 3768c2ecf20Sopenharmony_ci help 3778c2ecf20Sopenharmony_ci This enables support for DEC's MIPS based workstations. For details 3788c2ecf20Sopenharmony_ci see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the 3798c2ecf20Sopenharmony_ci DECstation porting pages on <http://decstation.unix-ag.org/>. 3808c2ecf20Sopenharmony_ci 3818c2ecf20Sopenharmony_ci If you have one of the following DECstation Models you definitely 3828c2ecf20Sopenharmony_ci want to choose R4xx0 for the CPU Type: 3838c2ecf20Sopenharmony_ci 3848c2ecf20Sopenharmony_ci DECstation 5000/50 3858c2ecf20Sopenharmony_ci DECstation 5000/150 3868c2ecf20Sopenharmony_ci DECstation 5000/260 3878c2ecf20Sopenharmony_ci DECsystem 5900/260 3888c2ecf20Sopenharmony_ci 3898c2ecf20Sopenharmony_ci otherwise choose R3000. 3908c2ecf20Sopenharmony_ci 3918c2ecf20Sopenharmony_ciconfig MACH_JAZZ 3928c2ecf20Sopenharmony_ci bool "Jazz family of machines" 3938c2ecf20Sopenharmony_ci select ARC_MEMORY 3948c2ecf20Sopenharmony_ci select ARC_PROMLIB 3958c2ecf20Sopenharmony_ci select ARCH_MIGHT_HAVE_PC_PARPORT 3968c2ecf20Sopenharmony_ci select ARCH_MIGHT_HAVE_PC_SERIO 3978c2ecf20Sopenharmony_ci select DMA_OPS 3988c2ecf20Sopenharmony_ci select FW_ARC 3998c2ecf20Sopenharmony_ci select FW_ARC32 4008c2ecf20Sopenharmony_ci select ARCH_MAY_HAVE_PC_FDC 4018c2ecf20Sopenharmony_ci select CEVT_R4K 4028c2ecf20Sopenharmony_ci select CSRC_R4K 4038c2ecf20Sopenharmony_ci select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN 4048c2ecf20Sopenharmony_ci select GENERIC_ISA_DMA 4058c2ecf20Sopenharmony_ci select HAVE_PCSPKR_PLATFORM 4068c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 4078c2ecf20Sopenharmony_ci select I8253 4088c2ecf20Sopenharmony_ci select I8259 4098c2ecf20Sopenharmony_ci select ISA 4108c2ecf20Sopenharmony_ci select SYS_HAS_CPU_R4X00 4118c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 4128c2ecf20Sopenharmony_ci select SYS_SUPPORTS_64BIT_KERNEL 4138c2ecf20Sopenharmony_ci select SYS_SUPPORTS_100HZ 4148c2ecf20Sopenharmony_ci help 4158c2ecf20Sopenharmony_ci This a family of machines based on the MIPS R4030 chipset which was 4168c2ecf20Sopenharmony_ci used by several vendors to build RISC/os and Windows NT workstations. 4178c2ecf20Sopenharmony_ci Members include the Acer PICA, MIPS Magnum 4000, MIPS Millennium and 4188c2ecf20Sopenharmony_ci Olivetti M700-10 workstations. 4198c2ecf20Sopenharmony_ci 4208c2ecf20Sopenharmony_ciconfig MACH_INGENIC_SOC 4218c2ecf20Sopenharmony_ci bool "Ingenic SoC based machines" 4228c2ecf20Sopenharmony_ci select MIPS_GENERIC 4238c2ecf20Sopenharmony_ci select MACH_INGENIC 4248c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT_UART16550 4258c2ecf20Sopenharmony_ci select CPU_SUPPORTS_CPUFREQ 4268c2ecf20Sopenharmony_ci select MIPS_EXTERNAL_TIMER 4278c2ecf20Sopenharmony_ci 4288c2ecf20Sopenharmony_ciconfig LANTIQ 4298c2ecf20Sopenharmony_ci bool "Lantiq based platforms" 4308c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 4318c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 4328c2ecf20Sopenharmony_ci select CEVT_R4K 4338c2ecf20Sopenharmony_ci select CSRC_R4K 4348c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R1 4358c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R2 4368c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 4378c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 4388c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MIPS16 4398c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MULTITHREADING 4408c2ecf20Sopenharmony_ci select SYS_SUPPORTS_VPE_LOADER 4418c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 4428c2ecf20Sopenharmony_ci select GPIOLIB 4438c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 4448c2ecf20Sopenharmony_ci select BOOT_RAW 4458c2ecf20Sopenharmony_ci select CLKDEV_LOOKUP 4468c2ecf20Sopenharmony_ci select HAVE_LEGACY_CLK 4478c2ecf20Sopenharmony_ci select USE_OF 4488c2ecf20Sopenharmony_ci select PINCTRL 4498c2ecf20Sopenharmony_ci select PINCTRL_LANTIQ 4508c2ecf20Sopenharmony_ci select ARCH_HAS_RESET_CONTROLLER 4518c2ecf20Sopenharmony_ci select RESET_CONTROLLER 4528c2ecf20Sopenharmony_ci 4538c2ecf20Sopenharmony_ciconfig MACH_LOONGSON32 4548c2ecf20Sopenharmony_ci bool "Loongson 32-bit family of machines" 4558c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT 4568c2ecf20Sopenharmony_ci help 4578c2ecf20Sopenharmony_ci This enables support for the Loongson-1 family of machines. 4588c2ecf20Sopenharmony_ci 4598c2ecf20Sopenharmony_ci Loongson-1 is a family of 32-bit MIPS-compatible SoCs developed by 4608c2ecf20Sopenharmony_ci the Institute of Computing Technology (ICT), Chinese Academy of 4618c2ecf20Sopenharmony_ci Sciences (CAS). 4628c2ecf20Sopenharmony_ci 4638c2ecf20Sopenharmony_ciconfig MACH_LOONGSON2EF 4648c2ecf20Sopenharmony_ci bool "Loongson-2E/F family of machines" 4658c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT 4668c2ecf20Sopenharmony_ci help 4678c2ecf20Sopenharmony_ci This enables the support of early Loongson-2E/F family of machines. 4688c2ecf20Sopenharmony_ci 4698c2ecf20Sopenharmony_ciconfig MACH_LOONGSON64 4708c2ecf20Sopenharmony_ci bool "Loongson 64-bit family of machines" 4718c2ecf20Sopenharmony_ci select ARCH_SPARSEMEM_ENABLE 4728c2ecf20Sopenharmony_ci select ARCH_MIGHT_HAVE_PC_PARPORT 4738c2ecf20Sopenharmony_ci select ARCH_MIGHT_HAVE_PC_SERIO 4748c2ecf20Sopenharmony_ci select GENERIC_ISA_DMA_SUPPORT_BROKEN 4758c2ecf20Sopenharmony_ci select BOOT_ELF32 4768c2ecf20Sopenharmony_ci select BOARD_SCACHE 4778c2ecf20Sopenharmony_ci select CSRC_R4K 4788c2ecf20Sopenharmony_ci select CEVT_R4K 4798c2ecf20Sopenharmony_ci select CPU_HAS_WB 4808c2ecf20Sopenharmony_ci select FORCE_PCI 4818c2ecf20Sopenharmony_ci select ISA 4828c2ecf20Sopenharmony_ci select I8259 4838c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 4848c2ecf20Sopenharmony_ci select NO_EXCEPT_FILL 4858c2ecf20Sopenharmony_ci select NR_CPUS_DEFAULT_64 4868c2ecf20Sopenharmony_ci select USE_GENERIC_EARLY_PRINTK_8250 4878c2ecf20Sopenharmony_ci select PCI_DRIVERS_GENERIC 4888c2ecf20Sopenharmony_ci select SYS_HAS_CPU_LOONGSON64 4898c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 4908c2ecf20Sopenharmony_ci select SYS_SUPPORTS_SMP 4918c2ecf20Sopenharmony_ci select SYS_SUPPORTS_HOTPLUG_CPU 4928c2ecf20Sopenharmony_ci select SYS_SUPPORTS_NUMA 4938c2ecf20Sopenharmony_ci select SYS_SUPPORTS_64BIT_KERNEL 4948c2ecf20Sopenharmony_ci select SYS_SUPPORTS_HIGHMEM 4958c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 4968c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT 4978c2ecf20Sopenharmony_ci select ZONE_DMA32 4988c2ecf20Sopenharmony_ci select NUMA 4998c2ecf20Sopenharmony_ci select SMP 5008c2ecf20Sopenharmony_ci select COMMON_CLK 5018c2ecf20Sopenharmony_ci select USE_OF 5028c2ecf20Sopenharmony_ci select BUILTIN_DTB 5038c2ecf20Sopenharmony_ci select PCI_HOST_GENERIC 5048c2ecf20Sopenharmony_ci help 5058c2ecf20Sopenharmony_ci This enables the support of Loongson-2/3 family of machines. 5068c2ecf20Sopenharmony_ci 5078c2ecf20Sopenharmony_ci Loongson-2 and Loongson-3 are 64-bit general-purpose processors with 5088c2ecf20Sopenharmony_ci GS264/GS464/GS464E/GS464V microarchitecture (except old Loongson-2E 5098c2ecf20Sopenharmony_ci and Loongson-2F which will be removed), developed by the Institute 5108c2ecf20Sopenharmony_ci of Computing Technology (ICT), Chinese Academy of Sciences (CAS). 5118c2ecf20Sopenharmony_ci 5128c2ecf20Sopenharmony_ciconfig MACH_PISTACHIO 5138c2ecf20Sopenharmony_ci bool "IMG Pistachio SoC based boards" 5148c2ecf20Sopenharmony_ci select BOOT_ELF32 5158c2ecf20Sopenharmony_ci select BOOT_RAW 5168c2ecf20Sopenharmony_ci select CEVT_R4K 5178c2ecf20Sopenharmony_ci select CLKSRC_MIPS_GIC 5188c2ecf20Sopenharmony_ci select COMMON_CLK 5198c2ecf20Sopenharmony_ci select CSRC_R4K 5208c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 5218c2ecf20Sopenharmony_ci select GPIOLIB 5228c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 5238c2ecf20Sopenharmony_ci select MFD_SYSCON 5248c2ecf20Sopenharmony_ci select MIPS_CPU_SCACHE 5258c2ecf20Sopenharmony_ci select MIPS_GIC 5268c2ecf20Sopenharmony_ci select PINCTRL 5278c2ecf20Sopenharmony_ci select REGULATOR 5288c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R2 5298c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 5308c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 5318c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MIPS_CPS 5328c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MULTITHREADING 5338c2ecf20Sopenharmony_ci select SYS_SUPPORTS_RELOCATABLE 5348c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT 5358c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 5368c2ecf20Sopenharmony_ci select USE_GENERIC_EARLY_PRINTK_8250 5378c2ecf20Sopenharmony_ci select USE_OF 5388c2ecf20Sopenharmony_ci help 5398c2ecf20Sopenharmony_ci This enables support for the IMG Pistachio SoC platform. 5408c2ecf20Sopenharmony_ci 5418c2ecf20Sopenharmony_ciconfig MIPS_MALTA 5428c2ecf20Sopenharmony_ci bool "MIPS Malta board" 5438c2ecf20Sopenharmony_ci select ARCH_MAY_HAVE_PC_FDC 5448c2ecf20Sopenharmony_ci select ARCH_MIGHT_HAVE_PC_PARPORT 5458c2ecf20Sopenharmony_ci select ARCH_MIGHT_HAVE_PC_SERIO 5468c2ecf20Sopenharmony_ci select BOOT_ELF32 5478c2ecf20Sopenharmony_ci select BOOT_RAW 5488c2ecf20Sopenharmony_ci select BUILTIN_DTB 5498c2ecf20Sopenharmony_ci select CEVT_R4K 5508c2ecf20Sopenharmony_ci select CLKSRC_MIPS_GIC 5518c2ecf20Sopenharmony_ci select COMMON_CLK 5528c2ecf20Sopenharmony_ci select CSRC_R4K 5538c2ecf20Sopenharmony_ci select DMA_MAYBE_COHERENT 5548c2ecf20Sopenharmony_ci select GENERIC_ISA_DMA 5558c2ecf20Sopenharmony_ci select HAVE_PCSPKR_PLATFORM 5568c2ecf20Sopenharmony_ci select HAVE_PCI 5578c2ecf20Sopenharmony_ci select I8253 5588c2ecf20Sopenharmony_ci select I8259 5598c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 5608c2ecf20Sopenharmony_ci select MIPS_BONITO64 5618c2ecf20Sopenharmony_ci select MIPS_CPU_SCACHE 5628c2ecf20Sopenharmony_ci select MIPS_GIC 5638c2ecf20Sopenharmony_ci select MIPS_L1_CACHE_SHIFT_6 5648c2ecf20Sopenharmony_ci select MIPS_MSC 5658c2ecf20Sopenharmony_ci select PCI_GT64XXX_PCI0 5668c2ecf20Sopenharmony_ci select SMP_UP if SMP 5678c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 5688c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R1 5698c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R2 5708c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R3_5 5718c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R5 5728c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R6 5738c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS64_R1 5748c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS64_R2 5758c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS64_R6 5768c2ecf20Sopenharmony_ci select SYS_HAS_CPU_NEVADA 5778c2ecf20Sopenharmony_ci select SYS_HAS_CPU_RM7000 5788c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 5798c2ecf20Sopenharmony_ci select SYS_SUPPORTS_64BIT_KERNEL 5808c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 5818c2ecf20Sopenharmony_ci select SYS_SUPPORTS_HIGHMEM 5828c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 5838c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MICROMIPS 5848c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MIPS16 5858c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MIPS_CMP 5868c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MIPS_CPS 5878c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MULTITHREADING 5888c2ecf20Sopenharmony_ci select SYS_SUPPORTS_RELOCATABLE 5898c2ecf20Sopenharmony_ci select SYS_SUPPORTS_SMARTMIPS 5908c2ecf20Sopenharmony_ci select SYS_SUPPORTS_VPE_LOADER 5918c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT 5928c2ecf20Sopenharmony_ci select USE_OF 5938c2ecf20Sopenharmony_ci select WAR_ICACHE_REFILLS 5948c2ecf20Sopenharmony_ci select ZONE_DMA32 if 64BIT 5958c2ecf20Sopenharmony_ci help 5968c2ecf20Sopenharmony_ci This enables support for the MIPS Technologies Malta evaluation 5978c2ecf20Sopenharmony_ci board. 5988c2ecf20Sopenharmony_ci 5998c2ecf20Sopenharmony_ciconfig MACH_PIC32 6008c2ecf20Sopenharmony_ci bool "Microchip PIC32 Family" 6018c2ecf20Sopenharmony_ci help 6028c2ecf20Sopenharmony_ci This enables support for the Microchip PIC32 family of platforms. 6038c2ecf20Sopenharmony_ci 6048c2ecf20Sopenharmony_ci Microchip PIC32 is a family of general-purpose 32 bit MIPS core 6058c2ecf20Sopenharmony_ci microcontrollers. 6068c2ecf20Sopenharmony_ci 6078c2ecf20Sopenharmony_ciconfig MACH_VR41XX 6088c2ecf20Sopenharmony_ci bool "NEC VR4100 series based machines" 6098c2ecf20Sopenharmony_ci select CEVT_R4K 6108c2ecf20Sopenharmony_ci select CSRC_R4K 6118c2ecf20Sopenharmony_ci select SYS_HAS_CPU_VR41XX 6128c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MIPS16 6138c2ecf20Sopenharmony_ci select GPIOLIB 6148c2ecf20Sopenharmony_ci 6158c2ecf20Sopenharmony_ciconfig RALINK 6168c2ecf20Sopenharmony_ci bool "Ralink based machines" 6178c2ecf20Sopenharmony_ci select CEVT_R4K 6188c2ecf20Sopenharmony_ci select CSRC_R4K 6198c2ecf20Sopenharmony_ci select BOOT_RAW 6208c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 6218c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 6228c2ecf20Sopenharmony_ci select USE_OF 6238c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R1 6248c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R2 6258c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 6268c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 6278c2ecf20Sopenharmony_ci select SYS_SUPPORTS_MIPS16 6288c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT 6298c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 6308c2ecf20Sopenharmony_ci select CLKDEV_LOOKUP 6318c2ecf20Sopenharmony_ci select ARCH_HAS_RESET_CONTROLLER 6328c2ecf20Sopenharmony_ci select RESET_CONTROLLER 6338c2ecf20Sopenharmony_ci 6348c2ecf20Sopenharmony_ciconfig SGI_IP22 6358c2ecf20Sopenharmony_ci bool "SGI IP22 (Indy/Indigo2)" 6368c2ecf20Sopenharmony_ci select ARC_MEMORY 6378c2ecf20Sopenharmony_ci select ARC_PROMLIB 6388c2ecf20Sopenharmony_ci select FW_ARC 6398c2ecf20Sopenharmony_ci select FW_ARC32 6408c2ecf20Sopenharmony_ci select ARCH_MIGHT_HAVE_PC_SERIO 6418c2ecf20Sopenharmony_ci select BOOT_ELF32 6428c2ecf20Sopenharmony_ci select CEVT_R4K 6438c2ecf20Sopenharmony_ci select CSRC_R4K 6448c2ecf20Sopenharmony_ci select DEFAULT_SGI_PARTITION 6458c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 6468c2ecf20Sopenharmony_ci select HAVE_EISA 6478c2ecf20Sopenharmony_ci select I8253 6488c2ecf20Sopenharmony_ci select I8259 6498c2ecf20Sopenharmony_ci select IP22_CPU_SCACHE 6508c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 6518c2ecf20Sopenharmony_ci select GENERIC_ISA_DMA_SUPPORT_BROKEN 6528c2ecf20Sopenharmony_ci select SGI_HAS_I8042 6538c2ecf20Sopenharmony_ci select SGI_HAS_INDYDOG 6548c2ecf20Sopenharmony_ci select SGI_HAS_HAL2 6558c2ecf20Sopenharmony_ci select SGI_HAS_SEEQ 6568c2ecf20Sopenharmony_ci select SGI_HAS_WD93 6578c2ecf20Sopenharmony_ci select SGI_HAS_ZILOG 6588c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 6598c2ecf20Sopenharmony_ci select SYS_HAS_CPU_R4X00 6608c2ecf20Sopenharmony_ci select SYS_HAS_CPU_R5000 6618c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 6628c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 6638c2ecf20Sopenharmony_ci select SYS_SUPPORTS_64BIT_KERNEL 6648c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 6658c2ecf20Sopenharmony_ci select WAR_R4600_V1_INDEX_ICACHEOP 6668c2ecf20Sopenharmony_ci select WAR_R4600_V1_HIT_CACHEOP 6678c2ecf20Sopenharmony_ci select WAR_R4600_V2_HIT_CACHEOP 6688c2ecf20Sopenharmony_ci select MIPS_L1_CACHE_SHIFT_7 6698c2ecf20Sopenharmony_ci help 6708c2ecf20Sopenharmony_ci This are the SGI Indy, Challenge S and Indigo2, as well as certain 6718c2ecf20Sopenharmony_ci OEM variants like the Tandem CMN B006S. To compile a Linux kernel 6728c2ecf20Sopenharmony_ci that runs on these, say Y here. 6738c2ecf20Sopenharmony_ci 6748c2ecf20Sopenharmony_ciconfig SGI_IP27 6758c2ecf20Sopenharmony_ci bool "SGI IP27 (Origin200/2000)" 6768c2ecf20Sopenharmony_ci select ARCH_HAS_PHYS_TO_DMA 6778c2ecf20Sopenharmony_ci select ARCH_SPARSEMEM_ENABLE 6788c2ecf20Sopenharmony_ci select FW_ARC 6798c2ecf20Sopenharmony_ci select FW_ARC64 6808c2ecf20Sopenharmony_ci select ARC_CMDLINE_ONLY 6818c2ecf20Sopenharmony_ci select BOOT_ELF64 6828c2ecf20Sopenharmony_ci select DEFAULT_SGI_PARTITION 6838c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 6848c2ecf20Sopenharmony_ci select HAVE_PCI 6858c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 6868c2ecf20Sopenharmony_ci select IRQ_DOMAIN_HIERARCHY 6878c2ecf20Sopenharmony_ci select NR_CPUS_DEFAULT_64 6888c2ecf20Sopenharmony_ci select PCI_DRIVERS_GENERIC 6898c2ecf20Sopenharmony_ci select PCI_XTALK_BRIDGE 6908c2ecf20Sopenharmony_ci select SYS_HAS_CPU_R10000 6918c2ecf20Sopenharmony_ci select SYS_SUPPORTS_64BIT_KERNEL 6928c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 6938c2ecf20Sopenharmony_ci select SYS_SUPPORTS_NUMA 6948c2ecf20Sopenharmony_ci select SYS_SUPPORTS_SMP 6958c2ecf20Sopenharmony_ci select WAR_R10000_LLSC 6968c2ecf20Sopenharmony_ci select MIPS_L1_CACHE_SHIFT_7 6978c2ecf20Sopenharmony_ci select NUMA 6988c2ecf20Sopenharmony_ci help 6998c2ecf20Sopenharmony_ci This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics 7008c2ecf20Sopenharmony_ci workstations. To compile a Linux kernel that runs on these, say Y 7018c2ecf20Sopenharmony_ci here. 7028c2ecf20Sopenharmony_ci 7038c2ecf20Sopenharmony_ciconfig SGI_IP28 7048c2ecf20Sopenharmony_ci bool "SGI IP28 (Indigo2 R10k)" 7058c2ecf20Sopenharmony_ci select ARC_MEMORY 7068c2ecf20Sopenharmony_ci select ARC_PROMLIB 7078c2ecf20Sopenharmony_ci select FW_ARC 7088c2ecf20Sopenharmony_ci select FW_ARC64 7098c2ecf20Sopenharmony_ci select ARCH_MIGHT_HAVE_PC_SERIO 7108c2ecf20Sopenharmony_ci select BOOT_ELF64 7118c2ecf20Sopenharmony_ci select CEVT_R4K 7128c2ecf20Sopenharmony_ci select CSRC_R4K 7138c2ecf20Sopenharmony_ci select DEFAULT_SGI_PARTITION 7148c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 7158c2ecf20Sopenharmony_ci select GENERIC_ISA_DMA_SUPPORT_BROKEN 7168c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 7178c2ecf20Sopenharmony_ci select HAVE_EISA 7188c2ecf20Sopenharmony_ci select I8253 7198c2ecf20Sopenharmony_ci select I8259 7208c2ecf20Sopenharmony_ci select SGI_HAS_I8042 7218c2ecf20Sopenharmony_ci select SGI_HAS_INDYDOG 7228c2ecf20Sopenharmony_ci select SGI_HAS_HAL2 7238c2ecf20Sopenharmony_ci select SGI_HAS_SEEQ 7248c2ecf20Sopenharmony_ci select SGI_HAS_WD93 7258c2ecf20Sopenharmony_ci select SGI_HAS_ZILOG 7268c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 7278c2ecf20Sopenharmony_ci select SYS_HAS_CPU_R10000 7288c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 7298c2ecf20Sopenharmony_ci select SYS_SUPPORTS_64BIT_KERNEL 7308c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 7318c2ecf20Sopenharmony_ci select WAR_R10000_LLSC 7328c2ecf20Sopenharmony_ci select MIPS_L1_CACHE_SHIFT_7 7338c2ecf20Sopenharmony_ci help 7348c2ecf20Sopenharmony_ci This is the SGI Indigo2 with R10000 processor. To compile a Linux 7358c2ecf20Sopenharmony_ci kernel that runs on these, say Y here. 7368c2ecf20Sopenharmony_ci 7378c2ecf20Sopenharmony_ciconfig SGI_IP30 7388c2ecf20Sopenharmony_ci bool "SGI IP30 (Octane/Octane2)" 7398c2ecf20Sopenharmony_ci select ARCH_HAS_PHYS_TO_DMA 7408c2ecf20Sopenharmony_ci select FW_ARC 7418c2ecf20Sopenharmony_ci select FW_ARC64 7428c2ecf20Sopenharmony_ci select BOOT_ELF64 7438c2ecf20Sopenharmony_ci select CEVT_R4K 7448c2ecf20Sopenharmony_ci select CSRC_R4K 7458c2ecf20Sopenharmony_ci select SYNC_R4K if SMP 7468c2ecf20Sopenharmony_ci select ZONE_DMA32 7478c2ecf20Sopenharmony_ci select HAVE_PCI 7488c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 7498c2ecf20Sopenharmony_ci select IRQ_DOMAIN_HIERARCHY 7508c2ecf20Sopenharmony_ci select NR_CPUS_DEFAULT_2 7518c2ecf20Sopenharmony_ci select PCI_DRIVERS_GENERIC 7528c2ecf20Sopenharmony_ci select PCI_XTALK_BRIDGE 7538c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 7548c2ecf20Sopenharmony_ci select SYS_HAS_CPU_R10000 7558c2ecf20Sopenharmony_ci select SYS_SUPPORTS_64BIT_KERNEL 7568c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 7578c2ecf20Sopenharmony_ci select SYS_SUPPORTS_SMP 7588c2ecf20Sopenharmony_ci select WAR_R10000_LLSC 7598c2ecf20Sopenharmony_ci select MIPS_L1_CACHE_SHIFT_7 7608c2ecf20Sopenharmony_ci select ARC_MEMORY 7618c2ecf20Sopenharmony_ci help 7628c2ecf20Sopenharmony_ci These are the SGI Octane and Octane2 graphics workstations. To 7638c2ecf20Sopenharmony_ci compile a Linux kernel that runs on these, say Y here. 7648c2ecf20Sopenharmony_ci 7658c2ecf20Sopenharmony_ciconfig SGI_IP32 7668c2ecf20Sopenharmony_ci bool "SGI IP32 (O2)" 7678c2ecf20Sopenharmony_ci select ARC_MEMORY 7688c2ecf20Sopenharmony_ci select ARC_PROMLIB 7698c2ecf20Sopenharmony_ci select ARCH_HAS_PHYS_TO_DMA 7708c2ecf20Sopenharmony_ci select FW_ARC 7718c2ecf20Sopenharmony_ci select FW_ARC32 7728c2ecf20Sopenharmony_ci select BOOT_ELF32 7738c2ecf20Sopenharmony_ci select CEVT_R4K 7748c2ecf20Sopenharmony_ci select CSRC_R4K 7758c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 7768c2ecf20Sopenharmony_ci select HAVE_PCI 7778c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 7788c2ecf20Sopenharmony_ci select R5000_CPU_SCACHE 7798c2ecf20Sopenharmony_ci select RM7000_CPU_SCACHE 7808c2ecf20Sopenharmony_ci select SYS_HAS_CPU_R5000 7818c2ecf20Sopenharmony_ci select SYS_HAS_CPU_R10000 if BROKEN 7828c2ecf20Sopenharmony_ci select SYS_HAS_CPU_RM7000 7838c2ecf20Sopenharmony_ci select SYS_HAS_CPU_NEVADA 7848c2ecf20Sopenharmony_ci select SYS_SUPPORTS_64BIT_KERNEL 7858c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 7868c2ecf20Sopenharmony_ci select WAR_ICACHE_REFILLS 7878c2ecf20Sopenharmony_ci help 7888c2ecf20Sopenharmony_ci If you want this kernel to run on SGI O2 workstation, say Y here. 7898c2ecf20Sopenharmony_ci 7908c2ecf20Sopenharmony_ciconfig SIBYTE_CRHINE 7918c2ecf20Sopenharmony_ci bool "Sibyte BCM91120C-CRhine" 7928c2ecf20Sopenharmony_ci select BOOT_ELF32 7938c2ecf20Sopenharmony_ci select SIBYTE_BCM1120 7948c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 7958c2ecf20Sopenharmony_ci select SYS_HAS_CPU_SB1 7968c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 7978c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 7988c2ecf20Sopenharmony_ci 7998c2ecf20Sopenharmony_ciconfig SIBYTE_CARMEL 8008c2ecf20Sopenharmony_ci bool "Sibyte BCM91120x-Carmel" 8018c2ecf20Sopenharmony_ci select BOOT_ELF32 8028c2ecf20Sopenharmony_ci select SIBYTE_BCM1120 8038c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 8048c2ecf20Sopenharmony_ci select SYS_HAS_CPU_SB1 8058c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 8068c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 8078c2ecf20Sopenharmony_ci 8088c2ecf20Sopenharmony_ciconfig SIBYTE_CRHONE 8098c2ecf20Sopenharmony_ci bool "Sibyte BCM91125C-CRhone" 8108c2ecf20Sopenharmony_ci select BOOT_ELF32 8118c2ecf20Sopenharmony_ci select SIBYTE_BCM1125 8128c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 8138c2ecf20Sopenharmony_ci select SYS_HAS_CPU_SB1 8148c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 8158c2ecf20Sopenharmony_ci select SYS_SUPPORTS_HIGHMEM 8168c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 8178c2ecf20Sopenharmony_ci 8188c2ecf20Sopenharmony_ciconfig SIBYTE_RHONE 8198c2ecf20Sopenharmony_ci bool "Sibyte BCM91125E-Rhone" 8208c2ecf20Sopenharmony_ci select BOOT_ELF32 8218c2ecf20Sopenharmony_ci select SIBYTE_BCM1125H 8228c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 8238c2ecf20Sopenharmony_ci select SYS_HAS_CPU_SB1 8248c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 8258c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 8268c2ecf20Sopenharmony_ci 8278c2ecf20Sopenharmony_ciconfig SIBYTE_SWARM 8288c2ecf20Sopenharmony_ci bool "Sibyte BCM91250A-SWARM" 8298c2ecf20Sopenharmony_ci select BOOT_ELF32 8308c2ecf20Sopenharmony_ci select HAVE_PATA_PLATFORM 8318c2ecf20Sopenharmony_ci select SIBYTE_SB1250 8328c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 8338c2ecf20Sopenharmony_ci select SYS_HAS_CPU_SB1 8348c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 8358c2ecf20Sopenharmony_ci select SYS_SUPPORTS_HIGHMEM 8368c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 8378c2ecf20Sopenharmony_ci select ZONE_DMA32 if 64BIT 8388c2ecf20Sopenharmony_ci select SWIOTLB if ARCH_DMA_ADDR_T_64BIT && PCI 8398c2ecf20Sopenharmony_ci 8408c2ecf20Sopenharmony_ciconfig SIBYTE_LITTLESUR 8418c2ecf20Sopenharmony_ci bool "Sibyte BCM91250C2-LittleSur" 8428c2ecf20Sopenharmony_ci select BOOT_ELF32 8438c2ecf20Sopenharmony_ci select HAVE_PATA_PLATFORM 8448c2ecf20Sopenharmony_ci select SIBYTE_SB1250 8458c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 8468c2ecf20Sopenharmony_ci select SYS_HAS_CPU_SB1 8478c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 8488c2ecf20Sopenharmony_ci select SYS_SUPPORTS_HIGHMEM 8498c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 8508c2ecf20Sopenharmony_ci select ZONE_DMA32 if 64BIT 8518c2ecf20Sopenharmony_ci 8528c2ecf20Sopenharmony_ciconfig SIBYTE_SENTOSA 8538c2ecf20Sopenharmony_ci bool "Sibyte BCM91250E-Sentosa" 8548c2ecf20Sopenharmony_ci select BOOT_ELF32 8558c2ecf20Sopenharmony_ci select SIBYTE_SB1250 8568c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 8578c2ecf20Sopenharmony_ci select SYS_HAS_CPU_SB1 8588c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 8598c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 8608c2ecf20Sopenharmony_ci select SWIOTLB if ARCH_DMA_ADDR_T_64BIT && PCI 8618c2ecf20Sopenharmony_ci 8628c2ecf20Sopenharmony_ciconfig SIBYTE_BIGSUR 8638c2ecf20Sopenharmony_ci bool "Sibyte BCM91480B-BigSur" 8648c2ecf20Sopenharmony_ci select BOOT_ELF32 8658c2ecf20Sopenharmony_ci select NR_CPUS_DEFAULT_4 8668c2ecf20Sopenharmony_ci select SIBYTE_BCM1x80 8678c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 8688c2ecf20Sopenharmony_ci select SYS_HAS_CPU_SB1 8698c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 8708c2ecf20Sopenharmony_ci select SYS_SUPPORTS_HIGHMEM 8718c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 8728c2ecf20Sopenharmony_ci select ZONE_DMA32 if 64BIT 8738c2ecf20Sopenharmony_ci select SWIOTLB if ARCH_DMA_ADDR_T_64BIT && PCI 8748c2ecf20Sopenharmony_ci 8758c2ecf20Sopenharmony_ciconfig SNI_RM 8768c2ecf20Sopenharmony_ci bool "SNI RM200/300/400" 8778c2ecf20Sopenharmony_ci select ARC_MEMORY 8788c2ecf20Sopenharmony_ci select ARC_PROMLIB 8798c2ecf20Sopenharmony_ci select FW_ARC if CPU_LITTLE_ENDIAN 8808c2ecf20Sopenharmony_ci select FW_ARC32 if CPU_LITTLE_ENDIAN 8818c2ecf20Sopenharmony_ci select FW_SNIPROM if CPU_BIG_ENDIAN 8828c2ecf20Sopenharmony_ci select ARCH_MAY_HAVE_PC_FDC 8838c2ecf20Sopenharmony_ci select ARCH_MIGHT_HAVE_PC_PARPORT 8848c2ecf20Sopenharmony_ci select ARCH_MIGHT_HAVE_PC_SERIO 8858c2ecf20Sopenharmony_ci select BOOT_ELF32 8868c2ecf20Sopenharmony_ci select CEVT_R4K 8878c2ecf20Sopenharmony_ci select CSRC_R4K 8888c2ecf20Sopenharmony_ci select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN 8898c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 8908c2ecf20Sopenharmony_ci select GENERIC_ISA_DMA 8918c2ecf20Sopenharmony_ci select HAVE_EISA 8928c2ecf20Sopenharmony_ci select HAVE_PCSPKR_PLATFORM 8938c2ecf20Sopenharmony_ci select HAVE_PCI 8948c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 8958c2ecf20Sopenharmony_ci select I8253 8968c2ecf20Sopenharmony_ci select I8259 8978c2ecf20Sopenharmony_ci select ISA 8988c2ecf20Sopenharmony_ci select MIPS_L1_CACHE_SHIFT_6 8998c2ecf20Sopenharmony_ci select SWAP_IO_SPACE if CPU_BIG_ENDIAN 9008c2ecf20Sopenharmony_ci select SYS_HAS_CPU_R4X00 9018c2ecf20Sopenharmony_ci select SYS_HAS_CPU_R5000 9028c2ecf20Sopenharmony_ci select SYS_HAS_CPU_R10000 9038c2ecf20Sopenharmony_ci select R5000_CPU_SCACHE 9048c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 9058c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 9068c2ecf20Sopenharmony_ci select SYS_SUPPORTS_64BIT_KERNEL 9078c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 9088c2ecf20Sopenharmony_ci select SYS_SUPPORTS_HIGHMEM 9098c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 9108c2ecf20Sopenharmony_ci select WAR_R4600_V2_HIT_CACHEOP 9118c2ecf20Sopenharmony_ci help 9128c2ecf20Sopenharmony_ci The SNI RM200/300/400 are MIPS-based machines manufactured by 9138c2ecf20Sopenharmony_ci Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid 9148c2ecf20Sopenharmony_ci Technology and now in turn merged with Fujitsu. Say Y here to 9158c2ecf20Sopenharmony_ci support this machine type. 9168c2ecf20Sopenharmony_ci 9178c2ecf20Sopenharmony_ciconfig MACH_TX39XX 9188c2ecf20Sopenharmony_ci bool "Toshiba TX39 series based machines" 9198c2ecf20Sopenharmony_ci 9208c2ecf20Sopenharmony_ciconfig MACH_TX49XX 9218c2ecf20Sopenharmony_ci bool "Toshiba TX49 series based machines" 9228c2ecf20Sopenharmony_ci select WAR_TX49XX_ICACHE_INDEX_INV 9238c2ecf20Sopenharmony_ci 9248c2ecf20Sopenharmony_ciconfig MIKROTIK_RB532 9258c2ecf20Sopenharmony_ci bool "Mikrotik RB532 boards" 9268c2ecf20Sopenharmony_ci select CEVT_R4K 9278c2ecf20Sopenharmony_ci select CSRC_R4K 9288c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 9298c2ecf20Sopenharmony_ci select HAVE_PCI 9308c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 9318c2ecf20Sopenharmony_ci select SYS_HAS_CPU_MIPS32_R1 9328c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 9338c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 9348c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 9358c2ecf20Sopenharmony_ci select BOOT_RAW 9368c2ecf20Sopenharmony_ci select GPIOLIB 9378c2ecf20Sopenharmony_ci select MIPS_L1_CACHE_SHIFT_4 9388c2ecf20Sopenharmony_ci help 9398c2ecf20Sopenharmony_ci Support the Mikrotik(tm) RouterBoard 532 series, 9408c2ecf20Sopenharmony_ci based on the IDT RC32434 SoC. 9418c2ecf20Sopenharmony_ci 9428c2ecf20Sopenharmony_ciconfig CAVIUM_OCTEON_SOC 9438c2ecf20Sopenharmony_ci bool "Cavium Networks Octeon SoC based boards" 9448c2ecf20Sopenharmony_ci select CEVT_R4K 9458c2ecf20Sopenharmony_ci select ARCH_HAS_PHYS_TO_DMA 9468c2ecf20Sopenharmony_ci select HAVE_RAPIDIO 9478c2ecf20Sopenharmony_ci select PHYS_ADDR_T_64BIT 9488c2ecf20Sopenharmony_ci select SYS_SUPPORTS_64BIT_KERNEL 9498c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 9508c2ecf20Sopenharmony_ci select EDAC_SUPPORT 9518c2ecf20Sopenharmony_ci select EDAC_ATOMIC_SCRUB 9528c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 9538c2ecf20Sopenharmony_ci select SYS_SUPPORTS_HOTPLUG_CPU if CPU_BIG_ENDIAN 9548c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 9558c2ecf20Sopenharmony_ci select SYS_HAS_CPU_CAVIUM_OCTEON 9568c2ecf20Sopenharmony_ci select HAVE_PCI 9578c2ecf20Sopenharmony_ci select HAVE_PLAT_DELAY 9588c2ecf20Sopenharmony_ci select HAVE_PLAT_FW_INIT_CMDLINE 9598c2ecf20Sopenharmony_ci select HAVE_PLAT_MEMCPY 9608c2ecf20Sopenharmony_ci select ZONE_DMA32 9618c2ecf20Sopenharmony_ci select HOLES_IN_ZONE 9628c2ecf20Sopenharmony_ci select GPIOLIB 9638c2ecf20Sopenharmony_ci select USE_OF 9648c2ecf20Sopenharmony_ci select ARCH_SPARSEMEM_ENABLE 9658c2ecf20Sopenharmony_ci select SYS_SUPPORTS_SMP 9668c2ecf20Sopenharmony_ci select NR_CPUS_DEFAULT_64 9678c2ecf20Sopenharmony_ci select MIPS_NR_CPU_NR_MAP_1024 9688c2ecf20Sopenharmony_ci select BUILTIN_DTB 9698c2ecf20Sopenharmony_ci select MTD_COMPLEX_MAPPINGS 9708c2ecf20Sopenharmony_ci select SWIOTLB 9718c2ecf20Sopenharmony_ci select SYS_SUPPORTS_RELOCATABLE 9728c2ecf20Sopenharmony_ci help 9738c2ecf20Sopenharmony_ci This option supports all of the Octeon reference boards from Cavium 9748c2ecf20Sopenharmony_ci Networks. It builds a kernel that dynamically determines the Octeon 9758c2ecf20Sopenharmony_ci CPU type and supports all known board reference implementations. 9768c2ecf20Sopenharmony_ci Some of the supported boards are: 9778c2ecf20Sopenharmony_ci EBT3000 9788c2ecf20Sopenharmony_ci EBH3000 9798c2ecf20Sopenharmony_ci EBH3100 9808c2ecf20Sopenharmony_ci Thunder 9818c2ecf20Sopenharmony_ci Kodama 9828c2ecf20Sopenharmony_ci Hikari 9838c2ecf20Sopenharmony_ci Say Y here for most Octeon reference boards. 9848c2ecf20Sopenharmony_ci 9858c2ecf20Sopenharmony_ciconfig NLM_XLR_BOARD 9868c2ecf20Sopenharmony_ci bool "Netlogic XLR/XLS based systems" 9878c2ecf20Sopenharmony_ci select BOOT_ELF32 9888c2ecf20Sopenharmony_ci select NLM_COMMON 9898c2ecf20Sopenharmony_ci select SYS_HAS_CPU_XLR 9908c2ecf20Sopenharmony_ci select SYS_SUPPORTS_SMP 9918c2ecf20Sopenharmony_ci select HAVE_PCI 9928c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 9938c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 9948c2ecf20Sopenharmony_ci select SYS_SUPPORTS_64BIT_KERNEL 9958c2ecf20Sopenharmony_ci select PHYS_ADDR_T_64BIT 9968c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 9978c2ecf20Sopenharmony_ci select SYS_SUPPORTS_HIGHMEM 9988c2ecf20Sopenharmony_ci select NR_CPUS_DEFAULT_32 9998c2ecf20Sopenharmony_ci select CEVT_R4K 10008c2ecf20Sopenharmony_ci select CSRC_R4K 10018c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 10028c2ecf20Sopenharmony_ci select ZONE_DMA32 if 64BIT 10038c2ecf20Sopenharmony_ci select SYNC_R4K 10048c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 10058c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT 10068c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT_UART16550 10078c2ecf20Sopenharmony_ci help 10088c2ecf20Sopenharmony_ci Support for systems based on Netlogic XLR and XLS processors. 10098c2ecf20Sopenharmony_ci Say Y here if you have a XLR or XLS based board. 10108c2ecf20Sopenharmony_ci 10118c2ecf20Sopenharmony_ciconfig NLM_XLP_BOARD 10128c2ecf20Sopenharmony_ci bool "Netlogic XLP based systems" 10138c2ecf20Sopenharmony_ci select BOOT_ELF32 10148c2ecf20Sopenharmony_ci select NLM_COMMON 10158c2ecf20Sopenharmony_ci select SYS_HAS_CPU_XLP 10168c2ecf20Sopenharmony_ci select SYS_SUPPORTS_SMP 10178c2ecf20Sopenharmony_ci select HAVE_PCI 10188c2ecf20Sopenharmony_ci select SYS_SUPPORTS_32BIT_KERNEL 10198c2ecf20Sopenharmony_ci select SYS_SUPPORTS_64BIT_KERNEL 10208c2ecf20Sopenharmony_ci select PHYS_ADDR_T_64BIT 10218c2ecf20Sopenharmony_ci select GPIOLIB 10228c2ecf20Sopenharmony_ci select SYS_SUPPORTS_BIG_ENDIAN 10238c2ecf20Sopenharmony_ci select SYS_SUPPORTS_LITTLE_ENDIAN 10248c2ecf20Sopenharmony_ci select SYS_SUPPORTS_HIGHMEM 10258c2ecf20Sopenharmony_ci select NR_CPUS_DEFAULT_32 10268c2ecf20Sopenharmony_ci select CEVT_R4K 10278c2ecf20Sopenharmony_ci select CSRC_R4K 10288c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 10298c2ecf20Sopenharmony_ci select ZONE_DMA32 if 64BIT 10308c2ecf20Sopenharmony_ci select SYNC_R4K 10318c2ecf20Sopenharmony_ci select SYS_HAS_EARLY_PRINTK 10328c2ecf20Sopenharmony_ci select USE_OF 10338c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT 10348c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT_UART16550 10358c2ecf20Sopenharmony_ci help 10368c2ecf20Sopenharmony_ci This board is based on Netlogic XLP Processor. 10378c2ecf20Sopenharmony_ci Say Y here if you have a XLP based board. 10388c2ecf20Sopenharmony_ci 10398c2ecf20Sopenharmony_ciendchoice 10408c2ecf20Sopenharmony_ci 10418c2ecf20Sopenharmony_cisource "arch/mips/alchemy/Kconfig" 10428c2ecf20Sopenharmony_cisource "arch/mips/ath25/Kconfig" 10438c2ecf20Sopenharmony_cisource "arch/mips/ath79/Kconfig" 10448c2ecf20Sopenharmony_cisource "arch/mips/bcm47xx/Kconfig" 10458c2ecf20Sopenharmony_cisource "arch/mips/bcm63xx/Kconfig" 10468c2ecf20Sopenharmony_cisource "arch/mips/bmips/Kconfig" 10478c2ecf20Sopenharmony_cisource "arch/mips/generic/Kconfig" 10488c2ecf20Sopenharmony_cisource "arch/mips/ingenic/Kconfig" 10498c2ecf20Sopenharmony_cisource "arch/mips/jazz/Kconfig" 10508c2ecf20Sopenharmony_cisource "arch/mips/lantiq/Kconfig" 10518c2ecf20Sopenharmony_cisource "arch/mips/pic32/Kconfig" 10528c2ecf20Sopenharmony_cisource "arch/mips/pistachio/Kconfig" 10538c2ecf20Sopenharmony_cisource "arch/mips/ralink/Kconfig" 10548c2ecf20Sopenharmony_cisource "arch/mips/sgi-ip27/Kconfig" 10558c2ecf20Sopenharmony_cisource "arch/mips/sibyte/Kconfig" 10568c2ecf20Sopenharmony_cisource "arch/mips/txx9/Kconfig" 10578c2ecf20Sopenharmony_cisource "arch/mips/vr41xx/Kconfig" 10588c2ecf20Sopenharmony_cisource "arch/mips/cavium-octeon/Kconfig" 10598c2ecf20Sopenharmony_cisource "arch/mips/loongson2ef/Kconfig" 10608c2ecf20Sopenharmony_cisource "arch/mips/loongson32/Kconfig" 10618c2ecf20Sopenharmony_cisource "arch/mips/loongson64/Kconfig" 10628c2ecf20Sopenharmony_cisource "arch/mips/netlogic/Kconfig" 10638c2ecf20Sopenharmony_ci 10648c2ecf20Sopenharmony_ciendmenu 10658c2ecf20Sopenharmony_ci 10668c2ecf20Sopenharmony_ciconfig GENERIC_HWEIGHT 10678c2ecf20Sopenharmony_ci bool 10688c2ecf20Sopenharmony_ci default y 10698c2ecf20Sopenharmony_ci 10708c2ecf20Sopenharmony_ciconfig GENERIC_CALIBRATE_DELAY 10718c2ecf20Sopenharmony_ci bool 10728c2ecf20Sopenharmony_ci default y 10738c2ecf20Sopenharmony_ci 10748c2ecf20Sopenharmony_ciconfig SCHED_OMIT_FRAME_POINTER 10758c2ecf20Sopenharmony_ci bool 10768c2ecf20Sopenharmony_ci default y 10778c2ecf20Sopenharmony_ci 10788c2ecf20Sopenharmony_ci# 10798c2ecf20Sopenharmony_ci# Select some configuration options automatically based on user selections. 10808c2ecf20Sopenharmony_ci# 10818c2ecf20Sopenharmony_ciconfig FW_ARC 10828c2ecf20Sopenharmony_ci bool 10838c2ecf20Sopenharmony_ci 10848c2ecf20Sopenharmony_ciconfig ARCH_MAY_HAVE_PC_FDC 10858c2ecf20Sopenharmony_ci bool 10868c2ecf20Sopenharmony_ci 10878c2ecf20Sopenharmony_ciconfig BOOT_RAW 10888c2ecf20Sopenharmony_ci bool 10898c2ecf20Sopenharmony_ci 10908c2ecf20Sopenharmony_ciconfig CEVT_BCM1480 10918c2ecf20Sopenharmony_ci bool 10928c2ecf20Sopenharmony_ci 10938c2ecf20Sopenharmony_ciconfig CEVT_DS1287 10948c2ecf20Sopenharmony_ci bool 10958c2ecf20Sopenharmony_ci 10968c2ecf20Sopenharmony_ciconfig CEVT_GT641XX 10978c2ecf20Sopenharmony_ci bool 10988c2ecf20Sopenharmony_ci 10998c2ecf20Sopenharmony_ciconfig CEVT_R4K 11008c2ecf20Sopenharmony_ci bool 11018c2ecf20Sopenharmony_ci 11028c2ecf20Sopenharmony_ciconfig CEVT_SB1250 11038c2ecf20Sopenharmony_ci bool 11048c2ecf20Sopenharmony_ci 11058c2ecf20Sopenharmony_ciconfig CEVT_TXX9 11068c2ecf20Sopenharmony_ci bool 11078c2ecf20Sopenharmony_ci 11088c2ecf20Sopenharmony_ciconfig CSRC_BCM1480 11098c2ecf20Sopenharmony_ci bool 11108c2ecf20Sopenharmony_ci 11118c2ecf20Sopenharmony_ciconfig CSRC_IOASIC 11128c2ecf20Sopenharmony_ci bool 11138c2ecf20Sopenharmony_ci 11148c2ecf20Sopenharmony_ciconfig CSRC_R4K 11158c2ecf20Sopenharmony_ci select CLOCKSOURCE_WATCHDOG if CPU_FREQ 11168c2ecf20Sopenharmony_ci bool 11178c2ecf20Sopenharmony_ci 11188c2ecf20Sopenharmony_ciconfig CSRC_SB1250 11198c2ecf20Sopenharmony_ci bool 11208c2ecf20Sopenharmony_ci 11218c2ecf20Sopenharmony_ciconfig MIPS_CLOCK_VSYSCALL 11228c2ecf20Sopenharmony_ci def_bool CSRC_R4K || CLKSRC_MIPS_GIC 11238c2ecf20Sopenharmony_ci 11248c2ecf20Sopenharmony_ciconfig GPIO_TXX9 11258c2ecf20Sopenharmony_ci select GPIOLIB 11268c2ecf20Sopenharmony_ci bool 11278c2ecf20Sopenharmony_ci 11288c2ecf20Sopenharmony_ciconfig FW_CFE 11298c2ecf20Sopenharmony_ci bool 11308c2ecf20Sopenharmony_ci 11318c2ecf20Sopenharmony_ciconfig ARCH_SUPPORTS_UPROBES 11328c2ecf20Sopenharmony_ci bool 11338c2ecf20Sopenharmony_ci 11348c2ecf20Sopenharmony_ciconfig DMA_MAYBE_COHERENT 11358c2ecf20Sopenharmony_ci select ARCH_HAS_DMA_COHERENCE_H 11368c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 11378c2ecf20Sopenharmony_ci bool 11388c2ecf20Sopenharmony_ci 11398c2ecf20Sopenharmony_ciconfig DMA_PERDEV_COHERENT 11408c2ecf20Sopenharmony_ci bool 11418c2ecf20Sopenharmony_ci select ARCH_HAS_SETUP_DMA_OPS 11428c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 11438c2ecf20Sopenharmony_ci 11448c2ecf20Sopenharmony_ciconfig DMA_NONCOHERENT 11458c2ecf20Sopenharmony_ci bool 11468c2ecf20Sopenharmony_ci # 11478c2ecf20Sopenharmony_ci # MIPS allows mixing "slightly different" Cacheability and Coherency 11488c2ecf20Sopenharmony_ci # Attribute bits. It is believed that the uncached access through 11498c2ecf20Sopenharmony_ci # KSEG1 and the implementation specific "uncached accelerated" used 11508c2ecf20Sopenharmony_ci # by pgprot_writcombine can be mixed, and the latter sometimes provides 11518c2ecf20Sopenharmony_ci # significant advantages. 11528c2ecf20Sopenharmony_ci # 11538c2ecf20Sopenharmony_ci select ARCH_HAS_DMA_WRITE_COMBINE 11548c2ecf20Sopenharmony_ci select ARCH_HAS_DMA_PREP_COHERENT 11558c2ecf20Sopenharmony_ci select ARCH_HAS_SYNC_DMA_FOR_DEVICE 11568c2ecf20Sopenharmony_ci select ARCH_HAS_DMA_SET_UNCACHED 11578c2ecf20Sopenharmony_ci select DMA_NONCOHERENT_MMAP 11588c2ecf20Sopenharmony_ci select NEED_DMA_MAP_STATE 11598c2ecf20Sopenharmony_ci 11608c2ecf20Sopenharmony_ciconfig SYS_HAS_EARLY_PRINTK 11618c2ecf20Sopenharmony_ci bool 11628c2ecf20Sopenharmony_ci 11638c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_HOTPLUG_CPU 11648c2ecf20Sopenharmony_ci bool 11658c2ecf20Sopenharmony_ci 11668c2ecf20Sopenharmony_ciconfig MIPS_BONITO64 11678c2ecf20Sopenharmony_ci bool 11688c2ecf20Sopenharmony_ci 11698c2ecf20Sopenharmony_ciconfig MIPS_MSC 11708c2ecf20Sopenharmony_ci bool 11718c2ecf20Sopenharmony_ci 11728c2ecf20Sopenharmony_ciconfig SYNC_R4K 11738c2ecf20Sopenharmony_ci bool 11748c2ecf20Sopenharmony_ci 11758c2ecf20Sopenharmony_ciconfig NO_IOPORT_MAP 11768c2ecf20Sopenharmony_ci def_bool n 11778c2ecf20Sopenharmony_ci 11788c2ecf20Sopenharmony_ciconfig GENERIC_CSUM 11798c2ecf20Sopenharmony_ci def_bool CPU_NO_LOAD_STORE_LR 11808c2ecf20Sopenharmony_ci 11818c2ecf20Sopenharmony_ciconfig GENERIC_ISA_DMA 11828c2ecf20Sopenharmony_ci bool 11838c2ecf20Sopenharmony_ci select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n 11848c2ecf20Sopenharmony_ci select ISA_DMA_API 11858c2ecf20Sopenharmony_ci 11868c2ecf20Sopenharmony_ciconfig GENERIC_ISA_DMA_SUPPORT_BROKEN 11878c2ecf20Sopenharmony_ci bool 11888c2ecf20Sopenharmony_ci select GENERIC_ISA_DMA 11898c2ecf20Sopenharmony_ci 11908c2ecf20Sopenharmony_ciconfig HAVE_PLAT_DELAY 11918c2ecf20Sopenharmony_ci bool 11928c2ecf20Sopenharmony_ci 11938c2ecf20Sopenharmony_ciconfig HAVE_PLAT_FW_INIT_CMDLINE 11948c2ecf20Sopenharmony_ci bool 11958c2ecf20Sopenharmony_ci 11968c2ecf20Sopenharmony_ciconfig HAVE_PLAT_MEMCPY 11978c2ecf20Sopenharmony_ci bool 11988c2ecf20Sopenharmony_ci 11998c2ecf20Sopenharmony_ciconfig ISA_DMA_API 12008c2ecf20Sopenharmony_ci bool 12018c2ecf20Sopenharmony_ci 12028c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_RELOCATABLE 12038c2ecf20Sopenharmony_ci bool 12048c2ecf20Sopenharmony_ci help 12058c2ecf20Sopenharmony_ci Selected if the platform supports relocating the kernel. 12068c2ecf20Sopenharmony_ci The platform must provide plat_get_fdt() if it selects CONFIG_USE_OF 12078c2ecf20Sopenharmony_ci to allow access to command line and entropy sources. 12088c2ecf20Sopenharmony_ci 12098c2ecf20Sopenharmony_ciconfig MIPS_CBPF_JIT 12108c2ecf20Sopenharmony_ci def_bool y 12118c2ecf20Sopenharmony_ci depends on BPF_JIT && HAVE_CBPF_JIT 12128c2ecf20Sopenharmony_ci 12138c2ecf20Sopenharmony_ciconfig MIPS_EBPF_JIT 12148c2ecf20Sopenharmony_ci def_bool y 12158c2ecf20Sopenharmony_ci depends on BPF_JIT && HAVE_EBPF_JIT 12168c2ecf20Sopenharmony_ci 12178c2ecf20Sopenharmony_ci 12188c2ecf20Sopenharmony_ci# 12198c2ecf20Sopenharmony_ci# Endianness selection. Sufficiently obscure so many users don't know what to 12208c2ecf20Sopenharmony_ci# answer,so we try hard to limit the available choices. Also the use of a 12218c2ecf20Sopenharmony_ci# choice statement should be more obvious to the user. 12228c2ecf20Sopenharmony_ci# 12238c2ecf20Sopenharmony_cichoice 12248c2ecf20Sopenharmony_ci prompt "Endianness selection" 12258c2ecf20Sopenharmony_ci help 12268c2ecf20Sopenharmony_ci Some MIPS machines can be configured for either little or big endian 12278c2ecf20Sopenharmony_ci byte order. These modes require different kernels and a different 12288c2ecf20Sopenharmony_ci Linux distribution. In general there is one preferred byteorder for a 12298c2ecf20Sopenharmony_ci particular system but some systems are just as commonly used in the 12308c2ecf20Sopenharmony_ci one or the other endianness. 12318c2ecf20Sopenharmony_ci 12328c2ecf20Sopenharmony_ciconfig CPU_BIG_ENDIAN 12338c2ecf20Sopenharmony_ci bool "Big endian" 12348c2ecf20Sopenharmony_ci depends on SYS_SUPPORTS_BIG_ENDIAN 12358c2ecf20Sopenharmony_ci 12368c2ecf20Sopenharmony_ciconfig CPU_LITTLE_ENDIAN 12378c2ecf20Sopenharmony_ci bool "Little endian" 12388c2ecf20Sopenharmony_ci depends on SYS_SUPPORTS_LITTLE_ENDIAN 12398c2ecf20Sopenharmony_ci 12408c2ecf20Sopenharmony_ciendchoice 12418c2ecf20Sopenharmony_ci 12428c2ecf20Sopenharmony_ciconfig EXPORT_UASM 12438c2ecf20Sopenharmony_ci bool 12448c2ecf20Sopenharmony_ci 12458c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_APM_EMULATION 12468c2ecf20Sopenharmony_ci bool 12478c2ecf20Sopenharmony_ci 12488c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_BIG_ENDIAN 12498c2ecf20Sopenharmony_ci bool 12508c2ecf20Sopenharmony_ci 12518c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_LITTLE_ENDIAN 12528c2ecf20Sopenharmony_ci bool 12538c2ecf20Sopenharmony_ci 12548c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_HUGETLBFS 12558c2ecf20Sopenharmony_ci bool 12568c2ecf20Sopenharmony_ci depends on CPU_SUPPORTS_HUGEPAGES 12578c2ecf20Sopenharmony_ci default y 12588c2ecf20Sopenharmony_ci 12598c2ecf20Sopenharmony_ciconfig MIPS_HUGE_TLB_SUPPORT 12608c2ecf20Sopenharmony_ci def_bool HUGETLB_PAGE || TRANSPARENT_HUGEPAGE 12618c2ecf20Sopenharmony_ci 12628c2ecf20Sopenharmony_ciconfig IRQ_CPU_RM7K 12638c2ecf20Sopenharmony_ci bool 12648c2ecf20Sopenharmony_ci 12658c2ecf20Sopenharmony_ciconfig IRQ_MSP_SLP 12668c2ecf20Sopenharmony_ci bool 12678c2ecf20Sopenharmony_ci 12688c2ecf20Sopenharmony_ciconfig IRQ_MSP_CIC 12698c2ecf20Sopenharmony_ci bool 12708c2ecf20Sopenharmony_ci 12718c2ecf20Sopenharmony_ciconfig IRQ_TXX9 12728c2ecf20Sopenharmony_ci bool 12738c2ecf20Sopenharmony_ci 12748c2ecf20Sopenharmony_ciconfig IRQ_GT641XX 12758c2ecf20Sopenharmony_ci bool 12768c2ecf20Sopenharmony_ci 12778c2ecf20Sopenharmony_ciconfig PCI_GT64XXX_PCI0 12788c2ecf20Sopenharmony_ci bool 12798c2ecf20Sopenharmony_ci 12808c2ecf20Sopenharmony_ciconfig PCI_XTALK_BRIDGE 12818c2ecf20Sopenharmony_ci bool 12828c2ecf20Sopenharmony_ci 12838c2ecf20Sopenharmony_ciconfig NO_EXCEPT_FILL 12848c2ecf20Sopenharmony_ci bool 12858c2ecf20Sopenharmony_ci 12868c2ecf20Sopenharmony_ciconfig MIPS_SPRAM 12878c2ecf20Sopenharmony_ci bool 12888c2ecf20Sopenharmony_ci 12898c2ecf20Sopenharmony_ciconfig SWAP_IO_SPACE 12908c2ecf20Sopenharmony_ci bool 12918c2ecf20Sopenharmony_ci 12928c2ecf20Sopenharmony_ciconfig SGI_HAS_INDYDOG 12938c2ecf20Sopenharmony_ci bool 12948c2ecf20Sopenharmony_ci 12958c2ecf20Sopenharmony_ciconfig SGI_HAS_HAL2 12968c2ecf20Sopenharmony_ci bool 12978c2ecf20Sopenharmony_ci 12988c2ecf20Sopenharmony_ciconfig SGI_HAS_SEEQ 12998c2ecf20Sopenharmony_ci bool 13008c2ecf20Sopenharmony_ci 13018c2ecf20Sopenharmony_ciconfig SGI_HAS_WD93 13028c2ecf20Sopenharmony_ci bool 13038c2ecf20Sopenharmony_ci 13048c2ecf20Sopenharmony_ciconfig SGI_HAS_ZILOG 13058c2ecf20Sopenharmony_ci bool 13068c2ecf20Sopenharmony_ci 13078c2ecf20Sopenharmony_ciconfig SGI_HAS_I8042 13088c2ecf20Sopenharmony_ci bool 13098c2ecf20Sopenharmony_ci 13108c2ecf20Sopenharmony_ciconfig DEFAULT_SGI_PARTITION 13118c2ecf20Sopenharmony_ci bool 13128c2ecf20Sopenharmony_ci 13138c2ecf20Sopenharmony_ciconfig FW_ARC32 13148c2ecf20Sopenharmony_ci bool 13158c2ecf20Sopenharmony_ci 13168c2ecf20Sopenharmony_ciconfig FW_SNIPROM 13178c2ecf20Sopenharmony_ci bool 13188c2ecf20Sopenharmony_ci 13198c2ecf20Sopenharmony_ciconfig BOOT_ELF32 13208c2ecf20Sopenharmony_ci bool 13218c2ecf20Sopenharmony_ci 13228c2ecf20Sopenharmony_ciconfig MIPS_L1_CACHE_SHIFT_4 13238c2ecf20Sopenharmony_ci bool 13248c2ecf20Sopenharmony_ci 13258c2ecf20Sopenharmony_ciconfig MIPS_L1_CACHE_SHIFT_5 13268c2ecf20Sopenharmony_ci bool 13278c2ecf20Sopenharmony_ci 13288c2ecf20Sopenharmony_ciconfig MIPS_L1_CACHE_SHIFT_6 13298c2ecf20Sopenharmony_ci bool 13308c2ecf20Sopenharmony_ci 13318c2ecf20Sopenharmony_ciconfig MIPS_L1_CACHE_SHIFT_7 13328c2ecf20Sopenharmony_ci bool 13338c2ecf20Sopenharmony_ci 13348c2ecf20Sopenharmony_ciconfig MIPS_L1_CACHE_SHIFT 13358c2ecf20Sopenharmony_ci int 13368c2ecf20Sopenharmony_ci default "7" if MIPS_L1_CACHE_SHIFT_7 13378c2ecf20Sopenharmony_ci default "6" if MIPS_L1_CACHE_SHIFT_6 13388c2ecf20Sopenharmony_ci default "5" if MIPS_L1_CACHE_SHIFT_5 13398c2ecf20Sopenharmony_ci default "4" if MIPS_L1_CACHE_SHIFT_4 13408c2ecf20Sopenharmony_ci default "5" 13418c2ecf20Sopenharmony_ci 13428c2ecf20Sopenharmony_ciconfig ARC_CMDLINE_ONLY 13438c2ecf20Sopenharmony_ci bool 13448c2ecf20Sopenharmony_ci 13458c2ecf20Sopenharmony_ciconfig ARC_CONSOLE 13468c2ecf20Sopenharmony_ci bool "ARC console support" 13478c2ecf20Sopenharmony_ci depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN) 13488c2ecf20Sopenharmony_ci 13498c2ecf20Sopenharmony_ciconfig ARC_MEMORY 13508c2ecf20Sopenharmony_ci bool 13518c2ecf20Sopenharmony_ci 13528c2ecf20Sopenharmony_ciconfig ARC_PROMLIB 13538c2ecf20Sopenharmony_ci bool 13548c2ecf20Sopenharmony_ci 13558c2ecf20Sopenharmony_ciconfig FW_ARC64 13568c2ecf20Sopenharmony_ci bool 13578c2ecf20Sopenharmony_ci 13588c2ecf20Sopenharmony_ciconfig BOOT_ELF64 13598c2ecf20Sopenharmony_ci bool 13608c2ecf20Sopenharmony_ci 13618c2ecf20Sopenharmony_cimenu "CPU selection" 13628c2ecf20Sopenharmony_ci 13638c2ecf20Sopenharmony_cichoice 13648c2ecf20Sopenharmony_ci prompt "CPU type" 13658c2ecf20Sopenharmony_ci default CPU_R4X00 13668c2ecf20Sopenharmony_ci 13678c2ecf20Sopenharmony_ciconfig CPU_LOONGSON64 13688c2ecf20Sopenharmony_ci bool "Loongson 64-bit CPU" 13698c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_LOONGSON64 13708c2ecf20Sopenharmony_ci select ARCH_HAS_PHYS_TO_DMA 13718c2ecf20Sopenharmony_ci select CPU_MIPSR2 13728c2ecf20Sopenharmony_ci select CPU_HAS_PREFETCH 13738c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 13748c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 13758c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HUGEPAGES 13768c2ecf20Sopenharmony_ci select CPU_SUPPORTS_MSA 13778c2ecf20Sopenharmony_ci select CPU_DIEI_BROKEN if !LOONGSON3_ENHANCEMENT 13788c2ecf20Sopenharmony_ci select CPU_MIPSR2_IRQ_VI 13798c2ecf20Sopenharmony_ci select WEAK_ORDERING 13808c2ecf20Sopenharmony_ci select WEAK_REORDERING_BEYOND_LLSC 13818c2ecf20Sopenharmony_ci select MIPS_ASID_BITS_VARIABLE 13828c2ecf20Sopenharmony_ci select MIPS_PGD_C0_CONTEXT 13838c2ecf20Sopenharmony_ci select MIPS_L1_CACHE_SHIFT_6 13848c2ecf20Sopenharmony_ci select MIPS_FP_SUPPORT 13858c2ecf20Sopenharmony_ci select GPIOLIB 13868c2ecf20Sopenharmony_ci select SWIOTLB 13878c2ecf20Sopenharmony_ci select HAVE_KVM 13888c2ecf20Sopenharmony_ci help 13898c2ecf20Sopenharmony_ci The Loongson GSx64(GS264/GS464/GS464E/GS464V) series of processor 13908c2ecf20Sopenharmony_ci cores implements the MIPS64R2 instruction set with many extensions, 13918c2ecf20Sopenharmony_ci including most 64-bit Loongson-2 (2H, 2K) and Loongson-3 (3A1000, 13928c2ecf20Sopenharmony_ci 3B1000, 3B1500, 3A2000, 3A3000 and 3A4000) processors. However, old 13938c2ecf20Sopenharmony_ci Loongson-2E/2F is not covered here and will be removed in future. 13948c2ecf20Sopenharmony_ci 13958c2ecf20Sopenharmony_ciconfig LOONGSON3_ENHANCEMENT 13968c2ecf20Sopenharmony_ci bool "New Loongson-3 CPU Enhancements" 13978c2ecf20Sopenharmony_ci default n 13988c2ecf20Sopenharmony_ci depends on CPU_LOONGSON64 13998c2ecf20Sopenharmony_ci help 14008c2ecf20Sopenharmony_ci New Loongson-3 cores (since Loongson-3A R2, as opposed to Loongson-3A 14018c2ecf20Sopenharmony_ci R1, Loongson-3B R1 and Loongson-3B R2) has many enhancements, such as 14028c2ecf20Sopenharmony_ci FTLB, L1-VCache, EI/DI/Wait/Prefetch instruction, DSP/DSPr2 ASE, User 14038c2ecf20Sopenharmony_ci Local register, Read-Inhibit/Execute-Inhibit, SFB (Store Fill Buffer), 14048c2ecf20Sopenharmony_ci Fast TLB refill support, etc. 14058c2ecf20Sopenharmony_ci 14068c2ecf20Sopenharmony_ci This option enable those enhancements which are not probed at run 14078c2ecf20Sopenharmony_ci time. If you want a generic kernel to run on all Loongson 3 machines, 14088c2ecf20Sopenharmony_ci please say 'N' here. If you want a high-performance kernel to run on 14098c2ecf20Sopenharmony_ci new Loongson-3 machines only, please say 'Y' here. 14108c2ecf20Sopenharmony_ci 14118c2ecf20Sopenharmony_ciconfig CPU_LOONGSON3_WORKAROUNDS 14128c2ecf20Sopenharmony_ci bool "Old Loongson-3 LLSC Workarounds" 14138c2ecf20Sopenharmony_ci default y if SMP 14148c2ecf20Sopenharmony_ci depends on CPU_LOONGSON64 14158c2ecf20Sopenharmony_ci help 14168c2ecf20Sopenharmony_ci Loongson-3 processors have the llsc issues which require workarounds. 14178c2ecf20Sopenharmony_ci Without workarounds the system may hang unexpectedly. 14188c2ecf20Sopenharmony_ci 14198c2ecf20Sopenharmony_ci Newer Loongson-3 will fix these issues and no workarounds are needed. 14208c2ecf20Sopenharmony_ci The workarounds have no significant side effect on them but may 14218c2ecf20Sopenharmony_ci decrease the performance of the system so this option should be 14228c2ecf20Sopenharmony_ci disabled unless the kernel is intended to be run on old systems. 14238c2ecf20Sopenharmony_ci 14248c2ecf20Sopenharmony_ci If unsure, please say Y. 14258c2ecf20Sopenharmony_ci 14268c2ecf20Sopenharmony_ciconfig CPU_LOONGSON3_CPUCFG_EMULATION 14278c2ecf20Sopenharmony_ci bool "Emulate the CPUCFG instruction on older Loongson cores" 14288c2ecf20Sopenharmony_ci default y 14298c2ecf20Sopenharmony_ci depends on CPU_LOONGSON64 14308c2ecf20Sopenharmony_ci help 14318c2ecf20Sopenharmony_ci Loongson-3A R4 and newer have the CPUCFG instruction available for 14328c2ecf20Sopenharmony_ci userland to query CPU capabilities, much like CPUID on x86. This 14338c2ecf20Sopenharmony_ci option provides emulation of the instruction on older Loongson 14348c2ecf20Sopenharmony_ci cores, back to Loongson-3A1000. 14358c2ecf20Sopenharmony_ci 14368c2ecf20Sopenharmony_ci If unsure, please say Y. 14378c2ecf20Sopenharmony_ci 14388c2ecf20Sopenharmony_ciconfig CPU_LOONGSON2E 14398c2ecf20Sopenharmony_ci bool "Loongson 2E" 14408c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_LOONGSON2E 14418c2ecf20Sopenharmony_ci select CPU_LOONGSON2EF 14428c2ecf20Sopenharmony_ci help 14438c2ecf20Sopenharmony_ci The Loongson 2E processor implements the MIPS III instruction set 14448c2ecf20Sopenharmony_ci with many extensions. 14458c2ecf20Sopenharmony_ci 14468c2ecf20Sopenharmony_ci It has an internal FPGA northbridge, which is compatible to 14478c2ecf20Sopenharmony_ci bonito64. 14488c2ecf20Sopenharmony_ci 14498c2ecf20Sopenharmony_ciconfig CPU_LOONGSON2F 14508c2ecf20Sopenharmony_ci bool "Loongson 2F" 14518c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_LOONGSON2F 14528c2ecf20Sopenharmony_ci select CPU_LOONGSON2EF 14538c2ecf20Sopenharmony_ci select GPIOLIB 14548c2ecf20Sopenharmony_ci help 14558c2ecf20Sopenharmony_ci The Loongson 2F processor implements the MIPS III instruction set 14568c2ecf20Sopenharmony_ci with many extensions. 14578c2ecf20Sopenharmony_ci 14588c2ecf20Sopenharmony_ci Loongson2F have built-in DDR2 and PCIX controller. The PCIX controller 14598c2ecf20Sopenharmony_ci have a similar programming interface with FPGA northbridge used in 14608c2ecf20Sopenharmony_ci Loongson2E. 14618c2ecf20Sopenharmony_ci 14628c2ecf20Sopenharmony_ciconfig CPU_LOONGSON1B 14638c2ecf20Sopenharmony_ci bool "Loongson 1B" 14648c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_LOONGSON1B 14658c2ecf20Sopenharmony_ci select CPU_LOONGSON32 14668c2ecf20Sopenharmony_ci select LEDS_GPIO_REGISTER 14678c2ecf20Sopenharmony_ci help 14688c2ecf20Sopenharmony_ci The Loongson 1B is a 32-bit SoC, which implements the MIPS32 14698c2ecf20Sopenharmony_ci Release 1 instruction set and part of the MIPS32 Release 2 14708c2ecf20Sopenharmony_ci instruction set. 14718c2ecf20Sopenharmony_ci 14728c2ecf20Sopenharmony_ciconfig CPU_LOONGSON1C 14738c2ecf20Sopenharmony_ci bool "Loongson 1C" 14748c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_LOONGSON1C 14758c2ecf20Sopenharmony_ci select CPU_LOONGSON32 14768c2ecf20Sopenharmony_ci select LEDS_GPIO_REGISTER 14778c2ecf20Sopenharmony_ci help 14788c2ecf20Sopenharmony_ci The Loongson 1C is a 32-bit SoC, which implements the MIPS32 14798c2ecf20Sopenharmony_ci Release 1 instruction set and part of the MIPS32 Release 2 14808c2ecf20Sopenharmony_ci instruction set. 14818c2ecf20Sopenharmony_ci 14828c2ecf20Sopenharmony_ciconfig CPU_MIPS32_R1 14838c2ecf20Sopenharmony_ci bool "MIPS32 Release 1" 14848c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_MIPS32_R1 14858c2ecf20Sopenharmony_ci select CPU_HAS_PREFETCH 14868c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 14878c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 14888c2ecf20Sopenharmony_ci help 14898c2ecf20Sopenharmony_ci Choose this option to build a kernel for release 1 or later of the 14908c2ecf20Sopenharmony_ci MIPS32 architecture. Most modern embedded systems with a 32-bit 14918c2ecf20Sopenharmony_ci MIPS processor are based on a MIPS32 processor. If you know the 14928c2ecf20Sopenharmony_ci specific type of processor in your system, choose those that one 14938c2ecf20Sopenharmony_ci otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system. 14948c2ecf20Sopenharmony_ci Release 2 of the MIPS32 architecture is available since several 14958c2ecf20Sopenharmony_ci years so chances are you even have a MIPS32 Release 2 processor 14968c2ecf20Sopenharmony_ci in which case you should choose CPU_MIPS32_R2 instead for better 14978c2ecf20Sopenharmony_ci performance. 14988c2ecf20Sopenharmony_ci 14998c2ecf20Sopenharmony_ciconfig CPU_MIPS32_R2 15008c2ecf20Sopenharmony_ci bool "MIPS32 Release 2" 15018c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_MIPS32_R2 15028c2ecf20Sopenharmony_ci select CPU_HAS_PREFETCH 15038c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 15048c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 15058c2ecf20Sopenharmony_ci select CPU_SUPPORTS_MSA 15068c2ecf20Sopenharmony_ci select HAVE_KVM 15078c2ecf20Sopenharmony_ci help 15088c2ecf20Sopenharmony_ci Choose this option to build a kernel for release 2 or later of the 15098c2ecf20Sopenharmony_ci MIPS32 architecture. Most modern embedded systems with a 32-bit 15108c2ecf20Sopenharmony_ci MIPS processor are based on a MIPS32 processor. If you know the 15118c2ecf20Sopenharmony_ci specific type of processor in your system, choose those that one 15128c2ecf20Sopenharmony_ci otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system. 15138c2ecf20Sopenharmony_ci 15148c2ecf20Sopenharmony_ciconfig CPU_MIPS32_R5 15158c2ecf20Sopenharmony_ci bool "MIPS32 Release 5" 15168c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_MIPS32_R5 15178c2ecf20Sopenharmony_ci select CPU_HAS_PREFETCH 15188c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 15198c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 15208c2ecf20Sopenharmony_ci select CPU_SUPPORTS_MSA 15218c2ecf20Sopenharmony_ci select HAVE_KVM 15228c2ecf20Sopenharmony_ci select MIPS_O32_FP64_SUPPORT 15238c2ecf20Sopenharmony_ci help 15248c2ecf20Sopenharmony_ci Choose this option to build a kernel for release 5 or later of the 15258c2ecf20Sopenharmony_ci MIPS32 architecture. New MIPS processors, starting with the Warrior 15268c2ecf20Sopenharmony_ci family, are based on a MIPS32r5 processor. If you own an older 15278c2ecf20Sopenharmony_ci processor, you probably need to select MIPS32r1 or MIPS32r2 instead. 15288c2ecf20Sopenharmony_ci 15298c2ecf20Sopenharmony_ciconfig CPU_MIPS32_R6 15308c2ecf20Sopenharmony_ci bool "MIPS32 Release 6" 15318c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_MIPS32_R6 15328c2ecf20Sopenharmony_ci select CPU_HAS_PREFETCH 15338c2ecf20Sopenharmony_ci select CPU_NO_LOAD_STORE_LR 15348c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 15358c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 15368c2ecf20Sopenharmony_ci select CPU_SUPPORTS_MSA 15378c2ecf20Sopenharmony_ci select HAVE_KVM 15388c2ecf20Sopenharmony_ci select MIPS_O32_FP64_SUPPORT 15398c2ecf20Sopenharmony_ci help 15408c2ecf20Sopenharmony_ci Choose this option to build a kernel for release 6 or later of the 15418c2ecf20Sopenharmony_ci MIPS32 architecture. New MIPS processors, starting with the Warrior 15428c2ecf20Sopenharmony_ci family, are based on a MIPS32r6 processor. If you own an older 15438c2ecf20Sopenharmony_ci processor, you probably need to select MIPS32r1 or MIPS32r2 instead. 15448c2ecf20Sopenharmony_ci 15458c2ecf20Sopenharmony_ciconfig CPU_MIPS64_R1 15468c2ecf20Sopenharmony_ci bool "MIPS64 Release 1" 15478c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_MIPS64_R1 15488c2ecf20Sopenharmony_ci select CPU_HAS_PREFETCH 15498c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 15508c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 15518c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 15528c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HUGEPAGES 15538c2ecf20Sopenharmony_ci help 15548c2ecf20Sopenharmony_ci Choose this option to build a kernel for release 1 or later of the 15558c2ecf20Sopenharmony_ci MIPS64 architecture. Many modern embedded systems with a 64-bit 15568c2ecf20Sopenharmony_ci MIPS processor are based on a MIPS64 processor. If you know the 15578c2ecf20Sopenharmony_ci specific type of processor in your system, choose those that one 15588c2ecf20Sopenharmony_ci otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system. 15598c2ecf20Sopenharmony_ci Release 2 of the MIPS64 architecture is available since several 15608c2ecf20Sopenharmony_ci years so chances are you even have a MIPS64 Release 2 processor 15618c2ecf20Sopenharmony_ci in which case you should choose CPU_MIPS64_R2 instead for better 15628c2ecf20Sopenharmony_ci performance. 15638c2ecf20Sopenharmony_ci 15648c2ecf20Sopenharmony_ciconfig CPU_MIPS64_R2 15658c2ecf20Sopenharmony_ci bool "MIPS64 Release 2" 15668c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_MIPS64_R2 15678c2ecf20Sopenharmony_ci select CPU_HAS_PREFETCH 15688c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 15698c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 15708c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 15718c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HUGEPAGES 15728c2ecf20Sopenharmony_ci select CPU_SUPPORTS_MSA 15738c2ecf20Sopenharmony_ci select HAVE_KVM 15748c2ecf20Sopenharmony_ci help 15758c2ecf20Sopenharmony_ci Choose this option to build a kernel for release 2 or later of the 15768c2ecf20Sopenharmony_ci MIPS64 architecture. Many modern embedded systems with a 64-bit 15778c2ecf20Sopenharmony_ci MIPS processor are based on a MIPS64 processor. If you know the 15788c2ecf20Sopenharmony_ci specific type of processor in your system, choose those that one 15798c2ecf20Sopenharmony_ci otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system. 15808c2ecf20Sopenharmony_ci 15818c2ecf20Sopenharmony_ciconfig CPU_MIPS64_R5 15828c2ecf20Sopenharmony_ci bool "MIPS64 Release 5" 15838c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_MIPS64_R5 15848c2ecf20Sopenharmony_ci select CPU_HAS_PREFETCH 15858c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 15868c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 15878c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 15888c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HUGEPAGES 15898c2ecf20Sopenharmony_ci select CPU_SUPPORTS_MSA 15908c2ecf20Sopenharmony_ci select MIPS_O32_FP64_SUPPORT if 32BIT || MIPS32_O32 15918c2ecf20Sopenharmony_ci select HAVE_KVM 15928c2ecf20Sopenharmony_ci help 15938c2ecf20Sopenharmony_ci Choose this option to build a kernel for release 5 or later of the 15948c2ecf20Sopenharmony_ci MIPS64 architecture. This is a intermediate MIPS architecture 15958c2ecf20Sopenharmony_ci release partly implementing release 6 features. Though there is no 15968c2ecf20Sopenharmony_ci any hardware known to be based on this release. 15978c2ecf20Sopenharmony_ci 15988c2ecf20Sopenharmony_ciconfig CPU_MIPS64_R6 15998c2ecf20Sopenharmony_ci bool "MIPS64 Release 6" 16008c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_MIPS64_R6 16018c2ecf20Sopenharmony_ci select CPU_HAS_PREFETCH 16028c2ecf20Sopenharmony_ci select CPU_NO_LOAD_STORE_LR 16038c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 16048c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 16058c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 16068c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HUGEPAGES 16078c2ecf20Sopenharmony_ci select CPU_SUPPORTS_MSA 16088c2ecf20Sopenharmony_ci select MIPS_O32_FP64_SUPPORT if 32BIT || MIPS32_O32 16098c2ecf20Sopenharmony_ci select HAVE_KVM 16108c2ecf20Sopenharmony_ci help 16118c2ecf20Sopenharmony_ci Choose this option to build a kernel for release 6 or later of the 16128c2ecf20Sopenharmony_ci MIPS64 architecture. New MIPS processors, starting with the Warrior 16138c2ecf20Sopenharmony_ci family, are based on a MIPS64r6 processor. If you own an older 16148c2ecf20Sopenharmony_ci processor, you probably need to select MIPS64r1 or MIPS64r2 instead. 16158c2ecf20Sopenharmony_ci 16168c2ecf20Sopenharmony_ciconfig CPU_P5600 16178c2ecf20Sopenharmony_ci bool "MIPS Warrior P5600" 16188c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_P5600 16198c2ecf20Sopenharmony_ci select CPU_HAS_PREFETCH 16208c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 16218c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 16228c2ecf20Sopenharmony_ci select CPU_SUPPORTS_MSA 16238c2ecf20Sopenharmony_ci select CPU_SUPPORTS_CPUFREQ 16248c2ecf20Sopenharmony_ci select CPU_MIPSR2_IRQ_VI 16258c2ecf20Sopenharmony_ci select CPU_MIPSR2_IRQ_EI 16268c2ecf20Sopenharmony_ci select HAVE_KVM 16278c2ecf20Sopenharmony_ci select MIPS_O32_FP64_SUPPORT 16288c2ecf20Sopenharmony_ci help 16298c2ecf20Sopenharmony_ci Choose this option to build a kernel for MIPS Warrior P5600 CPU. 16308c2ecf20Sopenharmony_ci It's based on MIPS32r5 ISA with XPA, EVA, dual/quad issue exec pipes, 16318c2ecf20Sopenharmony_ci MMU with two-levels TLB, UCA, MSA, MDU core level features and system 16328c2ecf20Sopenharmony_ci level features like up to six P5600 calculation cores, CM2 with L2 16338c2ecf20Sopenharmony_ci cache, IOCU/IOMMU (though might be unused depending on the system- 16348c2ecf20Sopenharmony_ci specific IP core configuration), GIC, CPC, virtualisation module, 16358c2ecf20Sopenharmony_ci eJTAG and PDtrace. 16368c2ecf20Sopenharmony_ci 16378c2ecf20Sopenharmony_ciconfig CPU_R3000 16388c2ecf20Sopenharmony_ci bool "R3000" 16398c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_R3000 16408c2ecf20Sopenharmony_ci select CPU_HAS_WB 16418c2ecf20Sopenharmony_ci select CPU_R3K_TLB 16428c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 16438c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 16448c2ecf20Sopenharmony_ci help 16458c2ecf20Sopenharmony_ci Please make sure to pick the right CPU type. Linux/MIPS is not 16468c2ecf20Sopenharmony_ci designed to be generic, i.e. Kernels compiled for R3000 CPUs will 16478c2ecf20Sopenharmony_ci *not* work on R4000 machines and vice versa. However, since most 16488c2ecf20Sopenharmony_ci of the supported machines have an R4000 (or similar) CPU, R4x00 16498c2ecf20Sopenharmony_ci might be a safe bet. If the resulting kernel does not work, 16508c2ecf20Sopenharmony_ci try to recompile with R3000. 16518c2ecf20Sopenharmony_ci 16528c2ecf20Sopenharmony_ciconfig CPU_TX39XX 16538c2ecf20Sopenharmony_ci bool "R39XX" 16548c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_TX39XX 16558c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 16568c2ecf20Sopenharmony_ci select CPU_R3K_TLB 16578c2ecf20Sopenharmony_ci 16588c2ecf20Sopenharmony_ciconfig CPU_VR41XX 16598c2ecf20Sopenharmony_ci bool "R41xx" 16608c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_VR41XX 16618c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 16628c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 16638c2ecf20Sopenharmony_ci help 16648c2ecf20Sopenharmony_ci The options selects support for the NEC VR4100 series of processors. 16658c2ecf20Sopenharmony_ci Only choose this option if you have one of these processors as a 16668c2ecf20Sopenharmony_ci kernel built with this option will not run on any other type of 16678c2ecf20Sopenharmony_ci processor or vice versa. 16688c2ecf20Sopenharmony_ci 16698c2ecf20Sopenharmony_ciconfig CPU_R4X00 16708c2ecf20Sopenharmony_ci bool "R4x00" 16718c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_R4X00 16728c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 16738c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 16748c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HUGEPAGES 16758c2ecf20Sopenharmony_ci help 16768c2ecf20Sopenharmony_ci MIPS Technologies R4000-series processors other than 4300, including 16778c2ecf20Sopenharmony_ci the R4000, R4400, R4600, and 4700. 16788c2ecf20Sopenharmony_ci 16798c2ecf20Sopenharmony_ciconfig CPU_TX49XX 16808c2ecf20Sopenharmony_ci bool "R49XX" 16818c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_TX49XX 16828c2ecf20Sopenharmony_ci select CPU_HAS_PREFETCH 16838c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 16848c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 16858c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HUGEPAGES 16868c2ecf20Sopenharmony_ci 16878c2ecf20Sopenharmony_ciconfig CPU_R5000 16888c2ecf20Sopenharmony_ci bool "R5000" 16898c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_R5000 16908c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 16918c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 16928c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HUGEPAGES 16938c2ecf20Sopenharmony_ci help 16948c2ecf20Sopenharmony_ci MIPS Technologies R5000-series processors other than the Nevada. 16958c2ecf20Sopenharmony_ci 16968c2ecf20Sopenharmony_ciconfig CPU_R5500 16978c2ecf20Sopenharmony_ci bool "R5500" 16988c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_R5500 16998c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 17008c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 17018c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HUGEPAGES 17028c2ecf20Sopenharmony_ci help 17038c2ecf20Sopenharmony_ci NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV 17048c2ecf20Sopenharmony_ci instruction set. 17058c2ecf20Sopenharmony_ci 17068c2ecf20Sopenharmony_ciconfig CPU_NEVADA 17078c2ecf20Sopenharmony_ci bool "RM52xx" 17088c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_NEVADA 17098c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 17108c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 17118c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HUGEPAGES 17128c2ecf20Sopenharmony_ci help 17138c2ecf20Sopenharmony_ci QED / PMC-Sierra RM52xx-series ("Nevada") processors. 17148c2ecf20Sopenharmony_ci 17158c2ecf20Sopenharmony_ciconfig CPU_R10000 17168c2ecf20Sopenharmony_ci bool "R10000" 17178c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_R10000 17188c2ecf20Sopenharmony_ci select CPU_HAS_PREFETCH 17198c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 17208c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 17218c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 17228c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HUGEPAGES 17238c2ecf20Sopenharmony_ci help 17248c2ecf20Sopenharmony_ci MIPS Technologies R10000-series processors. 17258c2ecf20Sopenharmony_ci 17268c2ecf20Sopenharmony_ciconfig CPU_RM7000 17278c2ecf20Sopenharmony_ci bool "RM7000" 17288c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_RM7000 17298c2ecf20Sopenharmony_ci select CPU_HAS_PREFETCH 17308c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 17318c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 17328c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 17338c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HUGEPAGES 17348c2ecf20Sopenharmony_ci 17358c2ecf20Sopenharmony_ciconfig CPU_SB1 17368c2ecf20Sopenharmony_ci bool "SB1" 17378c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_SB1 17388c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 17398c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 17408c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 17418c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HUGEPAGES 17428c2ecf20Sopenharmony_ci select WEAK_ORDERING 17438c2ecf20Sopenharmony_ci 17448c2ecf20Sopenharmony_ciconfig CPU_CAVIUM_OCTEON 17458c2ecf20Sopenharmony_ci bool "Cavium Octeon processor" 17468c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_CAVIUM_OCTEON 17478c2ecf20Sopenharmony_ci select CPU_HAS_PREFETCH 17488c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 17498c2ecf20Sopenharmony_ci select WEAK_ORDERING 17508c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 17518c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HUGEPAGES 17528c2ecf20Sopenharmony_ci select USB_EHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN 17538c2ecf20Sopenharmony_ci select USB_OHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN 17548c2ecf20Sopenharmony_ci select MIPS_L1_CACHE_SHIFT_7 17558c2ecf20Sopenharmony_ci select HAVE_KVM 17568c2ecf20Sopenharmony_ci help 17578c2ecf20Sopenharmony_ci The Cavium Octeon processor is a highly integrated chip containing 17588c2ecf20Sopenharmony_ci many ethernet hardware widgets for networking tasks. The processor 17598c2ecf20Sopenharmony_ci can have up to 16 Mips64v2 cores and 8 integrated gigabit ethernets. 17608c2ecf20Sopenharmony_ci Full details can be found at http://www.caviumnetworks.com. 17618c2ecf20Sopenharmony_ci 17628c2ecf20Sopenharmony_ciconfig CPU_BMIPS 17638c2ecf20Sopenharmony_ci bool "Broadcom BMIPS" 17648c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_BMIPS 17658c2ecf20Sopenharmony_ci select CPU_MIPS32 17668c2ecf20Sopenharmony_ci select CPU_BMIPS32_3300 if SYS_HAS_CPU_BMIPS32_3300 17678c2ecf20Sopenharmony_ci select CPU_BMIPS4350 if SYS_HAS_CPU_BMIPS4350 17688c2ecf20Sopenharmony_ci select CPU_BMIPS4380 if SYS_HAS_CPU_BMIPS4380 17698c2ecf20Sopenharmony_ci select CPU_BMIPS5000 if SYS_HAS_CPU_BMIPS5000 17708c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 17718c2ecf20Sopenharmony_ci select DMA_NONCOHERENT 17728c2ecf20Sopenharmony_ci select IRQ_MIPS_CPU 17738c2ecf20Sopenharmony_ci select SWAP_IO_SPACE 17748c2ecf20Sopenharmony_ci select WEAK_ORDERING 17758c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 17768c2ecf20Sopenharmony_ci select CPU_HAS_PREFETCH 17778c2ecf20Sopenharmony_ci select CPU_SUPPORTS_CPUFREQ 17788c2ecf20Sopenharmony_ci select MIPS_EXTERNAL_TIMER 17798c2ecf20Sopenharmony_ci help 17808c2ecf20Sopenharmony_ci Support for BMIPS32/3300/4350/4380 and BMIPS5000 processors. 17818c2ecf20Sopenharmony_ci 17828c2ecf20Sopenharmony_ciconfig CPU_XLR 17838c2ecf20Sopenharmony_ci bool "Netlogic XLR SoC" 17848c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_XLR 17858c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 17868c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 17878c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 17888c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HUGEPAGES 17898c2ecf20Sopenharmony_ci select WEAK_ORDERING 17908c2ecf20Sopenharmony_ci select WEAK_REORDERING_BEYOND_LLSC 17918c2ecf20Sopenharmony_ci help 17928c2ecf20Sopenharmony_ci Netlogic Microsystems XLR/XLS processors. 17938c2ecf20Sopenharmony_ci 17948c2ecf20Sopenharmony_ciconfig CPU_XLP 17958c2ecf20Sopenharmony_ci bool "Netlogic XLP SoC" 17968c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_XLP 17978c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 17988c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 17998c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 18008c2ecf20Sopenharmony_ci select WEAK_ORDERING 18018c2ecf20Sopenharmony_ci select WEAK_REORDERING_BEYOND_LLSC 18028c2ecf20Sopenharmony_ci select CPU_HAS_PREFETCH 18038c2ecf20Sopenharmony_ci select CPU_MIPSR2 18048c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HUGEPAGES 18058c2ecf20Sopenharmony_ci select MIPS_ASID_BITS_VARIABLE 18068c2ecf20Sopenharmony_ci help 18078c2ecf20Sopenharmony_ci Netlogic Microsystems XLP processors. 18088c2ecf20Sopenharmony_ciendchoice 18098c2ecf20Sopenharmony_ci 18108c2ecf20Sopenharmony_ciconfig CPU_MIPS32_3_5_FEATURES 18118c2ecf20Sopenharmony_ci bool "MIPS32 Release 3.5 Features" 18128c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_MIPS32_R3_5 18138c2ecf20Sopenharmony_ci depends on CPU_MIPS32_R2 || CPU_MIPS32_R5 || CPU_MIPS32_R6 || \ 18148c2ecf20Sopenharmony_ci CPU_P5600 18158c2ecf20Sopenharmony_ci help 18168c2ecf20Sopenharmony_ci Choose this option to build a kernel for release 2 or later of the 18178c2ecf20Sopenharmony_ci MIPS32 architecture including features from the 3.5 release such as 18188c2ecf20Sopenharmony_ci support for Enhanced Virtual Addressing (EVA). 18198c2ecf20Sopenharmony_ci 18208c2ecf20Sopenharmony_ciconfig CPU_MIPS32_3_5_EVA 18218c2ecf20Sopenharmony_ci bool "Enhanced Virtual Addressing (EVA)" 18228c2ecf20Sopenharmony_ci depends on CPU_MIPS32_3_5_FEATURES 18238c2ecf20Sopenharmony_ci select EVA 18248c2ecf20Sopenharmony_ci default y 18258c2ecf20Sopenharmony_ci help 18268c2ecf20Sopenharmony_ci Choose this option if you want to enable the Enhanced Virtual 18278c2ecf20Sopenharmony_ci Addressing (EVA) on your MIPS32 core (such as proAptiv). 18288c2ecf20Sopenharmony_ci One of its primary benefits is an increase in the maximum size 18298c2ecf20Sopenharmony_ci of lowmem (up to 3GB). If unsure, say 'N' here. 18308c2ecf20Sopenharmony_ci 18318c2ecf20Sopenharmony_ciconfig CPU_MIPS32_R5_FEATURES 18328c2ecf20Sopenharmony_ci bool "MIPS32 Release 5 Features" 18338c2ecf20Sopenharmony_ci depends on SYS_HAS_CPU_MIPS32_R5 18348c2ecf20Sopenharmony_ci depends on CPU_MIPS32_R2 || CPU_MIPS32_R5 || CPU_P5600 18358c2ecf20Sopenharmony_ci help 18368c2ecf20Sopenharmony_ci Choose this option to build a kernel for release 2 or later of the 18378c2ecf20Sopenharmony_ci MIPS32 architecture including features from release 5 such as 18388c2ecf20Sopenharmony_ci support for Extended Physical Addressing (XPA). 18398c2ecf20Sopenharmony_ci 18408c2ecf20Sopenharmony_ciconfig CPU_MIPS32_R5_XPA 18418c2ecf20Sopenharmony_ci bool "Extended Physical Addressing (XPA)" 18428c2ecf20Sopenharmony_ci depends on CPU_MIPS32_R5_FEATURES 18438c2ecf20Sopenharmony_ci depends on !EVA 18448c2ecf20Sopenharmony_ci depends on !PAGE_SIZE_4KB 18458c2ecf20Sopenharmony_ci depends on SYS_SUPPORTS_HIGHMEM 18468c2ecf20Sopenharmony_ci select XPA 18478c2ecf20Sopenharmony_ci select HIGHMEM 18488c2ecf20Sopenharmony_ci select PHYS_ADDR_T_64BIT 18498c2ecf20Sopenharmony_ci default n 18508c2ecf20Sopenharmony_ci help 18518c2ecf20Sopenharmony_ci Choose this option if you want to enable the Extended Physical 18528c2ecf20Sopenharmony_ci Addressing (XPA) on your MIPS32 core (such as P5600 series). The 18538c2ecf20Sopenharmony_ci benefit is to increase physical addressing equal to or greater 18548c2ecf20Sopenharmony_ci than 40 bits. Note that this has the side effect of turning on 18558c2ecf20Sopenharmony_ci 64-bit addressing which in turn makes the PTEs 64-bit in size. 18568c2ecf20Sopenharmony_ci If unsure, say 'N' here. 18578c2ecf20Sopenharmony_ci 18588c2ecf20Sopenharmony_ciif CPU_LOONGSON2F 18598c2ecf20Sopenharmony_ciconfig CPU_NOP_WORKAROUNDS 18608c2ecf20Sopenharmony_ci bool 18618c2ecf20Sopenharmony_ci 18628c2ecf20Sopenharmony_ciconfig CPU_JUMP_WORKAROUNDS 18638c2ecf20Sopenharmony_ci bool 18648c2ecf20Sopenharmony_ci 18658c2ecf20Sopenharmony_ciconfig CPU_LOONGSON2F_WORKAROUNDS 18668c2ecf20Sopenharmony_ci bool "Loongson 2F Workarounds" 18678c2ecf20Sopenharmony_ci default y 18688c2ecf20Sopenharmony_ci select CPU_NOP_WORKAROUNDS 18698c2ecf20Sopenharmony_ci select CPU_JUMP_WORKAROUNDS 18708c2ecf20Sopenharmony_ci help 18718c2ecf20Sopenharmony_ci Loongson 2F01 / 2F02 processors have the NOP & JUMP issues which 18728c2ecf20Sopenharmony_ci require workarounds. Without workarounds the system may hang 18738c2ecf20Sopenharmony_ci unexpectedly. For more information please refer to the gas 18748c2ecf20Sopenharmony_ci -mfix-loongson2f-nop and -mfix-loongson2f-jump options. 18758c2ecf20Sopenharmony_ci 18768c2ecf20Sopenharmony_ci Loongson 2F03 and later have fixed these issues and no workarounds 18778c2ecf20Sopenharmony_ci are needed. The workarounds have no significant side effect on them 18788c2ecf20Sopenharmony_ci but may decrease the performance of the system so this option should 18798c2ecf20Sopenharmony_ci be disabled unless the kernel is intended to be run on 2F01 or 2F02 18808c2ecf20Sopenharmony_ci systems. 18818c2ecf20Sopenharmony_ci 18828c2ecf20Sopenharmony_ci If unsure, please say Y. 18838c2ecf20Sopenharmony_ciendif # CPU_LOONGSON2F 18848c2ecf20Sopenharmony_ci 18858c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_ZBOOT 18868c2ecf20Sopenharmony_ci bool 18878c2ecf20Sopenharmony_ci select HAVE_KERNEL_GZIP 18888c2ecf20Sopenharmony_ci select HAVE_KERNEL_BZIP2 18898c2ecf20Sopenharmony_ci select HAVE_KERNEL_LZ4 18908c2ecf20Sopenharmony_ci select HAVE_KERNEL_LZMA 18918c2ecf20Sopenharmony_ci select HAVE_KERNEL_LZO 18928c2ecf20Sopenharmony_ci select HAVE_KERNEL_XZ 18938c2ecf20Sopenharmony_ci select HAVE_KERNEL_ZSTD 18948c2ecf20Sopenharmony_ci 18958c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_ZBOOT_UART16550 18968c2ecf20Sopenharmony_ci bool 18978c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT 18988c2ecf20Sopenharmony_ci 18998c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_ZBOOT_UART_PROM 19008c2ecf20Sopenharmony_ci bool 19018c2ecf20Sopenharmony_ci select SYS_SUPPORTS_ZBOOT 19028c2ecf20Sopenharmony_ci 19038c2ecf20Sopenharmony_ciconfig CPU_LOONGSON2EF 19048c2ecf20Sopenharmony_ci bool 19058c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 19068c2ecf20Sopenharmony_ci select CPU_SUPPORTS_64BIT_KERNEL 19078c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 19088c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HUGEPAGES 19098c2ecf20Sopenharmony_ci select ARCH_HAS_PHYS_TO_DMA 19108c2ecf20Sopenharmony_ci 19118c2ecf20Sopenharmony_ciconfig CPU_LOONGSON32 19128c2ecf20Sopenharmony_ci bool 19138c2ecf20Sopenharmony_ci select CPU_MIPS32 19148c2ecf20Sopenharmony_ci select CPU_MIPSR2 19158c2ecf20Sopenharmony_ci select CPU_HAS_PREFETCH 19168c2ecf20Sopenharmony_ci select CPU_SUPPORTS_32BIT_KERNEL 19178c2ecf20Sopenharmony_ci select CPU_SUPPORTS_HIGHMEM 19188c2ecf20Sopenharmony_ci select CPU_SUPPORTS_CPUFREQ 19198c2ecf20Sopenharmony_ci 19208c2ecf20Sopenharmony_ciconfig CPU_BMIPS32_3300 19218c2ecf20Sopenharmony_ci select SMP_UP if SMP 19228c2ecf20Sopenharmony_ci bool 19238c2ecf20Sopenharmony_ci 19248c2ecf20Sopenharmony_ciconfig CPU_BMIPS4350 19258c2ecf20Sopenharmony_ci bool 19268c2ecf20Sopenharmony_ci select SYS_SUPPORTS_SMP 19278c2ecf20Sopenharmony_ci select SYS_SUPPORTS_HOTPLUG_CPU 19288c2ecf20Sopenharmony_ci 19298c2ecf20Sopenharmony_ciconfig CPU_BMIPS4380 19308c2ecf20Sopenharmony_ci bool 19318c2ecf20Sopenharmony_ci select MIPS_L1_CACHE_SHIFT_6 19328c2ecf20Sopenharmony_ci select SYS_SUPPORTS_SMP 19338c2ecf20Sopenharmony_ci select SYS_SUPPORTS_HOTPLUG_CPU 19348c2ecf20Sopenharmony_ci select CPU_HAS_RIXI 19358c2ecf20Sopenharmony_ci 19368c2ecf20Sopenharmony_ciconfig CPU_BMIPS5000 19378c2ecf20Sopenharmony_ci bool 19388c2ecf20Sopenharmony_ci select MIPS_CPU_SCACHE 19398c2ecf20Sopenharmony_ci select MIPS_L1_CACHE_SHIFT_7 19408c2ecf20Sopenharmony_ci select SYS_SUPPORTS_SMP 19418c2ecf20Sopenharmony_ci select SYS_SUPPORTS_HOTPLUG_CPU 19428c2ecf20Sopenharmony_ci select CPU_HAS_RIXI 19438c2ecf20Sopenharmony_ci 19448c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_LOONGSON64 19458c2ecf20Sopenharmony_ci bool 19468c2ecf20Sopenharmony_ci select CPU_SUPPORTS_CPUFREQ 19478c2ecf20Sopenharmony_ci select CPU_HAS_RIXI 19488c2ecf20Sopenharmony_ci 19498c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_LOONGSON2E 19508c2ecf20Sopenharmony_ci bool 19518c2ecf20Sopenharmony_ci 19528c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_LOONGSON2F 19538c2ecf20Sopenharmony_ci bool 19548c2ecf20Sopenharmony_ci select CPU_SUPPORTS_CPUFREQ 19558c2ecf20Sopenharmony_ci select CPU_SUPPORTS_ADDRWINCFG if 64BIT 19568c2ecf20Sopenharmony_ci 19578c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_LOONGSON1B 19588c2ecf20Sopenharmony_ci bool 19598c2ecf20Sopenharmony_ci 19608c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_LOONGSON1C 19618c2ecf20Sopenharmony_ci bool 19628c2ecf20Sopenharmony_ci 19638c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_MIPS32_R1 19648c2ecf20Sopenharmony_ci bool 19658c2ecf20Sopenharmony_ci 19668c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_MIPS32_R2 19678c2ecf20Sopenharmony_ci bool 19688c2ecf20Sopenharmony_ci 19698c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_MIPS32_R3_5 19708c2ecf20Sopenharmony_ci bool 19718c2ecf20Sopenharmony_ci 19728c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_MIPS32_R5 19738c2ecf20Sopenharmony_ci bool 19748c2ecf20Sopenharmony_ci select ARCH_HAS_SYNC_DMA_FOR_CPU if DMA_NONCOHERENT 19758c2ecf20Sopenharmony_ci 19768c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_MIPS32_R6 19778c2ecf20Sopenharmony_ci bool 19788c2ecf20Sopenharmony_ci select ARCH_HAS_SYNC_DMA_FOR_CPU if DMA_NONCOHERENT 19798c2ecf20Sopenharmony_ci 19808c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_MIPS64_R1 19818c2ecf20Sopenharmony_ci bool 19828c2ecf20Sopenharmony_ci 19838c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_MIPS64_R2 19848c2ecf20Sopenharmony_ci bool 19858c2ecf20Sopenharmony_ci 19868c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_MIPS64_R5 19878c2ecf20Sopenharmony_ci bool 19888c2ecf20Sopenharmony_ci select ARCH_HAS_SYNC_DMA_FOR_CPU if DMA_NONCOHERENT 19898c2ecf20Sopenharmony_ci 19908c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_MIPS64_R6 19918c2ecf20Sopenharmony_ci bool 19928c2ecf20Sopenharmony_ci select ARCH_HAS_SYNC_DMA_FOR_CPU if DMA_NONCOHERENT 19938c2ecf20Sopenharmony_ci 19948c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_P5600 19958c2ecf20Sopenharmony_ci bool 19968c2ecf20Sopenharmony_ci select ARCH_HAS_SYNC_DMA_FOR_CPU if DMA_NONCOHERENT 19978c2ecf20Sopenharmony_ci 19988c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_R3000 19998c2ecf20Sopenharmony_ci bool 20008c2ecf20Sopenharmony_ci 20018c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_TX39XX 20028c2ecf20Sopenharmony_ci bool 20038c2ecf20Sopenharmony_ci 20048c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_VR41XX 20058c2ecf20Sopenharmony_ci bool 20068c2ecf20Sopenharmony_ci 20078c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_R4X00 20088c2ecf20Sopenharmony_ci bool 20098c2ecf20Sopenharmony_ci 20108c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_TX49XX 20118c2ecf20Sopenharmony_ci bool 20128c2ecf20Sopenharmony_ci 20138c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_R5000 20148c2ecf20Sopenharmony_ci bool 20158c2ecf20Sopenharmony_ci 20168c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_R5500 20178c2ecf20Sopenharmony_ci bool 20188c2ecf20Sopenharmony_ci 20198c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_NEVADA 20208c2ecf20Sopenharmony_ci bool 20218c2ecf20Sopenharmony_ci 20228c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_R10000 20238c2ecf20Sopenharmony_ci bool 20248c2ecf20Sopenharmony_ci select ARCH_HAS_SYNC_DMA_FOR_CPU if DMA_NONCOHERENT 20258c2ecf20Sopenharmony_ci 20268c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_RM7000 20278c2ecf20Sopenharmony_ci bool 20288c2ecf20Sopenharmony_ci 20298c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_SB1 20308c2ecf20Sopenharmony_ci bool 20318c2ecf20Sopenharmony_ci 20328c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_CAVIUM_OCTEON 20338c2ecf20Sopenharmony_ci bool 20348c2ecf20Sopenharmony_ci 20358c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_BMIPS 20368c2ecf20Sopenharmony_ci bool 20378c2ecf20Sopenharmony_ci 20388c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_BMIPS32_3300 20398c2ecf20Sopenharmony_ci bool 20408c2ecf20Sopenharmony_ci select SYS_HAS_CPU_BMIPS 20418c2ecf20Sopenharmony_ci 20428c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_BMIPS4350 20438c2ecf20Sopenharmony_ci bool 20448c2ecf20Sopenharmony_ci select SYS_HAS_CPU_BMIPS 20458c2ecf20Sopenharmony_ci 20468c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_BMIPS4380 20478c2ecf20Sopenharmony_ci bool 20488c2ecf20Sopenharmony_ci select SYS_HAS_CPU_BMIPS 20498c2ecf20Sopenharmony_ci 20508c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_BMIPS5000 20518c2ecf20Sopenharmony_ci bool 20528c2ecf20Sopenharmony_ci select SYS_HAS_CPU_BMIPS 20538c2ecf20Sopenharmony_ci select ARCH_HAS_SYNC_DMA_FOR_CPU 20548c2ecf20Sopenharmony_ci 20558c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_XLR 20568c2ecf20Sopenharmony_ci bool 20578c2ecf20Sopenharmony_ci 20588c2ecf20Sopenharmony_ciconfig SYS_HAS_CPU_XLP 20598c2ecf20Sopenharmony_ci bool 20608c2ecf20Sopenharmony_ci 20618c2ecf20Sopenharmony_ci# 20628c2ecf20Sopenharmony_ci# CPU may reorder R->R, R->W, W->R, W->W 20638c2ecf20Sopenharmony_ci# Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC 20648c2ecf20Sopenharmony_ci# 20658c2ecf20Sopenharmony_ciconfig WEAK_ORDERING 20668c2ecf20Sopenharmony_ci bool 20678c2ecf20Sopenharmony_ci 20688c2ecf20Sopenharmony_ci# 20698c2ecf20Sopenharmony_ci# CPU may reorder reads and writes beyond LL/SC 20708c2ecf20Sopenharmony_ci# CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC 20718c2ecf20Sopenharmony_ci# 20728c2ecf20Sopenharmony_ciconfig WEAK_REORDERING_BEYOND_LLSC 20738c2ecf20Sopenharmony_ci bool 20748c2ecf20Sopenharmony_ciendmenu 20758c2ecf20Sopenharmony_ci 20768c2ecf20Sopenharmony_ci# 20778c2ecf20Sopenharmony_ci# These two indicate any level of the MIPS32 and MIPS64 architecture 20788c2ecf20Sopenharmony_ci# 20798c2ecf20Sopenharmony_ciconfig CPU_MIPS32 20808c2ecf20Sopenharmony_ci bool 20818c2ecf20Sopenharmony_ci default y if CPU_MIPS32_R1 || CPU_MIPS32_R2 || CPU_MIPS32_R5 || \ 20828c2ecf20Sopenharmony_ci CPU_MIPS32_R6 || CPU_P5600 20838c2ecf20Sopenharmony_ci 20848c2ecf20Sopenharmony_ciconfig CPU_MIPS64 20858c2ecf20Sopenharmony_ci bool 20868c2ecf20Sopenharmony_ci default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 || CPU_MIPS64_R5 || \ 20878c2ecf20Sopenharmony_ci CPU_MIPS64_R6 20888c2ecf20Sopenharmony_ci 20898c2ecf20Sopenharmony_ci# 20908c2ecf20Sopenharmony_ci# These indicate the revision of the architecture 20918c2ecf20Sopenharmony_ci# 20928c2ecf20Sopenharmony_ciconfig CPU_MIPSR1 20938c2ecf20Sopenharmony_ci bool 20948c2ecf20Sopenharmony_ci default y if CPU_MIPS32_R1 || CPU_MIPS64_R1 20958c2ecf20Sopenharmony_ci 20968c2ecf20Sopenharmony_ciconfig CPU_MIPSR2 20978c2ecf20Sopenharmony_ci bool 20988c2ecf20Sopenharmony_ci default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 || CPU_CAVIUM_OCTEON 20998c2ecf20Sopenharmony_ci select CPU_HAS_RIXI 21008c2ecf20Sopenharmony_ci select CPU_HAS_DIEI if !CPU_DIEI_BROKEN 21018c2ecf20Sopenharmony_ci select MIPS_SPRAM 21028c2ecf20Sopenharmony_ci 21038c2ecf20Sopenharmony_ciconfig CPU_MIPSR5 21048c2ecf20Sopenharmony_ci bool 21058c2ecf20Sopenharmony_ci default y if CPU_MIPS32_R5 || CPU_MIPS64_R5 || CPU_P5600 21068c2ecf20Sopenharmony_ci select CPU_HAS_RIXI 21078c2ecf20Sopenharmony_ci select CPU_HAS_DIEI if !CPU_DIEI_BROKEN 21088c2ecf20Sopenharmony_ci select MIPS_SPRAM 21098c2ecf20Sopenharmony_ci 21108c2ecf20Sopenharmony_ciconfig CPU_MIPSR6 21118c2ecf20Sopenharmony_ci bool 21128c2ecf20Sopenharmony_ci default y if CPU_MIPS32_R6 || CPU_MIPS64_R6 21138c2ecf20Sopenharmony_ci select CPU_HAS_RIXI 21148c2ecf20Sopenharmony_ci select CPU_HAS_DIEI if !CPU_DIEI_BROKEN 21158c2ecf20Sopenharmony_ci select HAVE_ARCH_BITREVERSE 21168c2ecf20Sopenharmony_ci select MIPS_ASID_BITS_VARIABLE 21178c2ecf20Sopenharmony_ci select MIPS_CRC_SUPPORT 21188c2ecf20Sopenharmony_ci select MIPS_SPRAM 21198c2ecf20Sopenharmony_ci 21208c2ecf20Sopenharmony_ciconfig TARGET_ISA_REV 21218c2ecf20Sopenharmony_ci int 21228c2ecf20Sopenharmony_ci default 1 if CPU_MIPSR1 21238c2ecf20Sopenharmony_ci default 2 if CPU_MIPSR2 21248c2ecf20Sopenharmony_ci default 5 if CPU_MIPSR5 21258c2ecf20Sopenharmony_ci default 6 if CPU_MIPSR6 21268c2ecf20Sopenharmony_ci default 0 21278c2ecf20Sopenharmony_ci help 21288c2ecf20Sopenharmony_ci Reflects the ISA revision being targeted by the kernel build. This 21298c2ecf20Sopenharmony_ci is effectively the Kconfig equivalent of MIPS_ISA_REV. 21308c2ecf20Sopenharmony_ci 21318c2ecf20Sopenharmony_ciconfig EVA 21328c2ecf20Sopenharmony_ci bool 21338c2ecf20Sopenharmony_ci 21348c2ecf20Sopenharmony_ciconfig XPA 21358c2ecf20Sopenharmony_ci bool 21368c2ecf20Sopenharmony_ci 21378c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_32BIT_KERNEL 21388c2ecf20Sopenharmony_ci bool 21398c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_64BIT_KERNEL 21408c2ecf20Sopenharmony_ci bool 21418c2ecf20Sopenharmony_ciconfig CPU_SUPPORTS_32BIT_KERNEL 21428c2ecf20Sopenharmony_ci bool 21438c2ecf20Sopenharmony_ciconfig CPU_SUPPORTS_64BIT_KERNEL 21448c2ecf20Sopenharmony_ci bool 21458c2ecf20Sopenharmony_ciconfig CPU_SUPPORTS_CPUFREQ 21468c2ecf20Sopenharmony_ci bool 21478c2ecf20Sopenharmony_ciconfig CPU_SUPPORTS_ADDRWINCFG 21488c2ecf20Sopenharmony_ci bool 21498c2ecf20Sopenharmony_ciconfig CPU_SUPPORTS_HUGEPAGES 21508c2ecf20Sopenharmony_ci bool 21518c2ecf20Sopenharmony_ci depends on !(32BIT && (PHYS_ADDR_T_64BIT || EVA)) 21528c2ecf20Sopenharmony_ciconfig MIPS_PGD_C0_CONTEXT 21538c2ecf20Sopenharmony_ci bool 21548c2ecf20Sopenharmony_ci default y if 64BIT && (CPU_MIPSR2 || CPU_MIPSR6) && !CPU_XLP 21558c2ecf20Sopenharmony_ci 21568c2ecf20Sopenharmony_ci# 21578c2ecf20Sopenharmony_ci# Set to y for ptrace access to watch registers. 21588c2ecf20Sopenharmony_ci# 21598c2ecf20Sopenharmony_ciconfig HARDWARE_WATCHPOINTS 21608c2ecf20Sopenharmony_ci bool 21618c2ecf20Sopenharmony_ci default y if CPU_MIPSR1 || CPU_MIPSR2 || CPU_MIPSR6 21628c2ecf20Sopenharmony_ci 21638c2ecf20Sopenharmony_cimenu "Kernel type" 21648c2ecf20Sopenharmony_ci 21658c2ecf20Sopenharmony_cichoice 21668c2ecf20Sopenharmony_ci prompt "Kernel code model" 21678c2ecf20Sopenharmony_ci help 21688c2ecf20Sopenharmony_ci You should only select this option if you have a workload that 21698c2ecf20Sopenharmony_ci actually benefits from 64-bit processing or if your machine has 21708c2ecf20Sopenharmony_ci large memory. You will only be presented a single option in this 21718c2ecf20Sopenharmony_ci menu if your system does not support both 32-bit and 64-bit kernels. 21728c2ecf20Sopenharmony_ci 21738c2ecf20Sopenharmony_ciconfig 32BIT 21748c2ecf20Sopenharmony_ci bool "32-bit kernel" 21758c2ecf20Sopenharmony_ci depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL 21768c2ecf20Sopenharmony_ci select TRAD_SIGNALS 21778c2ecf20Sopenharmony_ci help 21788c2ecf20Sopenharmony_ci Select this option if you want to build a 32-bit kernel. 21798c2ecf20Sopenharmony_ci 21808c2ecf20Sopenharmony_ciconfig 64BIT 21818c2ecf20Sopenharmony_ci bool "64-bit kernel" 21828c2ecf20Sopenharmony_ci depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL 21838c2ecf20Sopenharmony_ci help 21848c2ecf20Sopenharmony_ci Select this option if you want to build a 64-bit kernel. 21858c2ecf20Sopenharmony_ci 21868c2ecf20Sopenharmony_ciendchoice 21878c2ecf20Sopenharmony_ci 21888c2ecf20Sopenharmony_ciconfig KVM_GUEST 21898c2ecf20Sopenharmony_ci bool "KVM Guest Kernel" 21908c2ecf20Sopenharmony_ci depends on CPU_MIPS32_R2 21918c2ecf20Sopenharmony_ci depends on BROKEN_ON_SMP 21928c2ecf20Sopenharmony_ci help 21938c2ecf20Sopenharmony_ci Select this option if building a guest kernel for KVM (Trap & Emulate) 21948c2ecf20Sopenharmony_ci mode. 21958c2ecf20Sopenharmony_ci 21968c2ecf20Sopenharmony_ciconfig KVM_GUEST_TIMER_FREQ 21978c2ecf20Sopenharmony_ci int "Count/Compare Timer Frequency (MHz)" 21988c2ecf20Sopenharmony_ci depends on KVM_GUEST 21998c2ecf20Sopenharmony_ci default 100 22008c2ecf20Sopenharmony_ci help 22018c2ecf20Sopenharmony_ci Set this to non-zero if building a guest kernel for KVM to skip RTC 22028c2ecf20Sopenharmony_ci emulation when determining guest CPU Frequency. Instead, the guest's 22038c2ecf20Sopenharmony_ci timer frequency is specified directly. 22048c2ecf20Sopenharmony_ci 22058c2ecf20Sopenharmony_ciconfig MIPS_VA_BITS_48 22068c2ecf20Sopenharmony_ci bool "48 bits virtual memory" 22078c2ecf20Sopenharmony_ci depends on 64BIT 22088c2ecf20Sopenharmony_ci help 22098c2ecf20Sopenharmony_ci Support a maximum at least 48 bits of application virtual 22108c2ecf20Sopenharmony_ci memory. Default is 40 bits or less, depending on the CPU. 22118c2ecf20Sopenharmony_ci For page sizes 16k and above, this option results in a small 22128c2ecf20Sopenharmony_ci memory overhead for page tables. For 4k page size, a fourth 22138c2ecf20Sopenharmony_ci level of page tables is added which imposes both a memory 22148c2ecf20Sopenharmony_ci overhead as well as slower TLB fault handling. 22158c2ecf20Sopenharmony_ci 22168c2ecf20Sopenharmony_ci If unsure, say N. 22178c2ecf20Sopenharmony_ci 22188c2ecf20Sopenharmony_cichoice 22198c2ecf20Sopenharmony_ci prompt "Kernel page size" 22208c2ecf20Sopenharmony_ci default PAGE_SIZE_4KB 22218c2ecf20Sopenharmony_ci 22228c2ecf20Sopenharmony_ciconfig PAGE_SIZE_4KB 22238c2ecf20Sopenharmony_ci bool "4kB" 22248c2ecf20Sopenharmony_ci depends on !CPU_LOONGSON2EF && !CPU_LOONGSON64 22258c2ecf20Sopenharmony_ci help 22268c2ecf20Sopenharmony_ci This option select the standard 4kB Linux page size. On some 22278c2ecf20Sopenharmony_ci R3000-family processors this is the only available page size. Using 22288c2ecf20Sopenharmony_ci 4kB page size will minimize memory consumption and is therefore 22298c2ecf20Sopenharmony_ci recommended for low memory systems. 22308c2ecf20Sopenharmony_ci 22318c2ecf20Sopenharmony_ciconfig PAGE_SIZE_8KB 22328c2ecf20Sopenharmony_ci bool "8kB" 22338c2ecf20Sopenharmony_ci depends on CPU_CAVIUM_OCTEON 22348c2ecf20Sopenharmony_ci depends on !MIPS_VA_BITS_48 22358c2ecf20Sopenharmony_ci help 22368c2ecf20Sopenharmony_ci Using 8kB page size will result in higher performance kernel at 22378c2ecf20Sopenharmony_ci the price of higher memory consumption. This option is available 22388c2ecf20Sopenharmony_ci only on cnMIPS processors. Note that you will need a suitable Linux 22398c2ecf20Sopenharmony_ci distribution to support this. 22408c2ecf20Sopenharmony_ci 22418c2ecf20Sopenharmony_ciconfig PAGE_SIZE_16KB 22428c2ecf20Sopenharmony_ci bool "16kB" 22438c2ecf20Sopenharmony_ci depends on !CPU_R3000 && !CPU_TX39XX 22448c2ecf20Sopenharmony_ci help 22458c2ecf20Sopenharmony_ci Using 16kB page size will result in higher performance kernel at 22468c2ecf20Sopenharmony_ci the price of higher memory consumption. This option is available on 22478c2ecf20Sopenharmony_ci all non-R3000 family processors. Note that you will need a suitable 22488c2ecf20Sopenharmony_ci Linux distribution to support this. 22498c2ecf20Sopenharmony_ci 22508c2ecf20Sopenharmony_ciconfig PAGE_SIZE_32KB 22518c2ecf20Sopenharmony_ci bool "32kB" 22528c2ecf20Sopenharmony_ci depends on CPU_CAVIUM_OCTEON 22538c2ecf20Sopenharmony_ci depends on !MIPS_VA_BITS_48 22548c2ecf20Sopenharmony_ci help 22558c2ecf20Sopenharmony_ci Using 32kB page size will result in higher performance kernel at 22568c2ecf20Sopenharmony_ci the price of higher memory consumption. This option is available 22578c2ecf20Sopenharmony_ci only on cnMIPS cores. Note that you will need a suitable Linux 22588c2ecf20Sopenharmony_ci distribution to support this. 22598c2ecf20Sopenharmony_ci 22608c2ecf20Sopenharmony_ciconfig PAGE_SIZE_64KB 22618c2ecf20Sopenharmony_ci bool "64kB" 22628c2ecf20Sopenharmony_ci depends on !CPU_R3000 && !CPU_TX39XX 22638c2ecf20Sopenharmony_ci help 22648c2ecf20Sopenharmony_ci Using 64kB page size will result in higher performance kernel at 22658c2ecf20Sopenharmony_ci the price of higher memory consumption. This option is available on 22668c2ecf20Sopenharmony_ci all non-R3000 family processor. Not that at the time of this 22678c2ecf20Sopenharmony_ci writing this option is still high experimental. 22688c2ecf20Sopenharmony_ci 22698c2ecf20Sopenharmony_ciendchoice 22708c2ecf20Sopenharmony_ci 22718c2ecf20Sopenharmony_ciconfig FORCE_MAX_ZONEORDER 22728c2ecf20Sopenharmony_ci int "Maximum zone order" 22738c2ecf20Sopenharmony_ci range 14 64 if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_64KB 22748c2ecf20Sopenharmony_ci default "14" if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_64KB 22758c2ecf20Sopenharmony_ci range 13 64 if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_32KB 22768c2ecf20Sopenharmony_ci default "13" if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_32KB 22778c2ecf20Sopenharmony_ci range 12 64 if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_16KB 22788c2ecf20Sopenharmony_ci default "12" if MIPS_HUGE_TLB_SUPPORT && PAGE_SIZE_16KB 22798c2ecf20Sopenharmony_ci range 0 64 22808c2ecf20Sopenharmony_ci default "11" 22818c2ecf20Sopenharmony_ci help 22828c2ecf20Sopenharmony_ci The kernel memory allocator divides physically contiguous memory 22838c2ecf20Sopenharmony_ci blocks into "zones", where each zone is a power of two number of 22848c2ecf20Sopenharmony_ci pages. This option selects the largest power of two that the kernel 22858c2ecf20Sopenharmony_ci keeps in the memory allocator. If you need to allocate very large 22868c2ecf20Sopenharmony_ci blocks of physically contiguous memory, then you may need to 22878c2ecf20Sopenharmony_ci increase this value. 22888c2ecf20Sopenharmony_ci 22898c2ecf20Sopenharmony_ci This config option is actually maximum order plus one. For example, 22908c2ecf20Sopenharmony_ci a value of 11 means that the largest free memory block is 2^10 pages. 22918c2ecf20Sopenharmony_ci 22928c2ecf20Sopenharmony_ci The page size is not necessarily 4KB. Keep this in mind 22938c2ecf20Sopenharmony_ci when choosing a value for this option. 22948c2ecf20Sopenharmony_ci 22958c2ecf20Sopenharmony_ciconfig BOARD_SCACHE 22968c2ecf20Sopenharmony_ci bool 22978c2ecf20Sopenharmony_ci 22988c2ecf20Sopenharmony_ciconfig IP22_CPU_SCACHE 22998c2ecf20Sopenharmony_ci bool 23008c2ecf20Sopenharmony_ci select BOARD_SCACHE 23018c2ecf20Sopenharmony_ci 23028c2ecf20Sopenharmony_ci# 23038c2ecf20Sopenharmony_ci# Support for a MIPS32 / MIPS64 style S-caches 23048c2ecf20Sopenharmony_ci# 23058c2ecf20Sopenharmony_ciconfig MIPS_CPU_SCACHE 23068c2ecf20Sopenharmony_ci bool 23078c2ecf20Sopenharmony_ci select BOARD_SCACHE 23088c2ecf20Sopenharmony_ci 23098c2ecf20Sopenharmony_ciconfig R5000_CPU_SCACHE 23108c2ecf20Sopenharmony_ci bool 23118c2ecf20Sopenharmony_ci select BOARD_SCACHE 23128c2ecf20Sopenharmony_ci 23138c2ecf20Sopenharmony_ciconfig RM7000_CPU_SCACHE 23148c2ecf20Sopenharmony_ci bool 23158c2ecf20Sopenharmony_ci select BOARD_SCACHE 23168c2ecf20Sopenharmony_ci 23178c2ecf20Sopenharmony_ciconfig SIBYTE_DMA_PAGEOPS 23188c2ecf20Sopenharmony_ci bool "Use DMA to clear/copy pages" 23198c2ecf20Sopenharmony_ci depends on CPU_SB1 23208c2ecf20Sopenharmony_ci help 23218c2ecf20Sopenharmony_ci Instead of using the CPU to zero and copy pages, use a Data Mover 23228c2ecf20Sopenharmony_ci channel. These DMA channels are otherwise unused by the standard 23238c2ecf20Sopenharmony_ci SiByte Linux port. Seems to give a small performance benefit. 23248c2ecf20Sopenharmony_ci 23258c2ecf20Sopenharmony_ciconfig CPU_HAS_PREFETCH 23268c2ecf20Sopenharmony_ci bool 23278c2ecf20Sopenharmony_ci 23288c2ecf20Sopenharmony_ciconfig CPU_GENERIC_DUMP_TLB 23298c2ecf20Sopenharmony_ci bool 23308c2ecf20Sopenharmony_ci default y if !(CPU_R3000 || CPU_TX39XX) 23318c2ecf20Sopenharmony_ci 23328c2ecf20Sopenharmony_ciconfig MIPS_FP_SUPPORT 23338c2ecf20Sopenharmony_ci bool "Floating Point support" if EXPERT 23348c2ecf20Sopenharmony_ci default y 23358c2ecf20Sopenharmony_ci help 23368c2ecf20Sopenharmony_ci Select y to include support for floating point in the kernel 23378c2ecf20Sopenharmony_ci including initialization of FPU hardware, FP context save & restore 23388c2ecf20Sopenharmony_ci and emulation of an FPU where necessary. Without this support any 23398c2ecf20Sopenharmony_ci userland program attempting to use floating point instructions will 23408c2ecf20Sopenharmony_ci receive a SIGILL. 23418c2ecf20Sopenharmony_ci 23428c2ecf20Sopenharmony_ci If you know that your userland will not attempt to use floating point 23438c2ecf20Sopenharmony_ci instructions then you can say n here to shrink the kernel a little. 23448c2ecf20Sopenharmony_ci 23458c2ecf20Sopenharmony_ci If unsure, say y. 23468c2ecf20Sopenharmony_ci 23478c2ecf20Sopenharmony_ciconfig CPU_R2300_FPU 23488c2ecf20Sopenharmony_ci bool 23498c2ecf20Sopenharmony_ci depends on MIPS_FP_SUPPORT 23508c2ecf20Sopenharmony_ci default y if CPU_R3000 || CPU_TX39XX 23518c2ecf20Sopenharmony_ci 23528c2ecf20Sopenharmony_ciconfig CPU_R3K_TLB 23538c2ecf20Sopenharmony_ci bool 23548c2ecf20Sopenharmony_ci 23558c2ecf20Sopenharmony_ciconfig CPU_R4K_FPU 23568c2ecf20Sopenharmony_ci bool 23578c2ecf20Sopenharmony_ci depends on MIPS_FP_SUPPORT 23588c2ecf20Sopenharmony_ci default y if !CPU_R2300_FPU 23598c2ecf20Sopenharmony_ci 23608c2ecf20Sopenharmony_ciconfig CPU_R4K_CACHE_TLB 23618c2ecf20Sopenharmony_ci bool 23628c2ecf20Sopenharmony_ci default y if !(CPU_R3K_TLB || CPU_SB1 || CPU_CAVIUM_OCTEON) 23638c2ecf20Sopenharmony_ci 23648c2ecf20Sopenharmony_ciconfig MIPS_MT_SMP 23658c2ecf20Sopenharmony_ci bool "MIPS MT SMP support (1 TC on each available VPE)" 23668c2ecf20Sopenharmony_ci default y 23678c2ecf20Sopenharmony_ci depends on SYS_SUPPORTS_MULTITHREADING && !CPU_MIPSR6 && !CPU_MICROMIPS 23688c2ecf20Sopenharmony_ci select CPU_MIPSR2_IRQ_VI 23698c2ecf20Sopenharmony_ci select CPU_MIPSR2_IRQ_EI 23708c2ecf20Sopenharmony_ci select SYNC_R4K 23718c2ecf20Sopenharmony_ci select MIPS_MT 23728c2ecf20Sopenharmony_ci select SMP 23738c2ecf20Sopenharmony_ci select SMP_UP 23748c2ecf20Sopenharmony_ci select SYS_SUPPORTS_SMP 23758c2ecf20Sopenharmony_ci select SYS_SUPPORTS_SCHED_SMT 23768c2ecf20Sopenharmony_ci select MIPS_PERF_SHARED_TC_COUNTERS 23778c2ecf20Sopenharmony_ci help 23788c2ecf20Sopenharmony_ci This is a kernel model which is known as SMVP. This is supported 23798c2ecf20Sopenharmony_ci on cores with the MT ASE and uses the available VPEs to implement 23808c2ecf20Sopenharmony_ci virtual processors which supports SMP. This is equivalent to the 23818c2ecf20Sopenharmony_ci Intel Hyperthreading feature. For further information go to 23828c2ecf20Sopenharmony_ci <http://www.imgtec.com/mips/mips-multithreading.asp>. 23838c2ecf20Sopenharmony_ci 23848c2ecf20Sopenharmony_ciconfig MIPS_MT 23858c2ecf20Sopenharmony_ci bool 23868c2ecf20Sopenharmony_ci 23878c2ecf20Sopenharmony_ciconfig SCHED_SMT 23888c2ecf20Sopenharmony_ci bool "SMT (multithreading) scheduler support" 23898c2ecf20Sopenharmony_ci depends on SYS_SUPPORTS_SCHED_SMT 23908c2ecf20Sopenharmony_ci default n 23918c2ecf20Sopenharmony_ci help 23928c2ecf20Sopenharmony_ci SMT scheduler support improves the CPU scheduler's decision making 23938c2ecf20Sopenharmony_ci when dealing with MIPS MT enabled cores at a cost of slightly 23948c2ecf20Sopenharmony_ci increased overhead in some places. If unsure say N here. 23958c2ecf20Sopenharmony_ci 23968c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_SCHED_SMT 23978c2ecf20Sopenharmony_ci bool 23988c2ecf20Sopenharmony_ci 23998c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_MULTITHREADING 24008c2ecf20Sopenharmony_ci bool 24018c2ecf20Sopenharmony_ci 24028c2ecf20Sopenharmony_ciconfig MIPS_MT_FPAFF 24038c2ecf20Sopenharmony_ci bool "Dynamic FPU affinity for FP-intensive threads" 24048c2ecf20Sopenharmony_ci default y 24058c2ecf20Sopenharmony_ci depends on MIPS_MT_SMP 24068c2ecf20Sopenharmony_ci 24078c2ecf20Sopenharmony_ciconfig MIPSR2_TO_R6_EMULATOR 24088c2ecf20Sopenharmony_ci bool "MIPS R2-to-R6 emulator" 24098c2ecf20Sopenharmony_ci depends on CPU_MIPSR6 24108c2ecf20Sopenharmony_ci depends on MIPS_FP_SUPPORT 24118c2ecf20Sopenharmony_ci default y 24128c2ecf20Sopenharmony_ci help 24138c2ecf20Sopenharmony_ci Choose this option if you want to run non-R6 MIPS userland code. 24148c2ecf20Sopenharmony_ci Even if you say 'Y' here, the emulator will still be disabled by 24158c2ecf20Sopenharmony_ci default. You can enable it using the 'mipsr2emu' kernel option. 24168c2ecf20Sopenharmony_ci The only reason this is a build-time option is to save ~14K from the 24178c2ecf20Sopenharmony_ci final kernel image. 24188c2ecf20Sopenharmony_ci 24198c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_VPE_LOADER 24208c2ecf20Sopenharmony_ci bool 24218c2ecf20Sopenharmony_ci depends on SYS_SUPPORTS_MULTITHREADING 24228c2ecf20Sopenharmony_ci help 24238c2ecf20Sopenharmony_ci Indicates that the platform supports the VPE loader, and provides 24248c2ecf20Sopenharmony_ci physical_memsize. 24258c2ecf20Sopenharmony_ci 24268c2ecf20Sopenharmony_ciconfig MIPS_VPE_LOADER 24278c2ecf20Sopenharmony_ci bool "VPE loader support." 24288c2ecf20Sopenharmony_ci depends on SYS_SUPPORTS_VPE_LOADER && MODULES 24298c2ecf20Sopenharmony_ci select CPU_MIPSR2_IRQ_VI 24308c2ecf20Sopenharmony_ci select CPU_MIPSR2_IRQ_EI 24318c2ecf20Sopenharmony_ci select MIPS_MT 24328c2ecf20Sopenharmony_ci help 24338c2ecf20Sopenharmony_ci Includes a loader for loading an elf relocatable object 24348c2ecf20Sopenharmony_ci onto another VPE and running it. 24358c2ecf20Sopenharmony_ci 24368c2ecf20Sopenharmony_ciconfig MIPS_VPE_LOADER_CMP 24378c2ecf20Sopenharmony_ci bool 24388c2ecf20Sopenharmony_ci default "y" 24398c2ecf20Sopenharmony_ci depends on MIPS_VPE_LOADER && MIPS_CMP 24408c2ecf20Sopenharmony_ci 24418c2ecf20Sopenharmony_ciconfig MIPS_VPE_LOADER_MT 24428c2ecf20Sopenharmony_ci bool 24438c2ecf20Sopenharmony_ci default "y" 24448c2ecf20Sopenharmony_ci depends on MIPS_VPE_LOADER && !MIPS_CMP 24458c2ecf20Sopenharmony_ci 24468c2ecf20Sopenharmony_ciconfig MIPS_VPE_LOADER_TOM 24478c2ecf20Sopenharmony_ci bool "Load VPE program into memory hidden from linux" 24488c2ecf20Sopenharmony_ci depends on MIPS_VPE_LOADER 24498c2ecf20Sopenharmony_ci default y 24508c2ecf20Sopenharmony_ci help 24518c2ecf20Sopenharmony_ci The loader can use memory that is present but has been hidden from 24528c2ecf20Sopenharmony_ci Linux using the kernel command line option "mem=xxMB". It's up to 24538c2ecf20Sopenharmony_ci you to ensure the amount you put in the option and the space your 24548c2ecf20Sopenharmony_ci program requires is less or equal to the amount physically present. 24558c2ecf20Sopenharmony_ci 24568c2ecf20Sopenharmony_ciconfig MIPS_VPE_APSP_API 24578c2ecf20Sopenharmony_ci bool "Enable support for AP/SP API (RTLX)" 24588c2ecf20Sopenharmony_ci depends on MIPS_VPE_LOADER 24598c2ecf20Sopenharmony_ci 24608c2ecf20Sopenharmony_ciconfig MIPS_VPE_APSP_API_CMP 24618c2ecf20Sopenharmony_ci bool 24628c2ecf20Sopenharmony_ci default "y" 24638c2ecf20Sopenharmony_ci depends on MIPS_VPE_APSP_API && MIPS_CMP 24648c2ecf20Sopenharmony_ci 24658c2ecf20Sopenharmony_ciconfig MIPS_VPE_APSP_API_MT 24668c2ecf20Sopenharmony_ci bool 24678c2ecf20Sopenharmony_ci default "y" 24688c2ecf20Sopenharmony_ci depends on MIPS_VPE_APSP_API && !MIPS_CMP 24698c2ecf20Sopenharmony_ci 24708c2ecf20Sopenharmony_ciconfig MIPS_CMP 24718c2ecf20Sopenharmony_ci bool "MIPS CMP framework support (DEPRECATED)" 24728c2ecf20Sopenharmony_ci depends on SYS_SUPPORTS_MIPS_CMP && !CPU_MIPSR6 24738c2ecf20Sopenharmony_ci select SMP 24748c2ecf20Sopenharmony_ci select SYNC_R4K 24758c2ecf20Sopenharmony_ci select SYS_SUPPORTS_SMP 24768c2ecf20Sopenharmony_ci select WEAK_ORDERING 24778c2ecf20Sopenharmony_ci default n 24788c2ecf20Sopenharmony_ci help 24798c2ecf20Sopenharmony_ci Select this if you are using a bootloader which implements the "CMP 24808c2ecf20Sopenharmony_ci framework" protocol (ie. YAMON) and want your kernel to make use of 24818c2ecf20Sopenharmony_ci its ability to start secondary CPUs. 24828c2ecf20Sopenharmony_ci 24838c2ecf20Sopenharmony_ci Unless you have a specific need, you should use CONFIG_MIPS_CPS 24848c2ecf20Sopenharmony_ci instead of this. 24858c2ecf20Sopenharmony_ci 24868c2ecf20Sopenharmony_ciconfig MIPS_CPS 24878c2ecf20Sopenharmony_ci bool "MIPS Coherent Processing System support" 24888c2ecf20Sopenharmony_ci depends on SYS_SUPPORTS_MIPS_CPS 24898c2ecf20Sopenharmony_ci select MIPS_CM 24908c2ecf20Sopenharmony_ci select MIPS_CPS_PM if HOTPLUG_CPU 24918c2ecf20Sopenharmony_ci select SMP 24928c2ecf20Sopenharmony_ci select SYNC_R4K if (CEVT_R4K || CSRC_R4K) 24938c2ecf20Sopenharmony_ci select SYS_SUPPORTS_HOTPLUG_CPU 24948c2ecf20Sopenharmony_ci select SYS_SUPPORTS_SCHED_SMT if CPU_MIPSR6 24958c2ecf20Sopenharmony_ci select SYS_SUPPORTS_SMP 24968c2ecf20Sopenharmony_ci select WEAK_ORDERING 24978c2ecf20Sopenharmony_ci help 24988c2ecf20Sopenharmony_ci Select this if you wish to run an SMP kernel across multiple cores 24998c2ecf20Sopenharmony_ci within a MIPS Coherent Processing System. When this option is 25008c2ecf20Sopenharmony_ci enabled the kernel will probe for other cores and boot them with 25018c2ecf20Sopenharmony_ci no external assistance. It is safe to enable this when hardware 25028c2ecf20Sopenharmony_ci support is unavailable. 25038c2ecf20Sopenharmony_ci 25048c2ecf20Sopenharmony_ciconfig MIPS_CPS_PM 25058c2ecf20Sopenharmony_ci depends on MIPS_CPS 25068c2ecf20Sopenharmony_ci bool 25078c2ecf20Sopenharmony_ci 25088c2ecf20Sopenharmony_ciconfig MIPS_CM 25098c2ecf20Sopenharmony_ci bool 25108c2ecf20Sopenharmony_ci select MIPS_CPC 25118c2ecf20Sopenharmony_ci 25128c2ecf20Sopenharmony_ciconfig MIPS_CPC 25138c2ecf20Sopenharmony_ci bool 25148c2ecf20Sopenharmony_ci 25158c2ecf20Sopenharmony_ciconfig SB1_PASS_2_WORKAROUNDS 25168c2ecf20Sopenharmony_ci bool 25178c2ecf20Sopenharmony_ci depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2) 25188c2ecf20Sopenharmony_ci default y 25198c2ecf20Sopenharmony_ci 25208c2ecf20Sopenharmony_ciconfig SB1_PASS_2_1_WORKAROUNDS 25218c2ecf20Sopenharmony_ci bool 25228c2ecf20Sopenharmony_ci depends on CPU_SB1 && CPU_SB1_PASS_2 25238c2ecf20Sopenharmony_ci default y 25248c2ecf20Sopenharmony_ci 25258c2ecf20Sopenharmony_cichoice 25268c2ecf20Sopenharmony_ci prompt "SmartMIPS or microMIPS ASE support" 25278c2ecf20Sopenharmony_ci 25288c2ecf20Sopenharmony_ciconfig CPU_NEEDS_NO_SMARTMIPS_OR_MICROMIPS 25298c2ecf20Sopenharmony_ci bool "None" 25308c2ecf20Sopenharmony_ci help 25318c2ecf20Sopenharmony_ci Select this if you want neither microMIPS nor SmartMIPS support 25328c2ecf20Sopenharmony_ci 25338c2ecf20Sopenharmony_ciconfig CPU_HAS_SMARTMIPS 25348c2ecf20Sopenharmony_ci depends on SYS_SUPPORTS_SMARTMIPS 25358c2ecf20Sopenharmony_ci bool "SmartMIPS" 25368c2ecf20Sopenharmony_ci help 25378c2ecf20Sopenharmony_ci SmartMIPS is a extension of the MIPS32 architecture aimed at 25388c2ecf20Sopenharmony_ci increased security at both hardware and software level for 25398c2ecf20Sopenharmony_ci smartcards. Enabling this option will allow proper use of the 25408c2ecf20Sopenharmony_ci SmartMIPS instructions by Linux applications. However a kernel with 25418c2ecf20Sopenharmony_ci this option will not work on a MIPS core without SmartMIPS core. If 25428c2ecf20Sopenharmony_ci you don't know you probably don't have SmartMIPS and should say N 25438c2ecf20Sopenharmony_ci here. 25448c2ecf20Sopenharmony_ci 25458c2ecf20Sopenharmony_ciconfig CPU_MICROMIPS 25468c2ecf20Sopenharmony_ci depends on 32BIT && SYS_SUPPORTS_MICROMIPS && !CPU_MIPSR6 25478c2ecf20Sopenharmony_ci bool "microMIPS" 25488c2ecf20Sopenharmony_ci help 25498c2ecf20Sopenharmony_ci When this option is enabled the kernel will be built using the 25508c2ecf20Sopenharmony_ci microMIPS ISA 25518c2ecf20Sopenharmony_ci 25528c2ecf20Sopenharmony_ciendchoice 25538c2ecf20Sopenharmony_ci 25548c2ecf20Sopenharmony_ciconfig CPU_HAS_MSA 25558c2ecf20Sopenharmony_ci bool "Support for the MIPS SIMD Architecture" 25568c2ecf20Sopenharmony_ci depends on CPU_SUPPORTS_MSA 25578c2ecf20Sopenharmony_ci depends on MIPS_FP_SUPPORT 25588c2ecf20Sopenharmony_ci depends on 64BIT || MIPS_O32_FP64_SUPPORT 25598c2ecf20Sopenharmony_ci help 25608c2ecf20Sopenharmony_ci MIPS SIMD Architecture (MSA) introduces 128 bit wide vector registers 25618c2ecf20Sopenharmony_ci and a set of SIMD instructions to operate on them. When this option 25628c2ecf20Sopenharmony_ci is enabled the kernel will support allocating & switching MSA 25638c2ecf20Sopenharmony_ci vector register contexts. If you know that your kernel will only be 25648c2ecf20Sopenharmony_ci running on CPUs which do not support MSA or that your userland will 25658c2ecf20Sopenharmony_ci not be making use of it then you may wish to say N here to reduce 25668c2ecf20Sopenharmony_ci the size & complexity of your kernel. 25678c2ecf20Sopenharmony_ci 25688c2ecf20Sopenharmony_ci If unsure, say Y. 25698c2ecf20Sopenharmony_ci 25708c2ecf20Sopenharmony_ciconfig CPU_HAS_WB 25718c2ecf20Sopenharmony_ci bool 25728c2ecf20Sopenharmony_ci 25738c2ecf20Sopenharmony_ciconfig XKS01 25748c2ecf20Sopenharmony_ci bool 25758c2ecf20Sopenharmony_ci 25768c2ecf20Sopenharmony_ciconfig CPU_HAS_DIEI 25778c2ecf20Sopenharmony_ci depends on !CPU_DIEI_BROKEN 25788c2ecf20Sopenharmony_ci bool 25798c2ecf20Sopenharmony_ci 25808c2ecf20Sopenharmony_ciconfig CPU_DIEI_BROKEN 25818c2ecf20Sopenharmony_ci bool 25828c2ecf20Sopenharmony_ci 25838c2ecf20Sopenharmony_ciconfig CPU_HAS_RIXI 25848c2ecf20Sopenharmony_ci bool 25858c2ecf20Sopenharmony_ci 25868c2ecf20Sopenharmony_ciconfig CPU_NO_LOAD_STORE_LR 25878c2ecf20Sopenharmony_ci bool 25888c2ecf20Sopenharmony_ci help 25898c2ecf20Sopenharmony_ci CPU lacks support for unaligned load and store instructions: 25908c2ecf20Sopenharmony_ci LWL, LWR, SWL, SWR (Load/store word left/right). 25918c2ecf20Sopenharmony_ci LDL, LDR, SDL, SDR (Load/store doubleword left/right, for 64bit 25928c2ecf20Sopenharmony_ci systems). 25938c2ecf20Sopenharmony_ci 25948c2ecf20Sopenharmony_ci# 25958c2ecf20Sopenharmony_ci# Vectored interrupt mode is an R2 feature 25968c2ecf20Sopenharmony_ci# 25978c2ecf20Sopenharmony_ciconfig CPU_MIPSR2_IRQ_VI 25988c2ecf20Sopenharmony_ci bool 25998c2ecf20Sopenharmony_ci 26008c2ecf20Sopenharmony_ci# 26018c2ecf20Sopenharmony_ci# Extended interrupt mode is an R2 feature 26028c2ecf20Sopenharmony_ci# 26038c2ecf20Sopenharmony_ciconfig CPU_MIPSR2_IRQ_EI 26048c2ecf20Sopenharmony_ci bool 26058c2ecf20Sopenharmony_ci 26068c2ecf20Sopenharmony_ciconfig CPU_HAS_SYNC 26078c2ecf20Sopenharmony_ci bool 26088c2ecf20Sopenharmony_ci depends on !CPU_R3000 26098c2ecf20Sopenharmony_ci default y 26108c2ecf20Sopenharmony_ci 26118c2ecf20Sopenharmony_ci# 26128c2ecf20Sopenharmony_ci# CPU non-features 26138c2ecf20Sopenharmony_ci# 26148c2ecf20Sopenharmony_ciconfig CPU_DADDI_WORKAROUNDS 26158c2ecf20Sopenharmony_ci bool 26168c2ecf20Sopenharmony_ci 26178c2ecf20Sopenharmony_ciconfig CPU_R4000_WORKAROUNDS 26188c2ecf20Sopenharmony_ci bool 26198c2ecf20Sopenharmony_ci select CPU_R4400_WORKAROUNDS 26208c2ecf20Sopenharmony_ci 26218c2ecf20Sopenharmony_ciconfig CPU_R4400_WORKAROUNDS 26228c2ecf20Sopenharmony_ci bool 26238c2ecf20Sopenharmony_ci 26248c2ecf20Sopenharmony_ciconfig CPU_R4X00_BUGS64 26258c2ecf20Sopenharmony_ci bool 26268c2ecf20Sopenharmony_ci default y if SYS_HAS_CPU_R4X00 && 64BIT && (TARGET_ISA_REV < 1) 26278c2ecf20Sopenharmony_ci 26288c2ecf20Sopenharmony_ciconfig MIPS_ASID_SHIFT 26298c2ecf20Sopenharmony_ci int 26308c2ecf20Sopenharmony_ci default 6 if CPU_R3000 || CPU_TX39XX 26318c2ecf20Sopenharmony_ci default 0 26328c2ecf20Sopenharmony_ci 26338c2ecf20Sopenharmony_ciconfig MIPS_ASID_BITS 26348c2ecf20Sopenharmony_ci int 26358c2ecf20Sopenharmony_ci default 0 if MIPS_ASID_BITS_VARIABLE 26368c2ecf20Sopenharmony_ci default 6 if CPU_R3000 || CPU_TX39XX 26378c2ecf20Sopenharmony_ci default 8 26388c2ecf20Sopenharmony_ci 26398c2ecf20Sopenharmony_ciconfig MIPS_ASID_BITS_VARIABLE 26408c2ecf20Sopenharmony_ci bool 26418c2ecf20Sopenharmony_ci 26428c2ecf20Sopenharmony_ciconfig MIPS_CRC_SUPPORT 26438c2ecf20Sopenharmony_ci bool 26448c2ecf20Sopenharmony_ci 26458c2ecf20Sopenharmony_ci# R4600 erratum. Due to the lack of errata information the exact 26468c2ecf20Sopenharmony_ci# technical details aren't known. I've experimentally found that disabling 26478c2ecf20Sopenharmony_ci# interrupts during indexed I-cache flushes seems to be sufficient to deal 26488c2ecf20Sopenharmony_ci# with the issue. 26498c2ecf20Sopenharmony_ciconfig WAR_R4600_V1_INDEX_ICACHEOP 26508c2ecf20Sopenharmony_ci bool 26518c2ecf20Sopenharmony_ci 26528c2ecf20Sopenharmony_ci# Pleasures of the R4600 V1.x. Cite from the IDT R4600 V1.7 errata: 26538c2ecf20Sopenharmony_ci# 26548c2ecf20Sopenharmony_ci# 18. The CACHE instructions Hit_Writeback_Invalidate_D, Hit_Writeback_D, 26558c2ecf20Sopenharmony_ci# Hit_Invalidate_D and Create_Dirty_Excl_D should only be 26568c2ecf20Sopenharmony_ci# executed if there is no other dcache activity. If the dcache is 26578c2ecf20Sopenharmony_ci# accessed for another instruction immeidately preceding when these 26588c2ecf20Sopenharmony_ci# cache instructions are executing, it is possible that the dcache 26598c2ecf20Sopenharmony_ci# tag match outputs used by these cache instructions will be 26608c2ecf20Sopenharmony_ci# incorrect. These cache instructions should be preceded by at least 26618c2ecf20Sopenharmony_ci# four instructions that are not any kind of load or store 26628c2ecf20Sopenharmony_ci# instruction. 26638c2ecf20Sopenharmony_ci# 26648c2ecf20Sopenharmony_ci# This is not allowed: lw 26658c2ecf20Sopenharmony_ci# nop 26668c2ecf20Sopenharmony_ci# nop 26678c2ecf20Sopenharmony_ci# nop 26688c2ecf20Sopenharmony_ci# cache Hit_Writeback_Invalidate_D 26698c2ecf20Sopenharmony_ci# 26708c2ecf20Sopenharmony_ci# This is allowed: lw 26718c2ecf20Sopenharmony_ci# nop 26728c2ecf20Sopenharmony_ci# nop 26738c2ecf20Sopenharmony_ci# nop 26748c2ecf20Sopenharmony_ci# nop 26758c2ecf20Sopenharmony_ci# cache Hit_Writeback_Invalidate_D 26768c2ecf20Sopenharmony_ciconfig WAR_R4600_V1_HIT_CACHEOP 26778c2ecf20Sopenharmony_ci bool 26788c2ecf20Sopenharmony_ci 26798c2ecf20Sopenharmony_ci# Writeback and invalidate the primary cache dcache before DMA. 26808c2ecf20Sopenharmony_ci# 26818c2ecf20Sopenharmony_ci# R4600 v2.0 bug: "The CACHE instructions Hit_Writeback_Inv_D, 26828c2ecf20Sopenharmony_ci# Hit_Writeback_D, Hit_Invalidate_D and Create_Dirty_Exclusive_D will only 26838c2ecf20Sopenharmony_ci# operate correctly if the internal data cache refill buffer is empty. These 26848c2ecf20Sopenharmony_ci# CACHE instructions should be separated from any potential data cache miss 26858c2ecf20Sopenharmony_ci# by a load instruction to an uncached address to empty the response buffer." 26868c2ecf20Sopenharmony_ci# (Revision 2.0 device errata from IDT available on https://www.idt.com/ 26878c2ecf20Sopenharmony_ci# in .pdf format.) 26888c2ecf20Sopenharmony_ciconfig WAR_R4600_V2_HIT_CACHEOP 26898c2ecf20Sopenharmony_ci bool 26908c2ecf20Sopenharmony_ci 26918c2ecf20Sopenharmony_ci# From TX49/H2 manual: "If the instruction (i.e. CACHE) is issued for 26928c2ecf20Sopenharmony_ci# the line which this instruction itself exists, the following 26938c2ecf20Sopenharmony_ci# operation is not guaranteed." 26948c2ecf20Sopenharmony_ci# 26958c2ecf20Sopenharmony_ci# Workaround: do two phase flushing for Index_Invalidate_I 26968c2ecf20Sopenharmony_ciconfig WAR_TX49XX_ICACHE_INDEX_INV 26978c2ecf20Sopenharmony_ci bool 26988c2ecf20Sopenharmony_ci 26998c2ecf20Sopenharmony_ci# The RM7000 processors and the E9000 cores have a bug (though PMC-Sierra 27008c2ecf20Sopenharmony_ci# opposes it being called that) where invalid instructions in the same 27018c2ecf20Sopenharmony_ci# I-cache line worth of instructions being fetched may case spurious 27028c2ecf20Sopenharmony_ci# exceptions. 27038c2ecf20Sopenharmony_ciconfig WAR_ICACHE_REFILLS 27048c2ecf20Sopenharmony_ci bool 27058c2ecf20Sopenharmony_ci 27068c2ecf20Sopenharmony_ci# On the R10000 up to version 2.6 (not sure about 2.7) there is a bug that 27078c2ecf20Sopenharmony_ci# may cause ll / sc and lld / scd sequences to execute non-atomically. 27088c2ecf20Sopenharmony_ciconfig WAR_R10000_LLSC 27098c2ecf20Sopenharmony_ci bool 27108c2ecf20Sopenharmony_ci 27118c2ecf20Sopenharmony_ci# 34K core erratum: "Problems Executing the TLBR Instruction" 27128c2ecf20Sopenharmony_ciconfig WAR_MIPS34K_MISSED_ITLB 27138c2ecf20Sopenharmony_ci bool 27148c2ecf20Sopenharmony_ci 27158c2ecf20Sopenharmony_ci# 27168c2ecf20Sopenharmony_ci# - Highmem only makes sense for the 32-bit kernel. 27178c2ecf20Sopenharmony_ci# - The current highmem code will only work properly on physically indexed 27188c2ecf20Sopenharmony_ci# caches such as R3000, SB1, R7000 or those that look like they're virtually 27198c2ecf20Sopenharmony_ci# indexed such as R4000/R4400 SC and MC versions or R10000. So for the 27208c2ecf20Sopenharmony_ci# moment we protect the user and offer the highmem option only on machines 27218c2ecf20Sopenharmony_ci# where it's known to be safe. This will not offer highmem on a few systems 27228c2ecf20Sopenharmony_ci# such as MIPS32 and MIPS64 CPUs which may have virtual and physically 27238c2ecf20Sopenharmony_ci# indexed CPUs but we're playing safe. 27248c2ecf20Sopenharmony_ci# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we 27258c2ecf20Sopenharmony_ci# know they might have memory configurations that could make use of highmem 27268c2ecf20Sopenharmony_ci# support. 27278c2ecf20Sopenharmony_ci# 27288c2ecf20Sopenharmony_ciconfig HIGHMEM 27298c2ecf20Sopenharmony_ci bool "High Memory Support" 27308c2ecf20Sopenharmony_ci depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM && !CPU_MIPS32_3_5_EVA 27318c2ecf20Sopenharmony_ci 27328c2ecf20Sopenharmony_ciconfig CPU_SUPPORTS_HIGHMEM 27338c2ecf20Sopenharmony_ci bool 27348c2ecf20Sopenharmony_ci 27358c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_HIGHMEM 27368c2ecf20Sopenharmony_ci bool 27378c2ecf20Sopenharmony_ci 27388c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_SMARTMIPS 27398c2ecf20Sopenharmony_ci bool 27408c2ecf20Sopenharmony_ci 27418c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_MICROMIPS 27428c2ecf20Sopenharmony_ci bool 27438c2ecf20Sopenharmony_ci 27448c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_MIPS16 27458c2ecf20Sopenharmony_ci bool 27468c2ecf20Sopenharmony_ci help 27478c2ecf20Sopenharmony_ci This option must be set if a kernel might be executed on a MIPS16- 27488c2ecf20Sopenharmony_ci enabled CPU even if MIPS16 is not actually being used. In other 27498c2ecf20Sopenharmony_ci words, it makes the kernel MIPS16-tolerant. 27508c2ecf20Sopenharmony_ci 27518c2ecf20Sopenharmony_ciconfig CPU_SUPPORTS_MSA 27528c2ecf20Sopenharmony_ci bool 27538c2ecf20Sopenharmony_ci 27548c2ecf20Sopenharmony_ciconfig ARCH_FLATMEM_ENABLE 27558c2ecf20Sopenharmony_ci def_bool y 27568c2ecf20Sopenharmony_ci depends on !NUMA && !CPU_LOONGSON2EF 27578c2ecf20Sopenharmony_ci 27588c2ecf20Sopenharmony_ciconfig ARCH_SPARSEMEM_ENABLE 27598c2ecf20Sopenharmony_ci bool 27608c2ecf20Sopenharmony_ci select SPARSEMEM_STATIC if !SGI_IP27 27618c2ecf20Sopenharmony_ci 27628c2ecf20Sopenharmony_ciconfig NUMA 27638c2ecf20Sopenharmony_ci bool "NUMA Support" 27648c2ecf20Sopenharmony_ci depends on SYS_SUPPORTS_NUMA 27658c2ecf20Sopenharmony_ci help 27668c2ecf20Sopenharmony_ci Say Y to compile the kernel to support NUMA (Non-Uniform Memory 27678c2ecf20Sopenharmony_ci Access). This option improves performance on systems with more 27688c2ecf20Sopenharmony_ci than two nodes; on two node systems it is generally better to 27698c2ecf20Sopenharmony_ci leave it disabled; on single node systems leave this option 27708c2ecf20Sopenharmony_ci disabled. 27718c2ecf20Sopenharmony_ci 27728c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_NUMA 27738c2ecf20Sopenharmony_ci bool 27748c2ecf20Sopenharmony_ci 27758c2ecf20Sopenharmony_ciconfig HAVE_SETUP_PER_CPU_AREA 27768c2ecf20Sopenharmony_ci def_bool y 27778c2ecf20Sopenharmony_ci depends on NUMA 27788c2ecf20Sopenharmony_ci 27798c2ecf20Sopenharmony_ciconfig NEED_PER_CPU_EMBED_FIRST_CHUNK 27808c2ecf20Sopenharmony_ci def_bool y 27818c2ecf20Sopenharmony_ci depends on NUMA 27828c2ecf20Sopenharmony_ci 27838c2ecf20Sopenharmony_ciconfig RELOCATABLE 27848c2ecf20Sopenharmony_ci bool "Relocatable kernel" 27858c2ecf20Sopenharmony_ci depends on SYS_SUPPORTS_RELOCATABLE 27868c2ecf20Sopenharmony_ci depends on CPU_MIPS32_R2 || CPU_MIPS64_R2 || \ 27878c2ecf20Sopenharmony_ci CPU_MIPS32_R5 || CPU_MIPS64_R5 || \ 27888c2ecf20Sopenharmony_ci CPU_MIPS32_R6 || CPU_MIPS64_R6 || \ 27898c2ecf20Sopenharmony_ci CPU_P5600 || CAVIUM_OCTEON_SOC 27908c2ecf20Sopenharmony_ci help 27918c2ecf20Sopenharmony_ci This builds a kernel image that retains relocation information 27928c2ecf20Sopenharmony_ci so it can be loaded someplace besides the default 1MB. 27938c2ecf20Sopenharmony_ci The relocations make the kernel binary about 15% larger, 27948c2ecf20Sopenharmony_ci but are discarded at runtime 27958c2ecf20Sopenharmony_ci 27968c2ecf20Sopenharmony_ciconfig RELOCATION_TABLE_SIZE 27978c2ecf20Sopenharmony_ci hex "Relocation table size" 27988c2ecf20Sopenharmony_ci depends on RELOCATABLE 27998c2ecf20Sopenharmony_ci range 0x0 0x01000000 28008c2ecf20Sopenharmony_ci default "0x00100000" 28018c2ecf20Sopenharmony_ci help 28028c2ecf20Sopenharmony_ci A table of relocation data will be appended to the kernel binary 28038c2ecf20Sopenharmony_ci and parsed at boot to fix up the relocated kernel. 28048c2ecf20Sopenharmony_ci 28058c2ecf20Sopenharmony_ci This option allows the amount of space reserved for the table to be 28068c2ecf20Sopenharmony_ci adjusted, although the default of 1Mb should be ok in most cases. 28078c2ecf20Sopenharmony_ci 28088c2ecf20Sopenharmony_ci The build will fail and a valid size suggested if this is too small. 28098c2ecf20Sopenharmony_ci 28108c2ecf20Sopenharmony_ci If unsure, leave at the default value. 28118c2ecf20Sopenharmony_ci 28128c2ecf20Sopenharmony_ciconfig RANDOMIZE_BASE 28138c2ecf20Sopenharmony_ci bool "Randomize the address of the kernel image" 28148c2ecf20Sopenharmony_ci depends on RELOCATABLE 28158c2ecf20Sopenharmony_ci help 28168c2ecf20Sopenharmony_ci Randomizes the physical and virtual address at which the 28178c2ecf20Sopenharmony_ci kernel image is loaded, as a security feature that 28188c2ecf20Sopenharmony_ci deters exploit attempts relying on knowledge of the location 28198c2ecf20Sopenharmony_ci of kernel internals. 28208c2ecf20Sopenharmony_ci 28218c2ecf20Sopenharmony_ci Entropy is generated using any coprocessor 0 registers available. 28228c2ecf20Sopenharmony_ci 28238c2ecf20Sopenharmony_ci The kernel will be offset by up to RANDOMIZE_BASE_MAX_OFFSET. 28248c2ecf20Sopenharmony_ci 28258c2ecf20Sopenharmony_ci If unsure, say N. 28268c2ecf20Sopenharmony_ci 28278c2ecf20Sopenharmony_ciconfig RANDOMIZE_BASE_MAX_OFFSET 28288c2ecf20Sopenharmony_ci hex "Maximum kASLR offset" if EXPERT 28298c2ecf20Sopenharmony_ci depends on RANDOMIZE_BASE 28308c2ecf20Sopenharmony_ci range 0x0 0x40000000 if EVA || 64BIT 28318c2ecf20Sopenharmony_ci range 0x0 0x08000000 28328c2ecf20Sopenharmony_ci default "0x01000000" 28338c2ecf20Sopenharmony_ci help 28348c2ecf20Sopenharmony_ci When kASLR is active, this provides the maximum offset that will 28358c2ecf20Sopenharmony_ci be applied to the kernel image. It should be set according to the 28368c2ecf20Sopenharmony_ci amount of physical RAM available in the target system minus 28378c2ecf20Sopenharmony_ci PHYSICAL_START and must be a power of 2. 28388c2ecf20Sopenharmony_ci 28398c2ecf20Sopenharmony_ci This is limited by the size of KSEG0, 256Mb on 32-bit or 1Gb with 28408c2ecf20Sopenharmony_ci EVA or 64-bit. The default is 16Mb. 28418c2ecf20Sopenharmony_ci 28428c2ecf20Sopenharmony_ciconfig NODES_SHIFT 28438c2ecf20Sopenharmony_ci int 28448c2ecf20Sopenharmony_ci default "6" 28458c2ecf20Sopenharmony_ci depends on NEED_MULTIPLE_NODES 28468c2ecf20Sopenharmony_ci 28478c2ecf20Sopenharmony_ciconfig HW_PERF_EVENTS 28488c2ecf20Sopenharmony_ci bool "Enable hardware performance counter support for perf events" 28498c2ecf20Sopenharmony_ci depends on PERF_EVENTS && !OPROFILE && (CPU_MIPS32 || CPU_MIPS64 || CPU_R10000 || CPU_SB1 || CPU_CAVIUM_OCTEON || CPU_XLP || CPU_LOONGSON64) 28508c2ecf20Sopenharmony_ci default y 28518c2ecf20Sopenharmony_ci help 28528c2ecf20Sopenharmony_ci Enable hardware performance counter support for perf events. If 28538c2ecf20Sopenharmony_ci disabled, perf events will use software events only. 28548c2ecf20Sopenharmony_ci 28558c2ecf20Sopenharmony_ciconfig DMI 28568c2ecf20Sopenharmony_ci bool "Enable DMI scanning" 28578c2ecf20Sopenharmony_ci depends on MACH_LOONGSON64 28588c2ecf20Sopenharmony_ci select DMI_SCAN_MACHINE_NON_EFI_FALLBACK 28598c2ecf20Sopenharmony_ci default y 28608c2ecf20Sopenharmony_ci help 28618c2ecf20Sopenharmony_ci Enabled scanning of DMI to identify machine quirks. Say Y 28628c2ecf20Sopenharmony_ci here unless you have verified that your setup is not 28638c2ecf20Sopenharmony_ci affected by entries in the DMI blacklist. Required by PNP 28648c2ecf20Sopenharmony_ci BIOS code. 28658c2ecf20Sopenharmony_ci 28668c2ecf20Sopenharmony_ciconfig SMP 28678c2ecf20Sopenharmony_ci bool "Multi-Processing support" 28688c2ecf20Sopenharmony_ci depends on SYS_SUPPORTS_SMP 28698c2ecf20Sopenharmony_ci help 28708c2ecf20Sopenharmony_ci This enables support for systems with more than one CPU. If you have 28718c2ecf20Sopenharmony_ci a system with only one CPU, say N. If you have a system with more 28728c2ecf20Sopenharmony_ci than one CPU, say Y. 28738c2ecf20Sopenharmony_ci 28748c2ecf20Sopenharmony_ci If you say N here, the kernel will run on uni- and multiprocessor 28758c2ecf20Sopenharmony_ci machines, but will use only one CPU of a multiprocessor machine. If 28768c2ecf20Sopenharmony_ci you say Y here, the kernel will run on many, but not all, 28778c2ecf20Sopenharmony_ci uniprocessor machines. On a uniprocessor machine, the kernel 28788c2ecf20Sopenharmony_ci will run faster if you say N here. 28798c2ecf20Sopenharmony_ci 28808c2ecf20Sopenharmony_ci People using multiprocessor machines who say Y here should also say 28818c2ecf20Sopenharmony_ci Y to "Enhanced Real Time Clock Support", below. 28828c2ecf20Sopenharmony_ci 28838c2ecf20Sopenharmony_ci See also the SMP-HOWTO available at 28848c2ecf20Sopenharmony_ci <https://www.tldp.org/docs.html#howto>. 28858c2ecf20Sopenharmony_ci 28868c2ecf20Sopenharmony_ci If you don't know what to do here, say N. 28878c2ecf20Sopenharmony_ci 28888c2ecf20Sopenharmony_ciconfig HOTPLUG_CPU 28898c2ecf20Sopenharmony_ci bool "Support for hot-pluggable CPUs" 28908c2ecf20Sopenharmony_ci depends on SMP && SYS_SUPPORTS_HOTPLUG_CPU 28918c2ecf20Sopenharmony_ci help 28928c2ecf20Sopenharmony_ci Say Y here to allow turning CPUs off and on. CPUs can be 28938c2ecf20Sopenharmony_ci controlled through /sys/devices/system/cpu. 28948c2ecf20Sopenharmony_ci (Note: power management support will enable this option 28958c2ecf20Sopenharmony_ci automatically on SMP systems. ) 28968c2ecf20Sopenharmony_ci Say N if you want to disable CPU hotplug. 28978c2ecf20Sopenharmony_ci 28988c2ecf20Sopenharmony_ciconfig SMP_UP 28998c2ecf20Sopenharmony_ci bool 29008c2ecf20Sopenharmony_ci 29018c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_MIPS_CMP 29028c2ecf20Sopenharmony_ci bool 29038c2ecf20Sopenharmony_ci 29048c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_MIPS_CPS 29058c2ecf20Sopenharmony_ci bool 29068c2ecf20Sopenharmony_ci 29078c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_SMP 29088c2ecf20Sopenharmony_ci bool 29098c2ecf20Sopenharmony_ci 29108c2ecf20Sopenharmony_ciconfig NR_CPUS_DEFAULT_4 29118c2ecf20Sopenharmony_ci bool 29128c2ecf20Sopenharmony_ci 29138c2ecf20Sopenharmony_ciconfig NR_CPUS_DEFAULT_8 29148c2ecf20Sopenharmony_ci bool 29158c2ecf20Sopenharmony_ci 29168c2ecf20Sopenharmony_ciconfig NR_CPUS_DEFAULT_16 29178c2ecf20Sopenharmony_ci bool 29188c2ecf20Sopenharmony_ci 29198c2ecf20Sopenharmony_ciconfig NR_CPUS_DEFAULT_32 29208c2ecf20Sopenharmony_ci bool 29218c2ecf20Sopenharmony_ci 29228c2ecf20Sopenharmony_ciconfig NR_CPUS_DEFAULT_64 29238c2ecf20Sopenharmony_ci bool 29248c2ecf20Sopenharmony_ci 29258c2ecf20Sopenharmony_ciconfig NR_CPUS 29268c2ecf20Sopenharmony_ci int "Maximum number of CPUs (2-256)" 29278c2ecf20Sopenharmony_ci range 2 256 29288c2ecf20Sopenharmony_ci depends on SMP 29298c2ecf20Sopenharmony_ci default "4" if NR_CPUS_DEFAULT_4 29308c2ecf20Sopenharmony_ci default "8" if NR_CPUS_DEFAULT_8 29318c2ecf20Sopenharmony_ci default "16" if NR_CPUS_DEFAULT_16 29328c2ecf20Sopenharmony_ci default "32" if NR_CPUS_DEFAULT_32 29338c2ecf20Sopenharmony_ci default "64" if NR_CPUS_DEFAULT_64 29348c2ecf20Sopenharmony_ci help 29358c2ecf20Sopenharmony_ci This allows you to specify the maximum number of CPUs which this 29368c2ecf20Sopenharmony_ci kernel will support. The maximum supported value is 32 for 32-bit 29378c2ecf20Sopenharmony_ci kernel and 64 for 64-bit kernels; the minimum value which makes 29388c2ecf20Sopenharmony_ci sense is 1 for Qemu (useful only for kernel debugging purposes) 29398c2ecf20Sopenharmony_ci and 2 for all others. 29408c2ecf20Sopenharmony_ci 29418c2ecf20Sopenharmony_ci This is purely to save memory - each supported CPU adds 29428c2ecf20Sopenharmony_ci approximately eight kilobytes to the kernel image. For best 29438c2ecf20Sopenharmony_ci performance should round up your number of processors to the next 29448c2ecf20Sopenharmony_ci power of two. 29458c2ecf20Sopenharmony_ci 29468c2ecf20Sopenharmony_ciconfig MIPS_PERF_SHARED_TC_COUNTERS 29478c2ecf20Sopenharmony_ci bool 29488c2ecf20Sopenharmony_ci 29498c2ecf20Sopenharmony_ciconfig MIPS_NR_CPU_NR_MAP_1024 29508c2ecf20Sopenharmony_ci bool 29518c2ecf20Sopenharmony_ci 29528c2ecf20Sopenharmony_ciconfig MIPS_NR_CPU_NR_MAP 29538c2ecf20Sopenharmony_ci int 29548c2ecf20Sopenharmony_ci depends on SMP 29558c2ecf20Sopenharmony_ci default 1024 if MIPS_NR_CPU_NR_MAP_1024 29568c2ecf20Sopenharmony_ci default NR_CPUS if !MIPS_NR_CPU_NR_MAP_1024 29578c2ecf20Sopenharmony_ci 29588c2ecf20Sopenharmony_ci# 29598c2ecf20Sopenharmony_ci# Timer Interrupt Frequency Configuration 29608c2ecf20Sopenharmony_ci# 29618c2ecf20Sopenharmony_ci 29628c2ecf20Sopenharmony_cichoice 29638c2ecf20Sopenharmony_ci prompt "Timer frequency" 29648c2ecf20Sopenharmony_ci default HZ_250 29658c2ecf20Sopenharmony_ci help 29668c2ecf20Sopenharmony_ci Allows the configuration of the timer frequency. 29678c2ecf20Sopenharmony_ci 29688c2ecf20Sopenharmony_ci config HZ_24 29698c2ecf20Sopenharmony_ci bool "24 HZ" if SYS_SUPPORTS_24HZ || SYS_SUPPORTS_ARBIT_HZ 29708c2ecf20Sopenharmony_ci 29718c2ecf20Sopenharmony_ci config HZ_48 29728c2ecf20Sopenharmony_ci bool "48 HZ" if SYS_SUPPORTS_48HZ || SYS_SUPPORTS_ARBIT_HZ 29738c2ecf20Sopenharmony_ci 29748c2ecf20Sopenharmony_ci config HZ_100 29758c2ecf20Sopenharmony_ci bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ 29768c2ecf20Sopenharmony_ci 29778c2ecf20Sopenharmony_ci config HZ_128 29788c2ecf20Sopenharmony_ci bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ 29798c2ecf20Sopenharmony_ci 29808c2ecf20Sopenharmony_ci config HZ_250 29818c2ecf20Sopenharmony_ci bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ 29828c2ecf20Sopenharmony_ci 29838c2ecf20Sopenharmony_ci config HZ_256 29848c2ecf20Sopenharmony_ci bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ 29858c2ecf20Sopenharmony_ci 29868c2ecf20Sopenharmony_ci config HZ_1000 29878c2ecf20Sopenharmony_ci bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ 29888c2ecf20Sopenharmony_ci 29898c2ecf20Sopenharmony_ci config HZ_1024 29908c2ecf20Sopenharmony_ci bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ 29918c2ecf20Sopenharmony_ci 29928c2ecf20Sopenharmony_ciendchoice 29938c2ecf20Sopenharmony_ci 29948c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_24HZ 29958c2ecf20Sopenharmony_ci bool 29968c2ecf20Sopenharmony_ci 29978c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_48HZ 29988c2ecf20Sopenharmony_ci bool 29998c2ecf20Sopenharmony_ci 30008c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_100HZ 30018c2ecf20Sopenharmony_ci bool 30028c2ecf20Sopenharmony_ci 30038c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_128HZ 30048c2ecf20Sopenharmony_ci bool 30058c2ecf20Sopenharmony_ci 30068c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_250HZ 30078c2ecf20Sopenharmony_ci bool 30088c2ecf20Sopenharmony_ci 30098c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_256HZ 30108c2ecf20Sopenharmony_ci bool 30118c2ecf20Sopenharmony_ci 30128c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_1000HZ 30138c2ecf20Sopenharmony_ci bool 30148c2ecf20Sopenharmony_ci 30158c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_1024HZ 30168c2ecf20Sopenharmony_ci bool 30178c2ecf20Sopenharmony_ci 30188c2ecf20Sopenharmony_ciconfig SYS_SUPPORTS_ARBIT_HZ 30198c2ecf20Sopenharmony_ci bool 30208c2ecf20Sopenharmony_ci default y if !SYS_SUPPORTS_24HZ && \ 30218c2ecf20Sopenharmony_ci !SYS_SUPPORTS_48HZ && \ 30228c2ecf20Sopenharmony_ci !SYS_SUPPORTS_100HZ && \ 30238c2ecf20Sopenharmony_ci !SYS_SUPPORTS_128HZ && \ 30248c2ecf20Sopenharmony_ci !SYS_SUPPORTS_250HZ && \ 30258c2ecf20Sopenharmony_ci !SYS_SUPPORTS_256HZ && \ 30268c2ecf20Sopenharmony_ci !SYS_SUPPORTS_1000HZ && \ 30278c2ecf20Sopenharmony_ci !SYS_SUPPORTS_1024HZ 30288c2ecf20Sopenharmony_ci 30298c2ecf20Sopenharmony_ciconfig HZ 30308c2ecf20Sopenharmony_ci int 30318c2ecf20Sopenharmony_ci default 24 if HZ_24 30328c2ecf20Sopenharmony_ci default 48 if HZ_48 30338c2ecf20Sopenharmony_ci default 100 if HZ_100 30348c2ecf20Sopenharmony_ci default 128 if HZ_128 30358c2ecf20Sopenharmony_ci default 250 if HZ_250 30368c2ecf20Sopenharmony_ci default 256 if HZ_256 30378c2ecf20Sopenharmony_ci default 1000 if HZ_1000 30388c2ecf20Sopenharmony_ci default 1024 if HZ_1024 30398c2ecf20Sopenharmony_ci 30408c2ecf20Sopenharmony_ciconfig SCHED_HRTICK 30418c2ecf20Sopenharmony_ci def_bool HIGH_RES_TIMERS 30428c2ecf20Sopenharmony_ci 30438c2ecf20Sopenharmony_ciconfig KEXEC 30448c2ecf20Sopenharmony_ci bool "Kexec system call" 30458c2ecf20Sopenharmony_ci select KEXEC_CORE 30468c2ecf20Sopenharmony_ci help 30478c2ecf20Sopenharmony_ci kexec is a system call that implements the ability to shutdown your 30488c2ecf20Sopenharmony_ci current kernel, and to start another kernel. It is like a reboot 30498c2ecf20Sopenharmony_ci but it is independent of the system firmware. And like a reboot 30508c2ecf20Sopenharmony_ci you can start any kernel with it, not just Linux. 30518c2ecf20Sopenharmony_ci 30528c2ecf20Sopenharmony_ci The name comes from the similarity to the exec system call. 30538c2ecf20Sopenharmony_ci 30548c2ecf20Sopenharmony_ci It is an ongoing process to be certain the hardware in a machine 30558c2ecf20Sopenharmony_ci is properly shutdown, so do not be surprised if this code does not 30568c2ecf20Sopenharmony_ci initially work for you. As of this writing the exact hardware 30578c2ecf20Sopenharmony_ci interface is strongly in flux, so no good recommendation can be 30588c2ecf20Sopenharmony_ci made. 30598c2ecf20Sopenharmony_ci 30608c2ecf20Sopenharmony_ciconfig CRASH_DUMP 30618c2ecf20Sopenharmony_ci bool "Kernel crash dumps" 30628c2ecf20Sopenharmony_ci help 30638c2ecf20Sopenharmony_ci Generate crash dump after being started by kexec. 30648c2ecf20Sopenharmony_ci This should be normally only set in special crash dump kernels 30658c2ecf20Sopenharmony_ci which are loaded in the main kernel with kexec-tools into 30668c2ecf20Sopenharmony_ci a specially reserved region and then later executed after 30678c2ecf20Sopenharmony_ci a crash by kdump/kexec. The crash dump kernel must be compiled 30688c2ecf20Sopenharmony_ci to a memory address not used by the main kernel or firmware using 30698c2ecf20Sopenharmony_ci PHYSICAL_START. 30708c2ecf20Sopenharmony_ci 30718c2ecf20Sopenharmony_ciconfig PHYSICAL_START 30728c2ecf20Sopenharmony_ci hex "Physical address where the kernel is loaded" 30738c2ecf20Sopenharmony_ci default "0xffffffff84000000" 30748c2ecf20Sopenharmony_ci depends on CRASH_DUMP 30758c2ecf20Sopenharmony_ci help 30768c2ecf20Sopenharmony_ci This gives the CKSEG0 or KSEG0 address where the kernel is loaded. 30778c2ecf20Sopenharmony_ci If you plan to use kernel for capturing the crash dump change 30788c2ecf20Sopenharmony_ci this value to start of the reserved region (the "X" value as 30798c2ecf20Sopenharmony_ci specified in the "crashkernel=YM@XM" command line boot parameter 30808c2ecf20Sopenharmony_ci passed to the panic-ed kernel). 30818c2ecf20Sopenharmony_ci 30828c2ecf20Sopenharmony_ciconfig MIPS_O32_FP64_SUPPORT 30838c2ecf20Sopenharmony_ci bool "Support for O32 binaries using 64-bit FP" if !CPU_MIPSR6 30848c2ecf20Sopenharmony_ci depends on 32BIT || MIPS32_O32 30858c2ecf20Sopenharmony_ci help 30868c2ecf20Sopenharmony_ci When this is enabled, the kernel will support use of 64-bit floating 30878c2ecf20Sopenharmony_ci point registers with binaries using the O32 ABI along with the 30888c2ecf20Sopenharmony_ci EF_MIPS_FP64 ELF header flag (typically built with -mfp64). On 30898c2ecf20Sopenharmony_ci 32-bit MIPS systems this support is at the cost of increasing the 30908c2ecf20Sopenharmony_ci size and complexity of the compiled FPU emulator. Thus if you are 30918c2ecf20Sopenharmony_ci running a MIPS32 system and know that none of your userland binaries 30928c2ecf20Sopenharmony_ci will require 64-bit floating point, you may wish to reduce the size 30938c2ecf20Sopenharmony_ci of your kernel & potentially improve FP emulation performance by 30948c2ecf20Sopenharmony_ci saying N here. 30958c2ecf20Sopenharmony_ci 30968c2ecf20Sopenharmony_ci Although binutils currently supports use of this flag the details 30978c2ecf20Sopenharmony_ci concerning its effect upon the O32 ABI in userland are still being 30988c2ecf20Sopenharmony_ci worked on. In order to avoid userland becoming dependant upon current 30998c2ecf20Sopenharmony_ci behaviour before the details have been finalised, this option should 31008c2ecf20Sopenharmony_ci be considered experimental and only enabled by those working upon 31018c2ecf20Sopenharmony_ci said details. 31028c2ecf20Sopenharmony_ci 31038c2ecf20Sopenharmony_ci If unsure, say N. 31048c2ecf20Sopenharmony_ci 31058c2ecf20Sopenharmony_ciconfig USE_OF 31068c2ecf20Sopenharmony_ci bool 31078c2ecf20Sopenharmony_ci select OF 31088c2ecf20Sopenharmony_ci select OF_EARLY_FLATTREE 31098c2ecf20Sopenharmony_ci select IRQ_DOMAIN 31108c2ecf20Sopenharmony_ci 31118c2ecf20Sopenharmony_ciconfig UHI_BOOT 31128c2ecf20Sopenharmony_ci bool 31138c2ecf20Sopenharmony_ci 31148c2ecf20Sopenharmony_ciconfig BUILTIN_DTB 31158c2ecf20Sopenharmony_ci bool 31168c2ecf20Sopenharmony_ci 31178c2ecf20Sopenharmony_cichoice 31188c2ecf20Sopenharmony_ci prompt "Kernel appended dtb support" if USE_OF 31198c2ecf20Sopenharmony_ci default MIPS_NO_APPENDED_DTB 31208c2ecf20Sopenharmony_ci 31218c2ecf20Sopenharmony_ci config MIPS_NO_APPENDED_DTB 31228c2ecf20Sopenharmony_ci bool "None" 31238c2ecf20Sopenharmony_ci help 31248c2ecf20Sopenharmony_ci Do not enable appended dtb support. 31258c2ecf20Sopenharmony_ci 31268c2ecf20Sopenharmony_ci config MIPS_ELF_APPENDED_DTB 31278c2ecf20Sopenharmony_ci bool "vmlinux" 31288c2ecf20Sopenharmony_ci help 31298c2ecf20Sopenharmony_ci With this option, the boot code will look for a device tree binary 31308c2ecf20Sopenharmony_ci DTB) included in the vmlinux ELF section .appended_dtb. By default 31318c2ecf20Sopenharmony_ci it is empty and the DTB can be appended using binutils command 31328c2ecf20Sopenharmony_ci objcopy: 31338c2ecf20Sopenharmony_ci 31348c2ecf20Sopenharmony_ci objcopy --update-section .appended_dtb=<filename>.dtb vmlinux 31358c2ecf20Sopenharmony_ci 31368c2ecf20Sopenharmony_ci This is meant as a backward compatiblity convenience for those 31378c2ecf20Sopenharmony_ci systems with a bootloader that can't be upgraded to accommodate 31388c2ecf20Sopenharmony_ci the documented boot protocol using a device tree. 31398c2ecf20Sopenharmony_ci 31408c2ecf20Sopenharmony_ci config MIPS_RAW_APPENDED_DTB 31418c2ecf20Sopenharmony_ci bool "vmlinux.bin or vmlinuz.bin" 31428c2ecf20Sopenharmony_ci help 31438c2ecf20Sopenharmony_ci With this option, the boot code will look for a device tree binary 31448c2ecf20Sopenharmony_ci DTB) appended to raw vmlinux.bin or vmlinuz.bin. 31458c2ecf20Sopenharmony_ci (e.g. cat vmlinux.bin <filename>.dtb > vmlinux_w_dtb). 31468c2ecf20Sopenharmony_ci 31478c2ecf20Sopenharmony_ci This is meant as a backward compatibility convenience for those 31488c2ecf20Sopenharmony_ci systems with a bootloader that can't be upgraded to accommodate 31498c2ecf20Sopenharmony_ci the documented boot protocol using a device tree. 31508c2ecf20Sopenharmony_ci 31518c2ecf20Sopenharmony_ci Beware that there is very little in terms of protection against 31528c2ecf20Sopenharmony_ci this option being confused by leftover garbage in memory that might 31538c2ecf20Sopenharmony_ci look like a DTB header after a reboot if no actual DTB is appended 31548c2ecf20Sopenharmony_ci to vmlinux.bin. Do not leave this option active in a production kernel 31558c2ecf20Sopenharmony_ci if you don't intend to always append a DTB. 31568c2ecf20Sopenharmony_ciendchoice 31578c2ecf20Sopenharmony_ci 31588c2ecf20Sopenharmony_cichoice 31598c2ecf20Sopenharmony_ci prompt "Kernel command line type" if !CMDLINE_OVERRIDE 31608c2ecf20Sopenharmony_ci default MIPS_CMDLINE_FROM_DTB if USE_OF && !ATH79 && !MACH_INGENIC && \ 31618c2ecf20Sopenharmony_ci !MACH_LOONGSON64 && !MIPS_MALTA && \ 31628c2ecf20Sopenharmony_ci !CAVIUM_OCTEON_SOC 31638c2ecf20Sopenharmony_ci default MIPS_CMDLINE_FROM_BOOTLOADER 31648c2ecf20Sopenharmony_ci 31658c2ecf20Sopenharmony_ci config MIPS_CMDLINE_FROM_DTB 31668c2ecf20Sopenharmony_ci depends on USE_OF 31678c2ecf20Sopenharmony_ci bool "Dtb kernel arguments if available" 31688c2ecf20Sopenharmony_ci 31698c2ecf20Sopenharmony_ci config MIPS_CMDLINE_DTB_EXTEND 31708c2ecf20Sopenharmony_ci depends on USE_OF 31718c2ecf20Sopenharmony_ci bool "Extend dtb kernel arguments with bootloader arguments" 31728c2ecf20Sopenharmony_ci 31738c2ecf20Sopenharmony_ci config MIPS_CMDLINE_FROM_BOOTLOADER 31748c2ecf20Sopenharmony_ci bool "Bootloader kernel arguments if available" 31758c2ecf20Sopenharmony_ci 31768c2ecf20Sopenharmony_ci config MIPS_CMDLINE_BUILTIN_EXTEND 31778c2ecf20Sopenharmony_ci depends on CMDLINE_BOOL 31788c2ecf20Sopenharmony_ci bool "Extend builtin kernel arguments with bootloader arguments" 31798c2ecf20Sopenharmony_ciendchoice 31808c2ecf20Sopenharmony_ci 31818c2ecf20Sopenharmony_ciendmenu 31828c2ecf20Sopenharmony_ci 31838c2ecf20Sopenharmony_ciconfig LOCKDEP_SUPPORT 31848c2ecf20Sopenharmony_ci bool 31858c2ecf20Sopenharmony_ci default y 31868c2ecf20Sopenharmony_ci 31878c2ecf20Sopenharmony_ciconfig STACKTRACE_SUPPORT 31888c2ecf20Sopenharmony_ci bool 31898c2ecf20Sopenharmony_ci default y 31908c2ecf20Sopenharmony_ci 31918c2ecf20Sopenharmony_ciconfig PGTABLE_LEVELS 31928c2ecf20Sopenharmony_ci int 31938c2ecf20Sopenharmony_ci default 4 if PAGE_SIZE_4KB && MIPS_VA_BITS_48 31948c2ecf20Sopenharmony_ci default 3 if 64BIT && (!PAGE_SIZE_64KB || MIPS_VA_BITS_48) 31958c2ecf20Sopenharmony_ci default 2 31968c2ecf20Sopenharmony_ci 31978c2ecf20Sopenharmony_ciconfig MIPS_AUTO_PFN_OFFSET 31988c2ecf20Sopenharmony_ci bool 31998c2ecf20Sopenharmony_ci 32008c2ecf20Sopenharmony_cimenu "Bus options (PCI, PCMCIA, EISA, ISA, TC)" 32018c2ecf20Sopenharmony_ci 32028c2ecf20Sopenharmony_ciconfig PCI_DRIVERS_GENERIC 32038c2ecf20Sopenharmony_ci select PCI_DOMAINS_GENERIC if PCI 32048c2ecf20Sopenharmony_ci bool 32058c2ecf20Sopenharmony_ci 32068c2ecf20Sopenharmony_ciconfig PCI_DRIVERS_LEGACY 32078c2ecf20Sopenharmony_ci def_bool !PCI_DRIVERS_GENERIC 32088c2ecf20Sopenharmony_ci select NO_GENERIC_PCI_IOPORT_MAP 32098c2ecf20Sopenharmony_ci select PCI_DOMAINS if PCI 32108c2ecf20Sopenharmony_ci 32118c2ecf20Sopenharmony_ci# 32128c2ecf20Sopenharmony_ci# ISA support is now enabled via select. Too many systems still have the one 32138c2ecf20Sopenharmony_ci# or other ISA chip on the board that users don't know about so don't expect 32148c2ecf20Sopenharmony_ci# users to choose the right thing ... 32158c2ecf20Sopenharmony_ci# 32168c2ecf20Sopenharmony_ciconfig ISA 32178c2ecf20Sopenharmony_ci bool 32188c2ecf20Sopenharmony_ci 32198c2ecf20Sopenharmony_ciconfig TC 32208c2ecf20Sopenharmony_ci bool "TURBOchannel support" 32218c2ecf20Sopenharmony_ci depends on MACH_DECSTATION 32228c2ecf20Sopenharmony_ci help 32238c2ecf20Sopenharmony_ci TURBOchannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS 32248c2ecf20Sopenharmony_ci processors. TURBOchannel programming specifications are available 32258c2ecf20Sopenharmony_ci at: 32268c2ecf20Sopenharmony_ci <ftp://ftp.hp.com/pub/alphaserver/archive/triadd/> 32278c2ecf20Sopenharmony_ci and: 32288c2ecf20Sopenharmony_ci <http://www.computer-refuge.org/classiccmp/ftp.digital.com/pub/DEC/TriAdd/> 32298c2ecf20Sopenharmony_ci Linux driver support status is documented at: 32308c2ecf20Sopenharmony_ci <http://www.linux-mips.org/wiki/DECstation> 32318c2ecf20Sopenharmony_ci 32328c2ecf20Sopenharmony_ciconfig MMU 32338c2ecf20Sopenharmony_ci bool 32348c2ecf20Sopenharmony_ci default y 32358c2ecf20Sopenharmony_ci 32368c2ecf20Sopenharmony_ciconfig ARCH_MMAP_RND_BITS_MIN 32378c2ecf20Sopenharmony_ci default 12 if 64BIT 32388c2ecf20Sopenharmony_ci default 8 32398c2ecf20Sopenharmony_ci 32408c2ecf20Sopenharmony_ciconfig ARCH_MMAP_RND_BITS_MAX 32418c2ecf20Sopenharmony_ci default 18 if 64BIT 32428c2ecf20Sopenharmony_ci default 15 32438c2ecf20Sopenharmony_ci 32448c2ecf20Sopenharmony_ciconfig ARCH_MMAP_RND_COMPAT_BITS_MIN 32458c2ecf20Sopenharmony_ci default 8 32468c2ecf20Sopenharmony_ci 32478c2ecf20Sopenharmony_ciconfig ARCH_MMAP_RND_COMPAT_BITS_MAX 32488c2ecf20Sopenharmony_ci default 15 32498c2ecf20Sopenharmony_ci 32508c2ecf20Sopenharmony_ciconfig I8253 32518c2ecf20Sopenharmony_ci bool 32528c2ecf20Sopenharmony_ci select CLKSRC_I8253 32538c2ecf20Sopenharmony_ci select CLKEVT_I8253 32548c2ecf20Sopenharmony_ci select MIPS_EXTERNAL_TIMER 32558c2ecf20Sopenharmony_ci 32568c2ecf20Sopenharmony_ciconfig ZONE_DMA 32578c2ecf20Sopenharmony_ci bool 32588c2ecf20Sopenharmony_ci 32598c2ecf20Sopenharmony_ciconfig ZONE_DMA32 32608c2ecf20Sopenharmony_ci bool 32618c2ecf20Sopenharmony_ci 32628c2ecf20Sopenharmony_ciendmenu 32638c2ecf20Sopenharmony_ci 32648c2ecf20Sopenharmony_ciconfig TRAD_SIGNALS 32658c2ecf20Sopenharmony_ci bool 32668c2ecf20Sopenharmony_ci 32678c2ecf20Sopenharmony_ciconfig MIPS32_COMPAT 32688c2ecf20Sopenharmony_ci bool 32698c2ecf20Sopenharmony_ci 32708c2ecf20Sopenharmony_ciconfig COMPAT 32718c2ecf20Sopenharmony_ci bool 32728c2ecf20Sopenharmony_ci 32738c2ecf20Sopenharmony_ciconfig SYSVIPC_COMPAT 32748c2ecf20Sopenharmony_ci bool 32758c2ecf20Sopenharmony_ci 32768c2ecf20Sopenharmony_ciconfig MIPS32_O32 32778c2ecf20Sopenharmony_ci bool "Kernel support for o32 binaries" 32788c2ecf20Sopenharmony_ci depends on 64BIT 32798c2ecf20Sopenharmony_ci select ARCH_WANT_OLD_COMPAT_IPC 32808c2ecf20Sopenharmony_ci select COMPAT 32818c2ecf20Sopenharmony_ci select MIPS32_COMPAT 32828c2ecf20Sopenharmony_ci select SYSVIPC_COMPAT if SYSVIPC 32838c2ecf20Sopenharmony_ci help 32848c2ecf20Sopenharmony_ci Select this option if you want to run o32 binaries. These are pure 32858c2ecf20Sopenharmony_ci 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of 32868c2ecf20Sopenharmony_ci existing binaries are in this format. 32878c2ecf20Sopenharmony_ci 32888c2ecf20Sopenharmony_ci If unsure, say Y. 32898c2ecf20Sopenharmony_ci 32908c2ecf20Sopenharmony_ciconfig MIPS32_N32 32918c2ecf20Sopenharmony_ci bool "Kernel support for n32 binaries" 32928c2ecf20Sopenharmony_ci depends on 64BIT 32938c2ecf20Sopenharmony_ci select ARCH_WANT_COMPAT_IPC_PARSE_VERSION 32948c2ecf20Sopenharmony_ci select COMPAT 32958c2ecf20Sopenharmony_ci select MIPS32_COMPAT 32968c2ecf20Sopenharmony_ci select SYSVIPC_COMPAT if SYSVIPC 32978c2ecf20Sopenharmony_ci help 32988c2ecf20Sopenharmony_ci Select this option if you want to run n32 binaries. These are 32998c2ecf20Sopenharmony_ci 64-bit binaries using 32-bit quantities for addressing and certain 33008c2ecf20Sopenharmony_ci data that would normally be 64-bit. They are used in special 33018c2ecf20Sopenharmony_ci cases. 33028c2ecf20Sopenharmony_ci 33038c2ecf20Sopenharmony_ci If unsure, say N. 33048c2ecf20Sopenharmony_ci 33058c2ecf20Sopenharmony_ciconfig BINFMT_ELF32 33068c2ecf20Sopenharmony_ci bool 33078c2ecf20Sopenharmony_ci default y if MIPS32_O32 || MIPS32_N32 33088c2ecf20Sopenharmony_ci select ELFCORE 33098c2ecf20Sopenharmony_ci 33108c2ecf20Sopenharmony_cimenu "Power management options" 33118c2ecf20Sopenharmony_ci 33128c2ecf20Sopenharmony_ciconfig ARCH_HIBERNATION_POSSIBLE 33138c2ecf20Sopenharmony_ci def_bool y 33148c2ecf20Sopenharmony_ci depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP 33158c2ecf20Sopenharmony_ci 33168c2ecf20Sopenharmony_ciconfig ARCH_SUSPEND_POSSIBLE 33178c2ecf20Sopenharmony_ci def_bool y 33188c2ecf20Sopenharmony_ci depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP 33198c2ecf20Sopenharmony_ci 33208c2ecf20Sopenharmony_cisource "kernel/power/Kconfig" 33218c2ecf20Sopenharmony_ci 33228c2ecf20Sopenharmony_ciendmenu 33238c2ecf20Sopenharmony_ci 33248c2ecf20Sopenharmony_ciconfig MIPS_EXTERNAL_TIMER 33258c2ecf20Sopenharmony_ci bool 33268c2ecf20Sopenharmony_ci 33278c2ecf20Sopenharmony_cimenu "CPU Power Management" 33288c2ecf20Sopenharmony_ci 33298c2ecf20Sopenharmony_ciif CPU_SUPPORTS_CPUFREQ && MIPS_EXTERNAL_TIMER 33308c2ecf20Sopenharmony_cisource "drivers/cpufreq/Kconfig" 33318c2ecf20Sopenharmony_ciendif 33328c2ecf20Sopenharmony_ci 33338c2ecf20Sopenharmony_cisource "drivers/cpuidle/Kconfig" 33348c2ecf20Sopenharmony_ci 33358c2ecf20Sopenharmony_ciendmenu 33368c2ecf20Sopenharmony_ci 33378c2ecf20Sopenharmony_cisource "drivers/firmware/Kconfig" 33388c2ecf20Sopenharmony_ci 33398c2ecf20Sopenharmony_cisource "arch/mips/kvm/Kconfig" 33408c2ecf20Sopenharmony_ci 33418c2ecf20Sopenharmony_cisource "arch/mips/vdso/Kconfig" 3342