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

1 # SPDX-License-Identifier: GPL-2.0-only
4 # see Documentation/kbuild/kconfig-language.rst.
70 # LLD >= 14: https://github.com/llvm/llvm-project/issues/50505
226 depends on 64BIT
228 # -Zsanitizer=shadow-call-stack flag.
229 depends on !SHADOW_CALL_STACK || RUSTC_VERSION >= 108200
234 depends on AS_IS_GNU || (AS_IS_LLVM && (LD_IS_LLD || LD_VERSION >= 23600))
238 depends on $(cc-option,-fpatchable-function-entry=8)
241 def_bool $(cc-option,-fsanitize=shadow-call-stack)
242 …# https://github.com/riscv-non-isa/riscv-elf-psabi-doc/commit/a484e843e6eeb51f0cb7b8819e50da6d2444…
243 depends on $(ld-option,--no-relax-gp)
247 # https://github.com/llvm/llvm-project/commit/6611d58f5bbcbec77262d392e2923e1d680f6985
248 depends on !LD_IS_LLD || LLD_VERSION >= 150000
250 # https://github.com/llvm/llvm-project/commit/bbc0f99f3bc96f1db16f649fc21dd18e5b0918f6
253 depends on RISCV_USE_LINKER_RELAXATION
254 # https://github.com/llvm/llvm-project/commit/1df5ea29b43690b6622db2cad7b745607ca4de6a
255 depends on AS_IS_LLVM && AS_VERSION < 180000
256 # https://github.com/llvm/llvm-project/commit/7ffabb61a5569444b5ac9322e22e5471cc5e4a77
257 depends on LD_IS_LLD && LLD_VERSION < 180000
260 default 18 if 64BIT
261 default 8
264 default 8
267 # VA_BITS - PAGE_SHIFT - 3
269 default 24 if 64BIT # SV39 based
270 default 17
273 default 17
278 depends on !MMU
279 default y
281 Select this option if you want to run the kernel in M-mode,
284 # set if we are running in S-mode and can use SBI calls
287 depends on !RISCV_M_MODE
288 default y
291 bool "MMU-based Paged Memory Management Support"
292 default y
294 Select if you want MMU-based virtualised addressing space
299 depends on KASAN_GENERIC
300 default 0xdfffffff00000000 if 64BIT
301 default 0xffffffff if 32BIT
308 depends on MMU
323 depends on BUG
343 default 0 if 32BIT
344 default 0xdead000000000000 if 64BIT
348 default 5 if 64BIT
349 default 2
365 This enables function pointer support for non-standard noncoherent
369 def_bool $(as-instr,.insn r 51$(comma) 0$(comma) 0$(comma) t0$(comma) t0$(comma) zero)
372 # https://github.com/llvm/llvm-project/commit/9e8ed3403c191ab9c4903e8eeb8f732ff8a43cb4
374 depends on $(as-instr, .option arch$(comma) +m)
382 bool "Allow configurations that result in non-portable kernels"
384 RISC-V kernel binaries are compatible between all known systems
398 default ARCH_RV64I
405 depends on NONPORTABLE
425 default CMODEL_MEDLOW if 32BIT
426 default CMODEL_MEDANY if 64BIT
439 bool "Symmetric Multi-Processing"
442 you say N here, the kernel will run on single and
445 on many, but not all, single processor machines. On a single
452 bool "Multi-core scheduler support"
453 depends on SMP
455 Multi-core scheduler support improves the CPU scheduler's decision
456 making when dealing with multi-core CPU chips at a cost of slightly
460 int "Maximum number of CPUs (2-512)"
461 depends on SMP
465 default "32" if 32BIT
466 default "64" if 64BIT
469 bool "Support for hot-pluggable CPUs"
470 depends on SMP
474 Say Y here to experiment with turning CPUs off and on. CPUs
481 default TUNE_GENERIC
491 depends on SMP && MMU
500 Enable NUMA (Non-Uniform Memory Access) support.
502 The kernel will try to allocate memory used by a CPU on the
508 default "2"
509 depends on NUMA
511 Specify the maximum number of NUMA Nodes available on the target
515 prompt "RISC-V spinlock type"
516 default RISCV_COMBO_SPINLOCKS
523 depends on SMP && MMU && NONPORTABLE
530 Select this if and only if Zabha or Ziccrse is available on your
539 depends on SMP && MMU
549 depends on !XIP_KERNEL
554 once at boot and once on each module load.
558 depends on RISCV_ALTERNATIVE
564 default y
568 Linux binary. This option produces a kernel that will not run on
575 depends on 64BIT
576 default y
586 depends on 64BIT && MMU
587 depends on RISCV_ALTERNATIVE
588 default y
590 Enable support for the Svnapot ISA-extension when it is detected
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
609 Add support for the Svpbmt ISA-extension (Supervisor-mode:
610 page-based memory types) in the kernel when it is detected at boot.
616 The Svpbmt extension is only available on 64-bit cpus.
622 default y
623 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64imv)
624 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32imv)
625 depends on LLD_VERSION >= 140000 || LD_VERSION >= 23800
626 depends on AS_HAS_OPTION_ARCH
630 depends on TOOLCHAIN_HAS_V
631 depends on FPU
633 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
739 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zba)
740 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zba)
741 depends on LLD_VERSION >= 150000 || LD_VERSION >= 23900
742 depends on AS_HAS_OPTION_ARCH
746 default y
758 depends on RISCV_ALTERNATIVE
759 default y
763 additionally depend on toolchain support for Zbb.
766 of bit-specific operations (count bit population, sign extending,
773 default y
774 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zbc)
775 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zbc)
776 depends on LLD_VERSION >= 150000 || LD_VERSION >= 23900
777 depends on AS_HAS_OPTION_ARCH
780 bool "Zbc extension support for carry-less multiplication instructions"
781 depends on TOOLCHAIN_HAS_ZBC
782 depends on MMU
783 depends on RISCV_ALTERNATIVE
784 default y
787 extension (carry-less multiplication) and enable its usage.
796 default y
797 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zbkb)
798 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zbkb)
799 depends on LLD_VERSION >= 150000 || LD_VERSION >= 23900
800 depends on AS_HAS_OPTION_ARCH
804 depends on TOOLCHAIN_HAS_ZBKB
805 depends on RISCV_ALTERNATIVE
806 default y
817 bool "Zicbom extension support for non-coherent DMA operation"
818 depends on MMU
819 depends on RISCV_ALTERNATIVE
820 default y
829 non-coherent DMA support on devices that need it.
835 depends on RISCV_ALTERNATIVE
836 default y
847 …# https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=aed44286efa8ae8717a77d94b51ac3614e2ca6…
849 depends on AS_IS_GNU && AS_VERSION >= 23600
851 Binutils-2.38 and GCC-12.1.0 bumped the default ISA spec to the newer
856 To make life easier, and avoid forcing toolchains that default to a
863 depends on TOOLCHAIN_NEEDS_EXPLICIT_ZICSR_ZIFENCEI
864 # https://github.com/llvm/llvm-project/commit/22e199e6afb1263c943c0c0d4498694e15bf8a16
866 depends on (CC_IS_CLANG && CLANG_VERSION < 170000) || (CC_IS_GCC && GCC_VERSION < 110300)
869 -march. This option causes an older ISA spec compatible with these older
871 as passing zicsr and zifencei to -march.
875 default y
885 default y
893 int "Kernel stack size (in power-of-two numbers of page size)" if VMAP_STACK && EXPERT
895 default 1 if 32BIT
896 default 2
917 depends on RISCV_ISA_V
923 default RISCV_PROBE_UNALIGNED_ACCESS
928 probed at boot by default.
936 the speed of unaligned accesses on the underlying system. If unaligned
952 depends on NONPORTABLE
955 kernel and userspace programs may not be able to run at all on systems
960 depends on NONPORTABLE
965 enabled, this option improves the performance of the kernel on such
967 slowly, or will not be able to run at all, on systems that do not
974 depends on RISCV_ISA_V
975 default RISCV_PROBE_VECTOR_UNALIGNED_ACCESS
980 probed at boot by default.
985 depends on RISCV_ISA_V
989 will dynamically determine the speed of vector unaligned accesses on
994 depends on NONPORTABLE
997 kernel and userspace programs may not be able to run at all on systems
1002 depends on NONPORTABLE
1005 enabled, this option improves the performance of the kernel on such
1007 slowly, or will not be able to run at all, on systems that do not
1022 depends on RISCV_SBI
1025 deprecated in future once legacy M-mode software are no longer in use.
1029 depends on SMP
1030 default y if RISCV_SBI_V01 || RISCV_M_MODE
1034 gets chosen via lottery and all other keep spinning on a percpu
1036 scheme. It should be only enabled for M-mode Linux or platforms relying
1037 on older firmware without SBI HSM extension. All other platforms should
1038 rely on ordered booting via SBI HSM extension which gets chosen
1052 depends on KEXEC
1060 depends on KEXEC_FILE
1077 bool "Kernel support for 32-bit U-mode"
1078 default 64BIT
1079 depends on 64BIT && MMU
1081 This option enables support for a 32-bit U-mode running under a 64-bit
1082 kernel at S-mode. riscv32-specific components such as system calls,
1086 If you want to execute 32-bit userspace applications, say Y.
1090 depends on RISCV_SBI
1098 depends on PARAVIRT
1109 depends on !XIP_KERNEL
1126 depends on MMU && 64BIT && !XIP_KERNEL
1130 relying on knowledge of the location of kernel internals.
1133 random u64 value in /chosen/kaslr-seed at kernel entry.
1147 string "Built-in kernel command line"
1150 are provided at run-time, during boot. However, there are cases
1154 When that occurs, it is possible to define a built-in command
1155 line here and choose how the kernel should use it later on.
1158 prompt "Built-in command line usage"
1159 depends on CMDLINE != ""
1160 default CMDLINE_FALLBACK
1162 Choose how the kernel will handle the provided built-in command
1168 Use the built-in command line as fallback in case we get nothing
1169 during boot. This is the default behaviour.
1174 The command-line arguments provided during boot will be
1175 appended to the built-in command line. This is useful in
1180 bool "Always use the default kernel command string"
1182 Always use the built-in command line, even if we get one during
1184 command line on systems where you don't have or want control
1194 depends on OF && !XIP_KERNEL
1195 depends on MMU
1196 default y
1207 by UEFI firmware (such as non-volatile variables, realtime
1210 is only useful on systems that have UEFI firmware.
1214 depends on EFI
1215 default y
1219 This option is only useful on systems that have UEFI firmware.
1221 continue to boot on existing non-UEFI platforms.
1224 …def_bool $(cc-option,-mstack-protector-guard=tls -mstack-protector-guard-reg=tp -mstack-protector-
1228 depends on !RANDSTRUCT
1229 depends on STACKPROTECTOR && CC_HAVE_STACKPROTECTOR_TLS
1233 depends on NONPORTABLE
1234 default n
1238 depends on PHYS_RAM_BASE_FIXED
1239 default "0x80000000"
1242 explicitly specified to run early relocations of read-write data
1246 bool "Kernel Execute-In-Place from ROM"
1247 depends on MMU && SPARSEMEM && NONPORTABLE
1250 depends on !COMPILE_TEST
1253 Execute-In-Place allows the kernel to run from non-volatile storage
1256 to RAM. Read-write sections, such as the data section and stack,
1262 store the kernel image depending on your own flash memory usage.
1270 a struct page on those regions will trigger a fault.
1276 depends on XIP_KERNEL
1277 default "0x21000000"
1280 be linked for and stored to. This address is dependent on your
1284 bool "Permit falling back to parsing riscv,isa for extension support by default"
1285 default y
1296 Please see the dt-binding, located at
1298 on the replacement properties, "riscv,isa-base" and
1299 "riscv,isa-extensions".
1302 bool "Built-in device tree"
1303 depends on OF && NONPORTABLE
1312 string "Built-in device tree source"
1313 depends on BUILTIN_DTB
1323 default !NONPORTABLE