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