1 # SPDX-License-Identifier: GPL-2.0 1 # SPDX-License-Identifier: GPL-2.0 2 config LOONGARCH !! 2 config M68K 3 bool 3 bool 4 default y 4 default y 5 select ACPI !! 5 select ARCH_32BIT_OFF_T 6 select ACPI_GENERIC_GSI if ACPI !! 6 select ARCH_HAS_BINFMT_FLAT 7 select ACPI_MCFG if ACPI !! 7 select ARCH_HAS_DMA_PREP_COHERENT if HAS_DMA && MMU && !COLDFIRE 8 select ACPI_HOTPLUG_CPU if ACPI_PROCES !! 8 select ARCH_HAS_SYNC_DMA_FOR_DEVICE if HAS_DMA 9 select ACPI_PPTT if ACPI !! 9 select ARCH_HAVE_NMI_SAFE_CMPXCHG if RMW_INSNS 10 select ACPI_SYSTEM_POWER_STATES_SUPPOR !! 10 select ARCH_MIGHT_HAVE_PC_PARPORT if ISA 11 select ARCH_BINFMT_ELF_STATE !! 11 select ARCH_NO_PREEMPT if !COLDFIRE 12 select ARCH_DISABLE_KASAN_INLINE !! 12 select ARCH_WANT_IPC_PARSE_VERSION 13 select ARCH_ENABLE_MEMORY_HOTPLUG !! 13 select BINFMT_FLAT_ARGVP_ENVP_ON_STACK 14 select ARCH_ENABLE_MEMORY_HOTREMOVE !! 14 select DMA_DIRECT_REMAP if HAS_DMA && MMU && !COLDFIRE 15 select ARCH_ENABLE_THP_MIGRATION if TR !! 15 select GENERIC_ATOMIC64 16 select ARCH_HAS_ACPI_TABLE_UPGRADE << 17 select ARCH_HAS_CPU_FINALIZE_INIT << 18 select ARCH_HAS_CURRENT_STACK_POINTER << 19 select ARCH_HAS_DEBUG_VM_PGTABLE << 20 select ARCH_HAS_FAST_MULTIPLIER << 21 select ARCH_HAS_FORTIFY_SOURCE << 22 select ARCH_HAS_KCOV << 23 select ARCH_HAS_KERNEL_FPU_SUPPORT if << 24 select ARCH_HAS_NMI_SAFE_THIS_CPU_OPS << 25 select ARCH_HAS_NON_OVERLAPPING_ADDRES << 26 select ARCH_HAS_PTE_DEVMAP << 27 select ARCH_HAS_PTE_SPECIAL << 28 select ARCH_HAS_SET_MEMORY << 29 select ARCH_HAS_SET_DIRECT_MAP << 30 select ARCH_HAS_TICK_BROADCAST if GENE << 31 select ARCH_INLINE_READ_LOCK if !PREEM << 32 select ARCH_INLINE_READ_LOCK_BH if !PR << 33 select ARCH_INLINE_READ_LOCK_IRQ if !P << 34 select ARCH_INLINE_READ_LOCK_IRQSAVE i << 35 select ARCH_INLINE_READ_UNLOCK if !PRE << 36 select ARCH_INLINE_READ_UNLOCK_BH if ! << 37 select ARCH_INLINE_READ_UNLOCK_IRQ if << 38 select ARCH_INLINE_READ_UNLOCK_IRQREST << 39 select ARCH_INLINE_WRITE_LOCK if !PREE << 40 select ARCH_INLINE_WRITE_LOCK_BH if !P << 41 select ARCH_INLINE_WRITE_LOCK_IRQ if ! << 42 select ARCH_INLINE_WRITE_LOCK_IRQSAVE << 43 select ARCH_INLINE_WRITE_UNLOCK if !PR << 44 select ARCH_INLINE_WRITE_UNLOCK_BH if << 45 select ARCH_INLINE_WRITE_UNLOCK_IRQ if << 46 select ARCH_INLINE_WRITE_UNLOCK_IRQRES << 47 select ARCH_INLINE_SPIN_TRYLOCK if !PR << 48 select ARCH_INLINE_SPIN_TRYLOCK_BH if << 49 select ARCH_INLINE_SPIN_LOCK if !PREEM << 50 select ARCH_INLINE_SPIN_LOCK_BH if !PR << 51 select ARCH_INLINE_SPIN_LOCK_IRQ if !P << 52 select ARCH_INLINE_SPIN_LOCK_IRQSAVE i << 53 select ARCH_INLINE_SPIN_UNLOCK if !PRE << 54 select ARCH_INLINE_SPIN_UNLOCK_BH if ! << 55 select ARCH_INLINE_SPIN_UNLOCK_IRQ if << 56 select ARCH_INLINE_SPIN_UNLOCK_IRQREST << 57 select ARCH_KEEP_MEMBLOCK << 58 select ARCH_MIGHT_HAVE_PC_PARPORT << 59 select ARCH_MIGHT_HAVE_PC_SERIO << 60 select ARCH_SPARSEMEM_ENABLE << 61 select ARCH_STACKWALK << 62 select ARCH_SUPPORTS_ACPI << 63 select ARCH_SUPPORTS_ATOMIC_RMW << 64 select ARCH_SUPPORTS_HUGETLBFS << 65 select ARCH_SUPPORTS_INT128 if CC_HAS_ << 66 select ARCH_SUPPORTS_LTO_CLANG << 67 select ARCH_SUPPORTS_LTO_CLANG_THIN << 68 select ARCH_SUPPORTS_NUMA_BALANCING << 69 select ARCH_USE_BUILTIN_BSWAP << 70 select ARCH_USE_CMPXCHG_LOCKREF << 71 select ARCH_USE_QUEUED_RWLOCKS << 72 select ARCH_USE_QUEUED_SPINLOCKS << 73 select ARCH_WANT_DEFAULT_BPF_JIT << 74 select ARCH_WANT_DEFAULT_TOPDOWN_MMAP_ << 75 select ARCH_WANT_LD_ORPHAN_WARN << 76 select ARCH_WANT_OPTIMIZE_HUGETLB_VMEM << 77 select ARCH_WANTS_NO_INSTR << 78 select ARCH_WANTS_THP_SWAP if HAVE_ARC << 79 select BUILDTIME_TABLE_SORT << 80 select COMMON_CLK << 81 select CPU_PM << 82 select EFI << 83 select GENERIC_CLOCKEVENTS << 84 select GENERIC_CMOS_UPDATE << 85 select GENERIC_CPU_AUTOPROBE << 86 select GENERIC_CPU_DEVICES 16 select GENERIC_CPU_DEVICES 87 select GENERIC_CPU_VULNERABILITIES !! 17 select GENERIC_IOMAP 88 select GENERIC_ENTRY << 89 select GENERIC_GETTIMEOFDAY << 90 select GENERIC_IOREMAP if !ARCH_IOREMA << 91 select GENERIC_IRQ_MATRIX_ALLOCATOR << 92 select GENERIC_IRQ_MULTI_HANDLER << 93 select GENERIC_IRQ_PROBE << 94 select GENERIC_IRQ_SHOW 18 select GENERIC_IRQ_SHOW 95 select GENERIC_LIB_ASHLDI3 !! 19 select GENERIC_STRNCPY_FROM_USER if MMU 96 select GENERIC_LIB_ASHRDI3 !! 20 select GENERIC_STRNLEN_USER if MMU 97 select GENERIC_LIB_CMPDI2 !! 21 select HAVE_AOUT if MMU 98 select GENERIC_LIB_LSHRDI3 << 99 select GENERIC_LIB_UCMPDI2 << 100 select GENERIC_LIB_DEVMEM_IS_ALLOWED << 101 select GENERIC_PCI_IOMAP << 102 select GENERIC_SCHED_CLOCK << 103 select GENERIC_SMP_IDLE_THREAD << 104 select GENERIC_TIME_VSYSCALL << 105 select GENERIC_VDSO_TIME_NS << 106 select GPIOLIB << 107 select HAS_IOPORT << 108 select HAVE_ARCH_AUDITSYSCALL << 109 select HAVE_ARCH_JUMP_LABEL << 110 select HAVE_ARCH_JUMP_LABEL_RELATIVE << 111 select HAVE_ARCH_KASAN << 112 select HAVE_ARCH_KFENCE << 113 select HAVE_ARCH_KGDB if PERF_EVENTS << 114 select HAVE_ARCH_MMAP_RND_BITS if MMU << 115 select HAVE_ARCH_RANDOMIZE_KSTACK_OFFS << 116 select HAVE_ARCH_SECCOMP << 117 select HAVE_ARCH_SECCOMP_FILTER << 118 select HAVE_ARCH_TRACEHOOK << 119 select HAVE_ARCH_TRANSPARENT_HUGEPAGE << 120 select HAVE_ARCH_USERFAULTFD_MINOR if << 121 select HAVE_ASM_MODVERSIONS 22 select HAVE_ASM_MODVERSIONS 122 select HAVE_CONTEXT_TRACKING_USER !! 23 select HAVE_DEBUG_BUGVERBOSE 123 select HAVE_C_RECORDMCOUNT !! 24 select HAVE_FUTEX_CMPXCHG if MMU && FUTEX 124 select HAVE_DEBUG_KMEMLEAK !! 25 select HAVE_IDE 125 select HAVE_DEBUG_STACKOVERFLOW << 126 select HAVE_DMA_CONTIGUOUS << 127 select HAVE_DYNAMIC_FTRACE << 128 select HAVE_DYNAMIC_FTRACE_WITH_ARGS << 129 select HAVE_DYNAMIC_FTRACE_WITH_DIRECT << 130 select HAVE_DYNAMIC_FTRACE_WITH_REGS << 131 select HAVE_EBPF_JIT << 132 select HAVE_EFFICIENT_UNALIGNED_ACCESS << 133 select HAVE_EXIT_THREAD << 134 select HAVE_GUP_FAST << 135 select HAVE_FTRACE_MCOUNT_RECORD << 136 select HAVE_FUNCTION_ARG_ACCESS_API << 137 select HAVE_FUNCTION_ERROR_INJECTION << 138 select HAVE_FUNCTION_GRAPH_RETVAL if H << 139 select HAVE_FUNCTION_GRAPH_TRACER << 140 select HAVE_FUNCTION_TRACER << 141 select HAVE_GCC_PLUGINS << 142 select HAVE_GENERIC_VDSO << 143 select HAVE_HW_BREAKPOINT if PERF_EVEN << 144 select HAVE_IOREMAP_PROT << 145 select HAVE_IRQ_EXIT_ON_IRQ_STACK << 146 select HAVE_IRQ_TIME_ACCOUNTING << 147 select HAVE_KPROBES << 148 select HAVE_KPROBES_ON_FTRACE << 149 select HAVE_KRETPROBES << 150 select HAVE_LIVEPATCH << 151 select HAVE_MOD_ARCH_SPECIFIC 26 select HAVE_MOD_ARCH_SPECIFIC 152 select HAVE_NMI !! 27 select HAVE_UID16 153 select HAVE_OBJTOOL if AS_HAS_EXPLICIT !! 28 select MMU_GATHER_NO_RANGE if MMU 154 select HAVE_PCI !! 29 select MODULES_USE_ELF_REL 155 select HAVE_PERF_EVENTS !! 30 select MODULES_USE_ELF_RELA 156 select HAVE_PERF_REGS !! 31 select NO_DMA if !MMU && !COLDFIRE 157 select HAVE_PERF_USER_STACK_DUMP !! 32 select OLD_SIGACTION 158 select HAVE_PREEMPT_DYNAMIC_KEY !! 33 select OLD_SIGSUSPEND3 159 select HAVE_REGS_AND_STACK_ACCESS_API !! 34 select SET_FS 160 select HAVE_RELIABLE_STACKTRACE if UNW !! 35 select UACCESS_MEMCPY if !MMU 161 select HAVE_RETHOOK !! 36 select VIRT_TO_BUS 162 select HAVE_RSEQ << 163 select HAVE_RUST << 164 select HAVE_SAMPLE_FTRACE_DIRECT << 165 select HAVE_SAMPLE_FTRACE_DIRECT_MULTI << 166 select HAVE_SETUP_PER_CPU_AREA if NUMA << 167 select HAVE_STACK_VALIDATION if HAVE_O << 168 select HAVE_STACKPROTECTOR << 169 select HAVE_SYSCALL_TRACEPOINTS << 170 select HAVE_TIF_NOHZ << 171 select HAVE_VIRT_CPU_ACCOUNTING_GEN if << 172 select IRQ_FORCED_THREADING << 173 select IRQ_LOONGARCH_CPU << 174 select LOCK_MM_AND_FIND_VMA << 175 select MMU_GATHER_MERGE_VMAS if MMU << 176 select MODULES_USE_ELF_RELA if MODULES << 177 select NEED_PER_CPU_EMBED_FIRST_CHUNK << 178 select NEED_PER_CPU_PAGE_FIRST_CHUNK << 179 select OF << 180 select OF_EARLY_FLATTREE << 181 select PCI << 182 select PCI_DOMAINS_GENERIC << 183 select PCI_ECAM if ACPI << 184 select PCI_LOONGSON << 185 select PCI_MSI_ARCH_FALLBACKS << 186 select PCI_QUIRKS << 187 select PERF_USE_VMALLOC << 188 select RTC_LIB << 189 select SPARSE_IRQ << 190 select SYSCTL_ARCH_UNALIGN_ALLOW << 191 select SYSCTL_ARCH_UNALIGN_NO_WARN << 192 select SYSCTL_EXCEPTION_TRACE << 193 select SWIOTLB << 194 select TRACE_IRQFLAGS_SUPPORT << 195 select USE_PERCPU_NUMA_NODE_ID << 196 select USER_STACKTRACE_SUPPORT << 197 select VDSO_GETRANDOM << 198 select ZONE_DMA32 << 199 37 200 config 32BIT !! 38 config CPU_BIG_ENDIAN 201 bool << 202 << 203 config 64BIT << 204 def_bool y << 205 << 206 config GENERIC_BUG << 207 def_bool y 39 def_bool y 208 depends on BUG << 209 40 210 config GENERIC_BUG_RELATIVE_POINTERS !! 41 config ARCH_HAS_ILOG2_U32 211 def_bool y !! 42 bool 212 depends on GENERIC_BUG << 213 << 214 config GENERIC_CALIBRATE_DELAY << 215 def_bool y << 216 43 217 config GENERIC_CSUM !! 44 config ARCH_HAS_ILOG2_U64 218 def_bool y !! 45 bool 219 46 220 config GENERIC_HWEIGHT 47 config GENERIC_HWEIGHT 221 def_bool y << 222 << 223 config L1_CACHE_SHIFT << 224 int << 225 default "6" << 226 << 227 config LOCKDEP_SUPPORT << 228 bool 48 bool 229 default y 49 default y 230 50 231 config STACKTRACE_SUPPORT !! 51 config GENERIC_CALIBRATE_DELAY 232 bool 52 bool 233 default y 53 default y 234 54 235 # MACH_LOONGSON32 and MACH_LOONGSON64 are deli !! 55 config GENERIC_CSUM 236 # MIPS Loongson code, to preserve Loongson-spe << 237 # are shared between architectures, and specif << 238 config MACH_LOONGSON32 << 239 def_bool 32BIT << 240 << 241 config MACH_LOONGSON64 << 242 def_bool 64BIT << 243 << 244 config FIX_EARLYCON_MEM << 245 def_bool y << 246 << 247 config PGTABLE_2LEVEL << 248 bool << 249 << 250 config PGTABLE_3LEVEL << 251 bool << 252 << 253 config PGTABLE_4LEVEL << 254 bool 56 bool 255 57 256 config PGTABLE_LEVELS !! 58 config TIME_LOW_RES 257 int << 258 default 2 if PGTABLE_2LEVEL << 259 default 3 if PGTABLE_3LEVEL << 260 default 4 if PGTABLE_4LEVEL << 261 << 262 config SCHED_OMIT_FRAME_POINTER << 263 bool 59 bool 264 default y 60 default y 265 61 266 config AS_HAS_EXPLICIT_RELOCS !! 62 config NO_IOPORT_MAP 267 def_bool $(as-instr,x:pcalau12i \$t0$( !! 63 def_bool y 268 << 269 config AS_HAS_FCSR_CLASS << 270 def_bool $(as-instr,movfcsr2gr \$t0$(c << 271 << 272 config AS_HAS_THIN_ADD_SUB << 273 def_bool $(cc-option,-Wa$(comma)-mthin << 274 << 275 config AS_HAS_LSX_EXTENSION << 276 def_bool $(as-instr,vld \$vr0$(comma)\ << 277 << 278 config AS_HAS_LASX_EXTENSION << 279 def_bool $(as-instr,xvld \$xr0$(comma) << 280 << 281 config AS_HAS_LBT_EXTENSION << 282 def_bool $(as-instr,movscr2gr \$a0$(co << 283 << 284 config AS_HAS_LVZ_EXTENSION << 285 def_bool $(as-instr,hvcl 0) << 286 << 287 menu "Kernel type and options" << 288 << 289 source "kernel/Kconfig.hz" << 290 << 291 choice << 292 prompt "Page Table Layout" << 293 default 16KB_2LEVEL if 32BIT << 294 default 16KB_3LEVEL if 64BIT << 295 help << 296 Allows choosing the page table layou << 297 of page size and page table levels. << 298 address space are determined by the << 299 << 300 config 4KB_3LEVEL << 301 bool "4KB with 3 levels" << 302 select HAVE_PAGE_SIZE_4KB << 303 select PGTABLE_3LEVEL << 304 help << 305 This option selects 4KB page size wi << 306 support a maximum of 39 bits of appl << 307 << 308 config 4KB_4LEVEL << 309 bool "4KB with 4 levels" << 310 select HAVE_PAGE_SIZE_4KB << 311 select PGTABLE_4LEVEL << 312 help << 313 This option selects 4KB page size wi << 314 support a maximum of 48 bits of appl << 315 << 316 config 16KB_2LEVEL << 317 bool "16KB with 2 levels" << 318 select HAVE_PAGE_SIZE_16KB << 319 select PGTABLE_2LEVEL << 320 help << 321 This option selects 16KB page size w << 322 support a maximum of 36 bits of appl << 323 << 324 config 16KB_3LEVEL << 325 bool "16KB with 3 levels" << 326 select HAVE_PAGE_SIZE_16KB << 327 select PGTABLE_3LEVEL << 328 help << 329 This option selects 16KB page size w << 330 support a maximum of 47 bits of appl << 331 << 332 config 64KB_2LEVEL << 333 bool "64KB with 2 levels" << 334 select HAVE_PAGE_SIZE_64KB << 335 select PGTABLE_2LEVEL << 336 help << 337 This option selects 64KB page size w << 338 support a maximum of 42 bits of appl << 339 << 340 config 64KB_3LEVEL << 341 bool "64KB with 3 levels" << 342 select HAVE_PAGE_SIZE_64KB << 343 select PGTABLE_3LEVEL << 344 help << 345 This option selects 64KB page size w << 346 support a maximum of 55 bits of appl << 347 << 348 endchoice << 349 << 350 config CMDLINE << 351 string "Built-in kernel command line" << 352 help << 353 For most platforms, the arguments fo << 354 are provided at run-time, during boo << 355 where either no arguments are being << 356 arguments are insufficient or even i << 357 << 358 When that occurs, it is possible to << 359 line here and choose how the kernel << 360 << 361 choice << 362 prompt "Kernel command line type" << 363 default CMDLINE_BOOTLOADER << 364 help << 365 Choose how the kernel will handle th << 366 line. << 367 << 368 config CMDLINE_BOOTLOADER << 369 bool "Use bootloader kernel arguments << 370 help << 371 Prefer the command-line passed by th << 372 Use the built-in command line as fal << 373 during boot. This is the default beh << 374 << 375 config CMDLINE_EXTEND << 376 bool "Use built-in to extend bootloade << 377 help << 378 The command-line arguments provided << 379 appended to the built-in command lin << 380 cases where the provided arguments a << 381 you don't want to or cannot modify t << 382 << 383 config CMDLINE_FORCE << 384 bool "Always use the built-in kernel c << 385 help << 386 Always use the built-in command line << 387 boot. This is useful in case you nee << 388 command line on systems where you do << 389 over it. << 390 << 391 endchoice << 392 << 393 config BUILTIN_DTB << 394 bool "Enable built-in dtb in kernel" << 395 depends on OF << 396 help << 397 Some existing systems do not provide << 398 the kernel at boot time. Let's provi << 399 kernel, keyed by the dts filename, c << 400 << 401 Built-in DTBs are generic enough and << 402 << 403 config BUILTIN_DTB_NAME << 404 string "Source file for built-in dtb" << 405 depends on BUILTIN_DTB << 406 help << 407 Base name (without suffix, relative << 408 for the DTS file that will be used t << 409 the kernel. << 410 << 411 config DMI << 412 bool "Enable DMI scanning" << 413 select DMI_SCAN_MACHINE_NON_EFI_FALLBA << 414 default y << 415 help << 416 This enables SMBIOS/DMI feature for << 417 DMI to identify machine quirks. << 418 << 419 config EFI << 420 bool "EFI runtime service support" << 421 select UCS2_STRING << 422 select EFI_RUNTIME_WRAPPERS << 423 help << 424 This enables the kernel to use EFI r << 425 available (such as the EFI variable << 426 << 427 config EFI_STUB << 428 bool "EFI boot stub support" << 429 default y << 430 depends on EFI << 431 select EFI_GENERIC_STUB << 432 help << 433 This kernel feature allows the kerne << 434 EFI firmware without the use of a bo << 435 64 436 config SCHED_SMT !! 65 config ZONE_DMA 437 bool "SMT scheduler support" !! 66 bool 438 depends on SMP << 439 default y 67 default y 440 help << 441 Improves scheduler's performance whe << 442 threads in one physical core. << 443 68 444 config SMP !! 69 config HZ 445 bool "Multi-Processing support" << 446 help << 447 This enables support for systems wit << 448 a system with only one CPU, say N. I << 449 than one CPU, say Y. << 450 << 451 If you say N here, the kernel will r << 452 machines, but will use only one CPU << 453 you say Y here, the kernel will run << 454 uniprocessor machines. On a uniproce << 455 will run faster if you say N here. << 456 << 457 See also the SMP-HOWTO available at << 458 << 459 If you don't know what to do here, s << 460 << 461 config HOTPLUG_CPU << 462 bool "Support for hot-pluggable CPUs" << 463 depends on SMP << 464 select GENERIC_IRQ_MIGRATION << 465 help << 466 Say Y here to allow turning CPUs off << 467 controlled through /sys/devices/syst << 468 (Note: power management support will << 469 automatically on SMP systems. ) << 470 Say N if you want to disable CPU hot << 471 << 472 config NR_CPUS << 473 int "Maximum number of CPUs (2-256)" << 474 range 2 256 << 475 depends on SMP << 476 default "64" << 477 help << 478 This allows you to specify the maxim << 479 kernel will support. << 480 << 481 config NUMA << 482 bool "NUMA Support" << 483 select SMP << 484 help << 485 Say Y to compile the kernel with NUM << 486 support. This option improves perfo << 487 than one NUMA node; on single node s << 488 to leave it disabled. << 489 << 490 config NODES_SHIFT << 491 int 70 int 492 default "6" !! 71 default 1000 if CLEOPATRA 493 depends on NUMA !! 72 default 100 494 << 495 config ARCH_FORCE_MAX_ORDER << 496 int "Maximum zone order" << 497 default "13" if PAGE_SIZE_64KB << 498 default "11" if PAGE_SIZE_16KB << 499 default "10" << 500 help << 501 The kernel memory allocator divides << 502 blocks into "zones", where each zone << 503 pages. This option selects the larg << 504 keeps in the memory allocator. If y << 505 blocks of physically contiguous memo << 506 increase this value. << 507 73 508 The page size is not necessarily 4KB !! 74 config PGTABLE_LEVELS 509 when choosing a value for this optio !! 75 default 2 if SUN3 || COLDFIRE 510 !! 76 default 3 511 config ARCH_IOREMAP << 512 bool "Enable LoongArch DMW-based iorem << 513 help << 514 We use generic TLB-based ioremap() b << 515 protection support. However, you can << 516 ioremap() for better performance. << 517 << 518 config ARCH_WRITECOMBINE << 519 bool "Enable WriteCombine (WUC) for io << 520 help << 521 LoongArch maintains cache coherency << 522 with LS7A chipsets the WUC attribute << 523 is similar to WriteCombine) is out o << 524 machanism for PCIe devices (this is << 525 may be fixed in newer chipsets). << 526 << 527 This means WUC can only used for wri << 528 this option is disabled by default, << 529 SUC for ioremap(). You can enable th << 530 to run on hardware without this bug. << 531 << 532 You can override this setting via wr << 533 77 534 config ARCH_STRICT_ALIGN !! 78 config MMU 535 bool "Enable -mstrict-align to prevent !! 79 bool "MMU-based Paged Memory Management Support" 536 default y 80 default y 537 help 81 help 538 Not all LoongArch cores support h/w !! 82 Select if you want MMU-based virtualised addressing space 539 -mstrict-align build parameter to pr !! 83 support by paged memory management. If unsure, say 'Y'. 540 << 541 CPUs with h/w unaligned access suppo << 542 Loongson-2K2000/2K3000/3A5000/3C5000 << 543 84 544 CPUs without h/w unaligned access su !! 85 config MMU_MOTOROLA 545 Loongson-2K500/2K1000. << 546 << 547 This option is enabled by default to << 548 on all LoongArch systems. But you ca << 549 to run kernel only on systems with h << 550 order to optimise for performance. << 551 << 552 config CPU_HAS_FPU << 553 bool 86 bool 554 default y << 555 << 556 config CPU_HAS_LSX << 557 bool "Support for the Loongson SIMD Ex << 558 depends on AS_HAS_LSX_EXTENSION << 559 help << 560 Loongson SIMD Extension (LSX) introd << 561 and a set of SIMD instructions to op << 562 is enabled the kernel will support a << 563 vector register contexts. If you kno << 564 running on CPUs which do not support << 565 not be making use of it then you may << 566 the size & complexity of your kernel << 567 << 568 If unsure, say Y. << 569 << 570 config CPU_HAS_LASX << 571 bool "Support for the Loongson Advance << 572 depends on CPU_HAS_LSX << 573 depends on AS_HAS_LASX_EXTENSION << 574 help << 575 Loongson Advanced SIMD Extension (LA << 576 registers and a set of SIMD instruct << 577 option is enabled the kernel will su << 578 vector register contexts. If you kno << 579 running on CPUs which do not support << 580 not be making use of it then you may << 581 the size & complexity of your kernel << 582 << 583 If unsure, say Y. << 584 << 585 config CPU_HAS_LBT << 586 bool "Support for the Loongson Binary << 587 depends on AS_HAS_LBT_EXTENSION << 588 help << 589 Loongson Binary Translation (LBT) in << 590 to SCR3), x86/ARM eflags (eflags) an << 591 Enabling this option allows the kern << 592 specific to LBT. << 593 << 594 If you want to use this feature, suc << 595 Translator (LAT), say Y. << 596 87 597 config CPU_HAS_PREFETCH !! 88 config MMU_COLDFIRE 598 bool 89 bool 599 default y << 600 << 601 config ARCH_SUPPORTS_KEXEC << 602 def_bool y << 603 << 604 config ARCH_SUPPORTS_CRASH_DUMP << 605 def_bool y << 606 << 607 config ARCH_SELECTS_CRASH_DUMP << 608 def_bool y << 609 depends on CRASH_DUMP << 610 select RELOCATABLE << 611 90 612 config ARCH_HAS_GENERIC_CRASHKERNEL_RESERVATIO !! 91 config MMU_SUN3 613 def_bool CRASH_RESERVE !! 92 bool >> 93 depends on MMU && !MMU_MOTOROLA && !MMU_COLDFIRE 614 94 615 config RELOCATABLE !! 95 config KEXEC 616 bool "Relocatable kernel" !! 96 bool "kexec system call" 617 select ARCH_HAS_RELR !! 97 depends on M68KCLASSIC >> 98 select KEXEC_CORE 618 help 99 help 619 This builds the kernel as a Position !! 100 kexec is a system call that implements the ability to shutdown your 620 which retains all relocation metadat !! 101 current kernel, and to start another kernel. It is like a reboot 621 the kernel binary at runtime to a di !! 102 but it is independent of the system firmware. And like a reboot 622 its link address. !! 103 you can start any kernel with it, not just Linux. 623 << 624 config RANDOMIZE_BASE << 625 bool "Randomize the address of the ker << 626 depends on RELOCATABLE << 627 help << 628 Randomizes the physical and virtual << 629 kernel image is loaded, as a securi << 630 deters exploit attempts relying on << 631 of kernel internals. << 632 << 633 The kernel will be offset by up to << 634 << 635 If unsure, say N. << 636 << 637 config RANDOMIZE_BASE_MAX_OFFSET << 638 hex "Maximum KASLR offset" if EXPERT << 639 depends on RANDOMIZE_BASE << 640 range 0x0 0x10000000 << 641 default "0x01000000" << 642 help << 643 When KASLR is active, this provides << 644 be applied to the kernel image. It s << 645 amount of physical RAM available in << 646 104 647 This is limited by the size of the l !! 105 The name comes from the similarity to the exec system call. 648 106 649 source "kernel/livepatch/Kconfig" !! 107 It is an ongoing process to be certain the hardware in a machine >> 108 is properly shutdown, so do not be surprised if this code does not >> 109 initially work for you. As of this writing the exact hardware >> 110 interface is strongly in flux, so no good recommendation can be >> 111 made. 650 112 651 config PARAVIRT !! 113 config BOOTINFO_PROC 652 bool "Enable paravirtualization code" !! 114 bool "Export bootinfo in procfs" 653 depends on AS_HAS_LVZ_EXTENSION !! 115 depends on KEXEC && M68KCLASSIC 654 help 116 help 655 This changes the kernel so it can mo !! 117 Say Y to export the bootinfo used to boot the kernel in a 656 under a hypervisor, potentially impr !! 118 "bootinfo" file in procfs. This is useful with kexec. 657 over full virtualization. However, << 658 the kernel is theoretically slower a << 659 << 660 config PARAVIRT_TIME_ACCOUNTING << 661 bool "Paravirtual steal time accountin << 662 depends on PARAVIRT << 663 help << 664 Select this option to enable fine gr << 665 accounting. Time spent executing oth << 666 the current vCPU is discounted from << 667 that, there can be a small performan << 668 << 669 If in doubt, say N here. << 670 << 671 endmenu << 672 << 673 config ARCH_SELECT_MEMORY_MODEL << 674 def_bool y << 675 119 676 config ARCH_FLATMEM_ENABLE !! 120 menu "Platform setup" 677 def_bool y << 678 depends on !NUMA << 679 << 680 config ARCH_SPARSEMEM_ENABLE << 681 def_bool y << 682 select SPARSEMEM_VMEMMAP_ENABLE << 683 help << 684 Say Y to support efficient handling << 685 for architectures which are either N << 686 or have huge holes in the physical a << 687 See <file:Documentation/mm/numa.rst> << 688 121 689 config ARCH_MEMORY_PROBE !! 122 source "arch/m68k/Kconfig.cpu" 690 def_bool y << 691 depends on MEMORY_HOTPLUG << 692 123 693 config MMU !! 124 source "arch/m68k/Kconfig.machine" 694 bool << 695 default y << 696 125 697 config ARCH_MMAP_RND_BITS_MIN !! 126 source "arch/m68k/Kconfig.bus" 698 default 12 << 699 127 700 config ARCH_MMAP_RND_BITS_MAX !! 128 endmenu 701 default 18 << 702 129 703 config ARCH_SUPPORTS_UPROBES !! 130 menu "Kernel Features" 704 def_bool y << 705 131 706 config KASAN_SHADOW_OFFSET !! 132 endmenu 707 hex << 708 default 0x0 << 709 depends on KASAN << 710 133 >> 134 if !MMU 711 menu "Power management options" 135 menu "Power management options" 712 136 713 config ARCH_SUSPEND_POSSIBLE !! 137 config PM 714 def_bool y !! 138 bool "Power Management support" 715 !! 139 help 716 config ARCH_HIBERNATION_POSSIBLE !! 140 Support processor power management modes 717 def_bool y << 718 << 719 source "kernel/power/Kconfig" << 720 source "drivers/acpi/Kconfig" << 721 source "drivers/cpufreq/Kconfig" << 722 141 723 endmenu 142 endmenu >> 143 endif 724 144 725 source "arch/loongarch/kvm/Kconfig" !! 145 source "arch/m68k/Kconfig.devices"
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.