Lines Matching +full:64 +full:- +full:bit
1 # SPDX-License-Identifier: GPL-2.0-only
4 # see Documentation/kbuild/kconfig-language.rst.
7 config 64BIT config
10 config 32BIT
36 select ARCH_HAS_KERNEL_FPU_SUPPORT if 64BIT && FPU
43 select ARCH_HAS_PTE_DEVMAP if 64BIT && MMU
55 select ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE if 64BIT && MMU
63 # LLD >= 14: https://github.com/llvm/llvm-project/issues/50505
70 select ARCH_USE_CMPXCHG_LOCKREF if 64BIT
79 select ARCH_WANT_HUGE_PMD_SHARE if 64BIT
95 select GENERIC_ATOMIC64 if !64BIT
114 select GENERIC_TIME_VSYSCALL if MMU && 64BIT
120 select HAVE_ARCH_HUGE_VMAP if MMU && 64BIT
123 select HAVE_ARCH_KASAN if MMU && 64BIT
124 select HAVE_ARCH_KASAN_VMALLOC if MMU && 64BIT
125 select HAVE_ARCH_KFENCE if MMU && 64BIT
135 select HAVE_ARCH_TRANSPARENT_HUGEPAGE if 64BIT && MMU
136 select HAVE_ARCH_USERFAULTFD_MINOR if 64BIT && USERFAULTFD
137 select HAVE_ARCH_VMAP_STACK if MMU && 64BIT
154 select HAVE_GENERIC_VDSO if MMU && 64BIT
210 select ZONE_DMA32 if 64BIT
214 depends on 64BIT
216 # -Zsanitizer=shadow-call-stack flag.
226 depends on $(cc-option,-fpatchable-function-entry=8)
229 def_bool $(cc-option,-fsanitize=shadow-call-stack)
230 …# https://github.com/riscv-non-isa/riscv-elf-psabi-doc/commit/a484e843e6eeb51f0cb7b8819e50da6d2444…
231 depends on $(ld-option,--no-relax-gp)
235 # https://github.com/llvm/llvm-project/commit/6611d58f5bbcbec77262d392e2923e1d680f6985
238 # https://github.com/llvm/llvm-project/commit/bbc0f99f3bc96f1db16f649fc21dd18e5b0918f6
242 # https://github.com/llvm/llvm-project/commit/1df5ea29b43690b6622db2cad7b745607ca4de6a
244 # https://github.com/llvm/llvm-project/commit/7ffabb61a5569444b5ac9322e22e5471cc5e4a77
248 default 18 if 64BIT
255 # VA_BITS - PAGE_SHIFT - 3
257 default 24 if 64BIT # SV39 based
269 Select this option if you want to run the kernel in M-mode,
272 # set if we are running in S-mode and can use SBI calls
279 bool "MMU-based Paged Memory Management Support"
282 Select if you want MMU-based virtualised addressing space
289 default 0xc0000000 if 32BIT
290 default 0xff60000000000000 if 64BIT
295 default 0xdfffffff00000000 if 64BIT
296 default 0xffffffff if 32BIT
304 select SPARSEMEM_STATIC if 32BIT && SPARSEMEM
305 select SPARSEMEM_VMEMMAP_ENABLE if 64BIT
319 select GENERIC_BUG_RELATIVE_POINTERS if 64BIT
338 default 0 if 32BIT
339 default 0xdead000000000000 if 64BIT
343 default 5 if 64BIT
360 This enables function pointer support for non-standard noncoherent
364 def_bool $(as-instr,.insn r 51$(comma) 0$(comma) 0$(comma) t0$(comma) t0$(comma) zero)
367 # https://github.com/llvm/llvm-project/commit/9e8ed3403c191ab9c4903e8eeb8f732ff8a43cb4
369 depends on $(as-instr, .option arch$(comma) +m)
377 bool "Allow configurations that result in non-portable kernels"
379 RISC-V kernel binaries are compatible between all known systems
401 select 32BIT
409 select 64BIT
416 # is still a bit more efficient when generating code if it's setup in a manner
420 default CMODEL_MEDLOW if 32BIT
421 default CMODEL_MEDANY if 64BIT
434 bool "Symmetric Multi-Processing"
447 bool "Multi-core scheduler support"
450 Multi-core scheduler support improves the CPU scheduler's decision
451 making when dealing with multi-core CPU chips at a cost of slightly
455 int "Maximum number of CPUs (2-512)"
458 range 2 32 if RISCV_SBI_V01 && 32BIT
459 range 2 64 if RISCV_SBI_V01 && 64BIT
460 default "32" if 32BIT
461 default "64" if 64BIT
464 bool "Support for hot-pluggable CPUs"
495 Enable NUMA (Non-Uniform Memory Access) support.
536 depends on 64BIT && MMU
540 Allow kernel to detect the Svnapot ISA-extension dynamically at boot
544 of contiguous virtual-to-physical translations for a naturally
545 aligned power-of-2 (NAPOT) granularity larger than the base 4KB page
554 bool "Svpbmt extension support for supervisor mode page-based memory types"
555 depends on 64BIT && MMU
560 ISA-extension (Supervisor-mode: page-based memory types) and
567 The Svpbmt extension is only available on 64-bit cpus.
574 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64imv)
575 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32imv)
611 bool "Run kernel-mode Vector with kernel preemption"
616 Usually, in-kernel SIMD routines are run with preemption disabled.
622 consumption due to the allocation of per-task's kernel Vector context.
630 which allow a hart to enter a low-power state or to trap to the
640 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zbb)
641 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zbb)
649 def_bool $(as-instr, .option arch$(comma) +v$(comma) +zvkb)
653 bool "Zba extension support for bit manipulation instructions"
665 bool "Zbb extension support for bit manipulation instructions"
671 extension (basic bit manipulation) and enable its usage.
674 of bit-specific operations (count bit population, sign extending,
682 depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zbc)
683 depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zbc)
688 bool "Zbc extension support for carry-less multiplication instructions"
695 extension (carry-less multiplication) and enable its usage.
703 bool "Zicbom extension support for non-coherent DMA operation"
715 non-coherent DMA support on devices that need it.
733 …# https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=aed44286efa8ae8717a77d94b51ac3614e2ca6…
737 Binutils-2.38 and GCC-12.1.0 bumped the default ISA spec to the newer
750 # https://github.com/llvm/llvm-project/commit/22e199e6afb1263c943c0c0d4498694e15bf8a16
755 -march. This option causes an older ISA spec compatible with these older
757 as passing zicsr and zifencei to -march.
763 Say N here if you want to disable all floating-point related procedure
778 int "Kernel stack size (in power-of-two numbers of page size)" if VMAP_STACK && EXPERT
780 default 1 if 32BIT
783 Specify the Pages of thread stack size (from 4KB to 64KB), which also
856 deprecated in future once legacy M-mode software are no longer in use.
867 scheme. It should be only enabled for M-mode Linux or platforms relying
887 def_bool 64BIT
908 bool "Kernel support for 32-bit U-mode"
909 default 64BIT
910 depends on 64BIT && MMU
912 This option enables support for a 32-bit U-mode running under a 64-bit
913 kernel at S-mode. riscv32-specific components such as system calls,
917 If you want to execute 32-bit userspace applications, say Y.
940 depends on MMU && 64BIT && !XIP_KERNEL
956 depends on MMU && 64BIT && !XIP_KERNEL
963 random u64 value in /chosen/kaslr-seed at kernel entry.
977 string "Built-in kernel command line"
980 are provided at run-time, during boot. However, there are cases
984 When that occurs, it is possible to define a built-in command
988 prompt "Built-in command line usage"
992 Choose how the kernel will handle the provided built-in command
998 Use the built-in command line as fallback in case we get nothing
1004 The command-line arguments provided during boot will be
1005 appended to the built-in command line. This is useful in
1012 Always use the built-in command line, even if we get one during
1027 select ARCH_SUPPORTS_ACPI if 64BIT
1037 by UEFI firmware (such as non-volatile variables, realtime
1051 continue to boot on existing non-UEFI platforms.
1054 …def_bool $(cc-option,-mstack-protector-guard=tls -mstack-protector-guard-reg=tp -mstack-protector-…
1072 explicitly specified to run early relocations of read-write data
1076 bool "Kernel Execute-In-Place from ROM"
1083 Execute-In-Place allows the kernel to run from non-volatile storage
1086 to RAM. Read-write sections, such as the data section and stack,
1126 Please see the dt-binding, located at
1128 on the replacement properties, "riscv,isa-base" and
1129 "riscv,isa-extensions".
1132 bool "Built-in device tree"
1141 string "Built-in device tree source"