Lines Matching +full:default +full:- +full:on

1 # SPDX-License-Identifier: GPL-2.0-only
4 # see Documentation/kbuild/kconfig-language.rst.
66 # LLD >= 14: https://github.com/llvm/llvm-project/issues/50505
220 depends on 64BIT
222 # -Zsanitizer=shadow-call-stack flag.
223 depends on !SHADOW_CALL_STACK || RUSTC_VERSION >= 108200
228 depends on AS_IS_GNU || (AS_IS_LLVM && (LD_IS_LLD || LD_VERSION >= 23600))
232 depends on $(cc-option,-fpatchable-function-entry=8)
235 def_bool $(cc-option,-fsanitize=shadow-call-stack)
236 …# https://github.com/riscv-non-isa/riscv-elf-psabi-doc/commit/a484e843e6eeb51f0cb7b8819e50da6d2444…
237 depends on $(ld-option,--no-relax-gp)
241 # https://github.com/llvm/llvm-project/commit/6611d58f5bbcbec77262d392e2923e1d680f6985
242 depends on !LD_IS_LLD || LLD_VERSION >= 150000
244 # https://github.com/llvm/llvm-project/commit/bbc0f99f3bc96f1db16f649fc21dd18e5b0918f6
247 depends on RISCV_USE_LINKER_RELAXATION
248 # https://github.com/llvm/llvm-project/commit/1df5ea29b43690b6622db2cad7b745607ca4de6a
249 depends on AS_IS_LLVM && AS_VERSION < 180000
250 # https://github.com/llvm/llvm-project/commit/7ffabb61a5569444b5ac9322e22e5471cc5e4a77
251 depends on LD_IS_LLD && LLD_VERSION < 180000
254 default 18 if 64BIT
255 default 8
258 default 8
261 # VA_BITS - PAGE_SHIFT - 3
263 default 24 if 64BIT # SV39 based
264 default 17
267 default 17
272 depends on !MMU
273 default y
275 Select this option if you want to run the kernel in M-mode,
278 # set if we are running in S-mode and can use SBI calls
281 depends on !RISCV_M_MODE
282 default y
285 bool "MMU-based Paged Memory Management Support"
286 default y
288 Select if you want MMU-based virtualised addressing space
293 default 0x80000000 if !MMU && RISCV_M_MODE
294 default 0x80200000 if !MMU
295 default 0xc0000000 if 32BIT
296 default 0xff60000000000000 if 64BIT
300 depends on KASAN_GENERIC
301 default 0xdfffffff00000000 if 64BIT
302 default 0xffffffff if 32BIT
309 depends on MMU
324 depends on BUG
344 default 0 if 32BIT
345 default 0xdead000000000000 if 64BIT
349 default 5 if 64BIT
350 default 2
366 This enables function pointer support for non-standard noncoherent
370 def_bool $(as-instr,.insn r 51$(comma) 0$(comma) 0$(comma) t0$(comma) t0$(comma) zero)
373 # https://github.com/llvm/llvm-project/commit/9e8ed3403c191ab9c4903e8eeb8f732ff8a43cb4
375 depends on $(as-instr, .option arch$(comma) +m)
383 bool "Allow configurations that result in non-portable kernels"
385 RISC-V kernel binaries are compatible between all known systems
399 default ARCH_RV64I
406 depends on NONPORTABLE
426 default CMODEL_MEDLOW if 32BIT
427 default CMODEL_MEDANY if 64BIT
440 bool "Symmetric Multi-Processing"
443 you say N here, the kernel will run on single and
446 on many, but not all, single processor machines. On a single
453 bool "Multi-core scheduler support"
454 depends on SMP
456 Multi-core scheduler support improves the CPU scheduler's decision
457 making when dealing with multi-core CPU chips at a cost of slightly
461 int "Maximum number of CPUs (2-512)"
462 depends on SMP
466 default "32" if 32BIT
467 default "64" if 64BIT
470 bool "Support for hot-pluggable CPUs"
471 depends on SMP
475 Say Y here to experiment with turning CPUs off and on. CPUs
482 default TUNE_GENERIC
492 depends on SMP && MMU
501 Enable NUMA (Non-Uniform Memory Access) support.
503 The kernel will try to allocate memory used by a CPU on the
509 default "2"
510 depends on NUMA
512 Specify the maximum number of NUMA Nodes available on the target
516 prompt "RISC-V spinlock type"
517 default RISCV_COMBO_SPINLOCKS
524 depends on SMP && MMU && NONPORTABLE
531 Select this if and only if Zabha or Ziccrse is available on your
540 depends on SMP && MMU
550 depends on !XIP_KERNEL
555 once at boot and once on each module load.
559 depends on RISCV_ALTERNATIVE
565 default y
575 depends on 64BIT
576 default y
586 depends on 64BIT && MMU
587 depends on RISCV_ALTERNATIVE
588 default y
590 Allow kernel to detect the Svnapot ISA-extension dynamically at boot
594 of contiguous virtual-to-physical translations for a naturally
595 aligned power-of-2 (NAPOT) granularity larger than the base 4KB page
604 bool "Svpbmt extension support for supervisor mode page-based memory types"
605 depends on 64BIT && MMU
606 depends on RISCV_ALTERNATIVE
607 default y
610 ISA-extension (Supervisor-mode: page-based memory types) and
617 The Svpbmt extension is only available on 64-bit cpus.
623 default y
624 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64imv)
625 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32imv)
626 depends on LLD_VERSION >= 140000 || LD_VERSION >= 23800
627 depends on AS_HAS_OPTION_ARCH
631 depends on TOOLCHAIN_HAS_V
632 depends on FPU
634 default y
642 bool "Enable userspace Vector by default"
643 depends on RISCV_ISA_V
644 default y
646 Say Y here if you want to enable Vector in userspace by default.
654 depends on RISCV_ISA_V
655 default 768
661 bool "Run kernel-mode Vector with kernel preemption"
662 depends on PREEMPTION
663 depends on RISCV_ISA_V
664 default y
666 Usually, in-kernel SIMD routines are run with preemption disabled.
672 consumption due to the allocation of per-task's kernel Vector context.
676 depends on RISCV_ALTERNATIVE
677 default y
680 which allow a hart to enter a low-power state or to trap to the
681 hypervisor while waiting on a store to a memory location. Enable the
687 default y
688 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zabha)
689 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zabha)
690 depends on AS_HAS_OPTION_ARCH
694 depends on TOOLCHAIN_HAS_ZABHA
695 depends on RISCV_ALTERNATIVE
696 default y
698 Enable the use of the Zabha ISA-extension to implement kernel
705 default y
706 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zacas)
707 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zacas)
708 depends on AS_HAS_OPTION_ARCH
712 depends on TOOLCHAIN_HAS_ZACAS
713 depends on RISCV_ALTERNATIVE
714 default y
716 Enable the use of the Zacas ISA-extension to implement kernel atomic
723 default y
724 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zbb)
725 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zbb)
726 depends on LLD_VERSION >= 150000 || LD_VERSION >= 23900
727 depends on AS_HAS_OPTION_ARCH
733 def_bool $(as-instr, .option arch$(comma) +v$(comma) +zvkb)
734 depends on AS_HAS_OPTION_ARCH
738 default y
750 depends on TOOLCHAIN_HAS_ZBB
751 depends on RISCV_ALTERNATIVE
752 default y
758 of bit-specific operations (count bit population, sign extending,
765 default y
766 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zbc)
767 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zbc)
768 depends on LLD_VERSION >= 150000 || LD_VERSION >= 23900
769 depends on AS_HAS_OPTION_ARCH
772 bool "Zbc extension support for carry-less multiplication instructions"
773 depends on TOOLCHAIN_HAS_ZBC
774 depends on MMU
775 depends on RISCV_ALTERNATIVE
776 default y
779 extension (carry-less multiplication) and enable its usage.
787 bool "Zicbom extension support for non-coherent DMA operation"
788 depends on MMU
789 depends on RISCV_ALTERNATIVE
790 default y
799 non-coherent DMA support on devices that need it.
805 depends on RISCV_ALTERNATIVE
806 default y
817 …# https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=aed44286efa8ae8717a77d94b51ac3614e2ca6…
819 depends on AS_IS_GNU && AS_VERSION >= 23600
821 Binutils-2.38 and GCC-12.1.0 bumped the default ISA spec to the newer
826 To make life easier, and avoid forcing toolchains that default to a
833 depends on TOOLCHAIN_NEEDS_EXPLICIT_ZICSR_ZIFENCEI
834 # https://github.com/llvm/llvm-project/commit/22e199e6afb1263c943c0c0d4498694e15bf8a16
836 depends on (CC_IS_CLANG && CLANG_VERSION < 170000) || (CC_IS_GCC && GCC_VERSION < 110300)
839 -march. This option causes an older ISA spec compatible with these older
841 as passing zicsr and zifencei to -march.
845 default y
847 Say N here if you want to disable all floating-point related procedure
854 default y
862 int "Kernel stack size (in power-of-two numbers of page size)" if VMAP_STACK && EXPERT
864 default 1 if 32BIT
865 default 2
886 depends on RISCV_ISA_V
892 default RISCV_PROBE_UNALIGNED_ACCESS
897 probed at boot by default.
905 the speed of unaligned accesses on the underlying system. If unaligned
921 depends on NONPORTABLE
924 kernel and userspace programs may not be able to run at all on systems
929 depends on NONPORTABLE
934 enabled, this option improves the performance of the kernel on such
936 slowly, or will not be able to run at all, on systems that do not
943 depends on RISCV_ISA_V
944 default RISCV_PROBE_VECTOR_UNALIGNED_ACCESS
949 probed at boot by default.
954 depends on RISCV_ISA_V
958 will dynamically determine the speed of vector unaligned accesses on
963 depends on NONPORTABLE
966 kernel and userspace programs may not be able to run at all on systems
971 depends on NONPORTABLE
974 enabled, this option improves the performance of the kernel on such
976 slowly, or will not be able to run at all, on systems that do not
991 depends on RISCV_SBI
994 deprecated in future once legacy M-mode software are no longer in use.
998 depends on SMP
999 default y if RISCV_SBI_V01 || RISCV_M_MODE
1003 gets chosen via lottery and all other keep spinning on a percpu
1005 scheme. It should be only enabled for M-mode Linux or platforms relying
1006 on older firmware without SBI HSM extension. All other platforms should
1007 rely on ordered booting via SBI HSM extension which gets chosen
1021 depends on KEXEC
1029 depends on KEXEC_FILE
1046 bool "Kernel support for 32-bit U-mode"
1047 default 64BIT
1048 depends on 64BIT && MMU
1050 This option enables support for a 32-bit U-mode running under a 64-bit
1051 kernel at S-mode. riscv32-specific components such as system calls,
1055 If you want to execute 32-bit userspace applications, say Y.
1059 depends on RISCV_SBI
1067 depends on PARAVIRT
1078 depends on MMU && 64BIT && !XIP_KERNEL
1094 depends on MMU && 64BIT && !XIP_KERNEL
1098 relying on knowledge of the location of kernel internals.
1101 random u64 value in /chosen/kaslr-seed at kernel entry.
1115 string "Built-in kernel command line"
1118 are provided at run-time, during boot. However, there are cases
1122 When that occurs, it is possible to define a built-in command
1123 line here and choose how the kernel should use it later on.
1126 prompt "Built-in command line usage"
1127 depends on CMDLINE != ""
1128 default CMDLINE_FALLBACK
1130 Choose how the kernel will handle the provided built-in command
1136 Use the built-in command line as fallback in case we get nothing
1137 during boot. This is the default behaviour.
1142 The command-line arguments provided during boot will be
1143 appended to the built-in command line. This is useful in
1148 bool "Always use the default kernel command string"
1150 Always use the built-in command line, even if we get one during
1152 command line on systems where you don't have or want control
1162 depends on OF && !XIP_KERNEL
1163 depends on MMU
1164 default y
1175 by UEFI firmware (such as non-volatile variables, realtime
1178 is only useful on systems that have UEFI firmware.
1182 depends on EFI
1183 default y
1187 This option is only useful on systems that have UEFI firmware.
1189 continue to boot on existing non-UEFI platforms.
1192 …def_bool $(cc-option,-mstack-protector-guard=tls -mstack-protector-guard-reg=tp -mstack-protector-
1196 depends on !RANDSTRUCT
1197 depends on STACKPROTECTOR && CC_HAVE_STACKPROTECTOR_TLS
1201 depends on NONPORTABLE
1202 default n
1206 depends on PHYS_RAM_BASE_FIXED
1207 default "0x80000000"
1210 explicitly specified to run early relocations of read-write data
1214 bool "Kernel Execute-In-Place from ROM"
1215 depends on MMU && SPARSEMEM && NONPORTABLE
1218 depends on !COMPILE_TEST
1221 Execute-In-Place allows the kernel to run from non-volatile storage
1224 to RAM. Read-write sections, such as the data section and stack,
1230 store the kernel image depending on your own flash memory usage.
1238 a struct page on those regions will trigger a fault.
1244 depends on XIP_KERNEL
1245 default "0x21000000"
1248 be linked for and stored to. This address is dependent on your
1252 bool "Permit falling back to parsing riscv,isa for extension support by default"
1253 default y
1264 Please see the dt-binding, located at
1266 on the replacement properties, "riscv,isa-base" and
1267 "riscv,isa-extensions".
1270 bool "Built-in device tree"
1271 depends on OF && NONPORTABLE
1279 string "Built-in device tree source"
1280 depends on BUILTIN_DTB
1290 default !NONPORTABLE