Lines Matching +full:isa +full:- +full:extensions

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
228 # -Zsanitizer=shadow-call-stack flag.
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
250 # https://github.com/llvm/llvm-project/commit/bbc0f99f3bc96f1db16f649fc21dd18e5b0918f6
254 # https://github.com/llvm/llvm-project/commit/1df5ea29b43690b6622db2cad7b745607ca4de6a
256 # https://github.com/llvm/llvm-project/commit/7ffabb61a5569444b5ac9322e22e5471cc5e4a77
267 # VA_BITS - PAGE_SHIFT - 3
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
291 bool "MMU-based Paged Memory Management Support"
294 Select if you want MMU-based virtualised addressing space
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
397 prompt "Base ISA"
400 This selects the base ISA that this kernel will target and must match
439 bool "Symmetric Multi-Processing"
452 bool "Multi-core scheduler support"
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)"
469 bool "Support for hot-pluggable CPUs"
500 Enable NUMA (Non-Uniform Memory Access) support.
515 prompt "RISC-V spinlock type"
532 without one of those extensions.
566 Adds "C" to the ISA subsets that the toolchain is allowed to emit
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"
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.
623 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64imv)
624 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32imv)
661 bool "Run kernel-mode Vector with kernel preemption"
666 Usually, in-kernel SIMD routines are run with preemption disabled.
672 consumption due to the allocation of per-task's kernel Vector context.
680 which allow a hart to enter a low-power state or to trap to the
688 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zabha)
689 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zabha)
698 Enable the use of the Zabha ISA-extension to implement kernel
706 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zacas)
707 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zacas)
716 Enable the use of the Zacas ISA-extension to implement kernel atomic
724 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zbb)
725 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zbb)
730 # extensions, including Zvk*, Zvbb, and Zvbc. LLVM added all of these at once.
733 def_bool $(as-instr, .option arch$(comma) +v$(comma) +zvkb)
739 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zba)
740 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zba)
766 of bit-specific operations (count bit population, sign extending,
774 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zbc)
775 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zbc)
780 bool "Zbc extension support for carry-less multiplication instructions"
787 extension (carry-less multiplication) and enable its usage.
797 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zbkb)
798 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zbkb)
817 bool "Zicbom extension support for non-coherent DMA operation"
829 non-coherent DMA support on devices that need it.
847 …# https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=aed44286efa8ae8717a77d94b51ac3614e2ca6…
851 Binutils-2.38 and GCC-12.1.0 bumped the default ISA spec to the newer
853 the Zicsr and Zifencei extensions. This requires explicitly specifying
857 newer ISA spec to version 2.2, relax the check to binutils >= 2.36.
864 # https://github.com/llvm/llvm-project/commit/22e199e6afb1263c943c0c0d4498694e15bf8a16
869 -march. This option causes an older ISA spec compatible with these older
871 as passing zicsr and zifencei to -march.
893 int "Kernel stack size (in power-of-two numbers of page size)" if VMAP_STACK && EXPERT
1025 deprecated in future once legacy M-mode software are no longer in use.
1036 scheme. It should be only enabled for M-mode Linux or platforms relying
1077 bool "Kernel support for 32-bit U-mode"
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.
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
1158 prompt "Built-in command line usage"
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
1174 The command-line arguments provided during boot will be
1175 appended to the built-in command line. This is useful in
1182 Always use the built-in command line, even if we get one during
1207 by UEFI firmware (such as non-volatile variables, realtime
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-
1242 explicitly specified to run early relocations of read-write data
1246 bool "Kernel Execute-In-Place from ROM"
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,
1284 bool "Permit falling back to parsing riscv,isa for extension support by default"
1287 Parsing the "riscv,isa" devicetree property has been deprecated and
1290 "riscv,isa" property if the replacements are not found.
1296 Please see the dt-binding, located at
1297 Documentation/devicetree/bindings/riscv/extensions.yaml for details
1298 on the replacement properties, "riscv,isa-base" and
1299 "riscv,isa-extensions".
1302 bool "Built-in device tree"
1312 string "Built-in device tree source"