Lines Matching +full:riscv +full:- +full:zabha
1 # SPDX-License-Identifier: GPL-2.0-only
4 # see Documentation/kbuild/kconfig-language.rst.
13 config RISCV config
65 # LLD >= 14: https://github.com/llvm/llvm-project/issues/50505
220 # -Zsanitizer=shadow-call-stack flag.
230 depends on $(cc-option,-fpatchable-function-entry=8)
233 def_bool $(cc-option,-fsanitize=shadow-call-stack)
234 …# https://github.com/riscv-non-isa/riscv-elf-psabi-doc/commit/a484e843e6eeb51f0cb7b8819e50da6d2444…
235 depends on $(ld-option,--no-relax-gp)
239 # https://github.com/llvm/llvm-project/commit/6611d58f5bbcbec77262d392e2923e1d680f6985
242 # https://github.com/llvm/llvm-project/commit/bbc0f99f3bc96f1db16f649fc21dd18e5b0918f6
246 # https://github.com/llvm/llvm-project/commit/1df5ea29b43690b6622db2cad7b745607ca4de6a
248 # https://github.com/llvm/llvm-project/commit/7ffabb61a5569444b5ac9322e22e5471cc5e4a77
259 # VA_BITS - PAGE_SHIFT - 3
273 Select this option if you want to run the kernel in M-mode,
276 # set if we are running in S-mode and can use SBI calls
283 bool "MMU-based Paged Memory Management Support"
286 Select if you want MMU-based virtualised addressing space
364 This enables function pointer support for non-standard noncoherent
368 def_bool $(as-instr,.insn r 51$(comma) 0$(comma) 0$(comma) t0$(comma) t0$(comma) zero)
371 # https://github.com/llvm/llvm-project/commit/9e8ed3403c191ab9c4903e8eeb8f732ff8a43cb4
373 depends on $(as-instr, .option arch$(comma) +m)
375 source "arch/riscv/Kconfig.socs"
376 source "arch/riscv/Kconfig.errata"
381 bool "Allow configurations that result in non-portable kernels"
383 RISC-V kernel binaries are compatible between all known systems
438 bool "Symmetric Multi-Processing"
451 bool "Multi-core scheduler support"
454 Multi-core scheduler support improves the CPU scheduler's decision
455 making when dealing with multi-core CPU chips at a cost of slightly
459 int "Maximum number of CPUs (2-512)"
468 bool "Support for hot-pluggable CPUs"
499 Enable NUMA (Non-Uniform Memory Access) support.
514 prompt "RISC-V spinlock type"
526 guarantee of cmpxchg()/xchg() atomic operations: CAS with Zabha or
529 Select this if and only if Zabha or Ziccrse is available on your
588 Allow kernel to detect the Svnapot ISA-extension dynamically at boot
592 of contiguous virtual-to-physical translations for a naturally
593 aligned power-of-2 (NAPOT) granularity larger than the base 4KB page
602 bool "Svpbmt extension support for supervisor mode page-based memory types"
608 ISA-extension (Supervisor-mode: page-based memory types) and
615 The Svpbmt extension is only available on 64-bit cpus.
622 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64imv)
623 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32imv)
659 bool "Run kernel-mode Vector with kernel preemption"
664 Usually, in-kernel SIMD routines are run with preemption disabled.
670 consumption due to the allocation of per-task's kernel Vector context.
678 which allow a hart to enter a low-power state or to trap to the
686 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zabha)
687 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zabha)
691 bool "Zabha extension support for atomic byte/halfword operations"
696 Enable the use of the Zabha ISA-extension to implement kernel
704 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zacas)
705 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zacas)
714 Enable the use of the Zacas ISA-extension to implement kernel atomic
722 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zbb)
723 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zbb)
731 def_bool $(as-instr, .option arch$(comma) +v$(comma) +zvkb)
756 of bit-specific operations (count bit population, sign extending,
764 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zbc)
765 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zbc)
770 bool "Zbc extension support for carry-less multiplication instructions"
777 extension (carry-less multiplication) and enable its usage.
785 bool "Zicbom extension support for non-coherent DMA operation"
797 non-coherent DMA support on devices that need it.
815 …# https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=aed44286efa8ae8717a77d94b51ac3614e2ca6…
819 Binutils-2.38 and GCC-12.1.0 bumped the default ISA spec to the newer
832 # https://github.com/llvm/llvm-project/commit/22e199e6afb1263c943c0c0d4498694e15bf8a16
837 -march. This option causes an older ISA spec compatible with these older
839 as passing zicsr and zifencei to -march.
845 Say N here if you want to disable all floating-point related procedure
860 int "Kernel stack size (in power-of-two numbers of page size)" if VMAP_STACK && EXPERT
979 source "arch/riscv/Kconfig.vendor"
992 deprecated in future once legacy M-mode software are no longer in use.
1003 scheme. It should be only enabled for M-mode Linux or platforms relying
1044 bool "Kernel support for 32-bit U-mode"
1048 This option enables support for a 32-bit U-mode running under a 64-bit
1049 kernel at S-mode. riscv32-specific components such as system calls,
1053 If you want to execute 32-bit userspace applications, say Y.
1083 Since RISCV uses the RELA relocation format, this requires a
1099 random u64 value in /chosen/kaslr-seed at kernel entry.
1113 string "Built-in kernel command line"
1116 are provided at run-time, during boot. However, there are cases
1120 When that occurs, it is possible to define a built-in command
1124 prompt "Built-in command line usage"
1128 Choose how the kernel will handle the provided built-in command
1134 Use the built-in command line as fallback in case we get nothing
1140 The command-line arguments provided during boot will be
1141 appended to the built-in command line. This is useful in
1148 Always use the built-in command line, even if we get one during
1173 by UEFI firmware (such as non-volatile variables, realtime
1187 continue to boot on existing non-UEFI platforms.
1190 …def_bool $(cc-option,-mstack-protector-guard=tls -mstack-protector-guard-reg=tp -mstack-protector-…
1208 explicitly specified to run early relocations of read-write data
1212 bool "Kernel Execute-In-Place from ROM"
1219 Execute-In-Place allows the kernel to run from non-volatile storage
1222 to RAM. Read-write sections, such as the data section and stack,
1232 ROM memory will be arch/riscv/boot/xipImage.
1250 bool "Permit falling back to parsing riscv,isa for extension support by default"
1253 Parsing the "riscv,isa" devicetree property has been deprecated and
1256 "riscv,isa" property if the replacements are not found.
1262 Please see the dt-binding, located at
1263 Documentation/devicetree/bindings/riscv/extensions.yaml for details
1264 on the replacement properties, "riscv,isa-base" and
1265 "riscv,isa-extensions".
1268 bool "Built-in device tree"
1277 string "Built-in device tree source"
1280 DTS file path (without suffix, relative to arch/riscv/boot/dts)
1319 source "arch/riscv/kvm/Kconfig"