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