| .. | .. |
|---|
| 1 | +# SPDX-License-Identifier: GPL-2.0-only |
|---|
| 1 | 2 | # |
|---|
| 2 | 3 | # For a description of the syntax of this configuration file, |
|---|
| 3 | | -# see Documentation/kbuild/kconfig-language.txt. |
|---|
| 4 | +# see Documentation/kbuild/kconfig-language.rst. |
|---|
| 4 | 5 | # |
|---|
| 5 | 6 | |
|---|
| 6 | 7 | config 64BIT |
|---|
| .. | .. |
|---|
| 11 | 12 | |
|---|
| 12 | 13 | config RISCV |
|---|
| 13 | 14 | def_bool y |
|---|
| 14 | | - # even on 32-bit, physical (and DMA) addresses are > 32-bits |
|---|
| 15 | | - select PHYS_ADDR_T_64BIT |
|---|
| 15 | + select ARCH_CLOCKSOURCE_INIT |
|---|
| 16 | + select ARCH_SUPPORTS_ATOMIC_RMW |
|---|
| 17 | + select ARCH_HAS_BINFMT_FLAT |
|---|
| 18 | + select ARCH_HAS_DEBUG_VM_PGTABLE |
|---|
| 19 | + select ARCH_HAS_DEBUG_VIRTUAL if MMU |
|---|
| 20 | + select ARCH_HAS_DEBUG_WX |
|---|
| 21 | + select ARCH_HAS_GCOV_PROFILE_ALL |
|---|
| 22 | + select ARCH_HAS_GIGANTIC_PAGE |
|---|
| 23 | + select ARCH_HAS_KCOV |
|---|
| 24 | + select ARCH_HAS_MMIOWB |
|---|
| 25 | + select ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE |
|---|
| 26 | + select ARCH_HAS_PTE_SPECIAL |
|---|
| 27 | + select ARCH_HAS_SET_DIRECT_MAP |
|---|
| 28 | + select ARCH_HAS_SET_MEMORY |
|---|
| 29 | + select ARCH_HAS_STRICT_KERNEL_RWX if MMU |
|---|
| 30 | + select ARCH_OPTIONAL_KERNEL_RWX if ARCH_HAS_STRICT_KERNEL_RWX |
|---|
| 31 | + select ARCH_OPTIONAL_KERNEL_RWX_DEFAULT |
|---|
| 32 | + select ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT if MMU |
|---|
| 33 | + select ARCH_WANT_FRAME_POINTERS |
|---|
| 34 | + select ARCH_WANT_HUGE_PMD_SHARE if 64BIT |
|---|
| 35 | + select CLONE_BACKWARDS |
|---|
| 36 | + select CLINT_TIMER if !MMU |
|---|
| 37 | + select COMMON_CLK |
|---|
| 38 | + select EDAC_SUPPORT |
|---|
| 39 | + select GENERIC_ARCH_TOPOLOGY |
|---|
| 40 | + select GENERIC_ATOMIC64 if !64BIT |
|---|
| 41 | + select GENERIC_CLOCKEVENTS |
|---|
| 42 | + select GENERIC_EARLY_IOREMAP |
|---|
| 43 | + select GENERIC_GETTIMEOFDAY if HAVE_GENERIC_VDSO |
|---|
| 44 | + select GENERIC_IOREMAP |
|---|
| 45 | + select GENERIC_IRQ_MULTI_HANDLER |
|---|
| 46 | + select GENERIC_IRQ_SHOW |
|---|
| 47 | + select GENERIC_PCI_IOMAP |
|---|
| 48 | + select GENERIC_PTDUMP if MMU |
|---|
| 49 | + select GENERIC_SCHED_CLOCK |
|---|
| 50 | + select GENERIC_SMP_IDLE_THREAD |
|---|
| 51 | + select GENERIC_STRNCPY_FROM_USER if MMU |
|---|
| 52 | + select GENERIC_STRNLEN_USER if MMU |
|---|
| 53 | + select GENERIC_TIME_VSYSCALL if MMU && 64BIT |
|---|
| 54 | + select HANDLE_DOMAIN_IRQ |
|---|
| 55 | + select HAVE_ARCH_AUDITSYSCALL |
|---|
| 56 | + select HAVE_ARCH_JUMP_LABEL |
|---|
| 57 | + select HAVE_ARCH_JUMP_LABEL_RELATIVE |
|---|
| 58 | + select HAVE_ARCH_KASAN if MMU && 64BIT |
|---|
| 59 | + select HAVE_ARCH_KGDB |
|---|
| 60 | + select HAVE_ARCH_KGDB_QXFER_PKT |
|---|
| 61 | + select HAVE_ARCH_MMAP_RND_BITS if MMU |
|---|
| 62 | + select HAVE_ARCH_SECCOMP_FILTER |
|---|
| 63 | + select HAVE_ARCH_TRACEHOOK |
|---|
| 64 | + select HAVE_ASM_MODVERSIONS |
|---|
| 65 | + select HAVE_CONTEXT_TRACKING |
|---|
| 66 | + select HAVE_DEBUG_KMEMLEAK |
|---|
| 67 | + select HAVE_DMA_CONTIGUOUS if MMU |
|---|
| 68 | + select HAVE_EBPF_JIT if MMU |
|---|
| 69 | + select HAVE_FUTEX_CMPXCHG if FUTEX |
|---|
| 70 | + select HAVE_GCC_PLUGINS |
|---|
| 71 | + select HAVE_GENERIC_VDSO if MMU && 64BIT |
|---|
| 72 | + select HAVE_PCI |
|---|
| 73 | + select HAVE_PERF_EVENTS |
|---|
| 74 | + select HAVE_PERF_REGS |
|---|
| 75 | + select HAVE_PERF_USER_STACK_DUMP |
|---|
| 76 | + select HAVE_STACKPROTECTOR |
|---|
| 77 | + select HAVE_SYSCALL_TRACEPOINTS |
|---|
| 78 | + select IRQ_DOMAIN |
|---|
| 79 | + select MODULES_USE_ELF_RELA if MODULES |
|---|
| 80 | + select MODULE_SECTIONS if MODULES |
|---|
| 16 | 81 | select OF |
|---|
| 17 | 82 | select OF_EARLY_FLATTREE |
|---|
| 18 | 83 | select OF_IRQ |
|---|
| 19 | | - select ARCH_WANT_FRAME_POINTERS |
|---|
| 20 | | - select CLONE_BACKWARDS |
|---|
| 21 | | - select COMMON_CLK |
|---|
| 22 | | - select DMA_DIRECT_OPS |
|---|
| 23 | | - select GENERIC_CLOCKEVENTS |
|---|
| 24 | | - select GENERIC_CPU_DEVICES |
|---|
| 25 | | - select GENERIC_IRQ_SHOW |
|---|
| 26 | | - select GENERIC_PCI_IOMAP |
|---|
| 27 | | - select GENERIC_STRNCPY_FROM_USER |
|---|
| 28 | | - select GENERIC_STRNLEN_USER |
|---|
| 29 | | - select GENERIC_SMP_IDLE_THREAD |
|---|
| 30 | | - select GENERIC_ATOMIC64 if !64BIT || !RISCV_ISA_A |
|---|
| 31 | | - select HAVE_MEMBLOCK |
|---|
| 32 | | - select HAVE_MEMBLOCK_NODE_MAP |
|---|
| 33 | | - select HAVE_DMA_CONTIGUOUS |
|---|
| 34 | | - select HAVE_GENERIC_DMA_COHERENT |
|---|
| 35 | | - select HAVE_PERF_EVENTS |
|---|
| 36 | | - select IRQ_DOMAIN |
|---|
| 37 | | - select NO_BOOTMEM |
|---|
| 38 | | - select RISCV_ISA_A if SMP |
|---|
| 84 | + select PCI_DOMAINS_GENERIC if PCI |
|---|
| 85 | + select PCI_MSI if PCI |
|---|
| 86 | + select RISCV_INTC |
|---|
| 87 | + select RISCV_TIMER if RISCV_SBI |
|---|
| 39 | 88 | select SPARSE_IRQ |
|---|
| 40 | 89 | select SYSCTL_EXCEPTION_TRACE |
|---|
| 41 | | - select HAVE_ARCH_TRACEHOOK |
|---|
| 42 | | - select MODULES_USE_ELF_RELA if MODULES |
|---|
| 43 | 90 | select THREAD_INFO_IN_TASK |
|---|
| 44 | | - select RISCV_TIMER |
|---|
| 45 | | - select GENERIC_IRQ_MULTI_HANDLER |
|---|
| 46 | | - select ARCH_HAS_PTE_SPECIAL |
|---|
| 91 | + select UACCESS_MEMCPY if !MMU |
|---|
| 92 | + |
|---|
| 93 | +config ARCH_MMAP_RND_BITS_MIN |
|---|
| 94 | + default 18 if 64BIT |
|---|
| 95 | + default 8 |
|---|
| 96 | + |
|---|
| 97 | +# max bits determined by the following formula: |
|---|
| 98 | +# VA_BITS - PAGE_SHIFT - 3 |
|---|
| 99 | +config ARCH_MMAP_RND_BITS_MAX |
|---|
| 100 | + default 24 if 64BIT # SV39 based |
|---|
| 101 | + default 17 |
|---|
| 102 | + |
|---|
| 103 | +# set if we run in machine mode, cleared if we run in supervisor mode |
|---|
| 104 | +config RISCV_M_MODE |
|---|
| 105 | + bool |
|---|
| 106 | + default !MMU |
|---|
| 107 | + |
|---|
| 108 | +# set if we are running in S-mode and can use SBI calls |
|---|
| 109 | +config RISCV_SBI |
|---|
| 110 | + bool |
|---|
| 111 | + depends on !RISCV_M_MODE |
|---|
| 112 | + default y |
|---|
| 47 | 113 | |
|---|
| 48 | 114 | config MMU |
|---|
| 49 | | - def_bool y |
|---|
| 115 | + bool "MMU-based Paged Memory Management Support" |
|---|
| 116 | + default y |
|---|
| 117 | + help |
|---|
| 118 | + Select if you want MMU-based virtualised addressing space |
|---|
| 119 | + support by paged memory management. If unsure, say 'Y'. |
|---|
| 50 | 120 | |
|---|
| 51 | 121 | config ZONE_DMA32 |
|---|
| 52 | 122 | bool |
|---|
| 53 | 123 | default y if 64BIT |
|---|
| 54 | 124 | |
|---|
| 125 | +config VA_BITS |
|---|
| 126 | + int |
|---|
| 127 | + default 32 if 32BIT |
|---|
| 128 | + default 39 if 64BIT |
|---|
| 129 | + |
|---|
| 130 | +config PA_BITS |
|---|
| 131 | + int |
|---|
| 132 | + default 34 if 32BIT |
|---|
| 133 | + default 56 if 64BIT |
|---|
| 134 | + |
|---|
| 55 | 135 | config PAGE_OFFSET |
|---|
| 56 | 136 | hex |
|---|
| 57 | | - default 0xC0000000 if 32BIT && MAXPHYSMEM_2GB |
|---|
| 137 | + default 0xC0000000 if 32BIT && MAXPHYSMEM_1GB |
|---|
| 138 | + default 0x80000000 if 64BIT && !MMU |
|---|
| 58 | 139 | default 0xffffffff80000000 if 64BIT && MAXPHYSMEM_2GB |
|---|
| 59 | 140 | default 0xffffffe000000000 if 64BIT && MAXPHYSMEM_128GB |
|---|
| 141 | + |
|---|
| 142 | +config KASAN_SHADOW_OFFSET |
|---|
| 143 | + hex |
|---|
| 144 | + depends on KASAN_GENERIC |
|---|
| 145 | + default 0xdfffffc800000000 if 64BIT |
|---|
| 146 | + default 0xffffffff if 32BIT |
|---|
| 147 | + |
|---|
| 148 | +config ARCH_FLATMEM_ENABLE |
|---|
| 149 | + def_bool y |
|---|
| 150 | + |
|---|
| 151 | +config ARCH_SPARSEMEM_ENABLE |
|---|
| 152 | + def_bool y |
|---|
| 153 | + depends on MMU |
|---|
| 154 | + select SPARSEMEM_STATIC if 32BIT && SPARSEMEM |
|---|
| 155 | + select SPARSEMEM_VMEMMAP_ENABLE if 64BIT |
|---|
| 156 | + |
|---|
| 157 | +config ARCH_SELECT_MEMORY_MODEL |
|---|
| 158 | + def_bool ARCH_SPARSEMEM_ENABLE |
|---|
| 159 | + |
|---|
| 160 | +config ARCH_WANT_GENERAL_HUGETLB |
|---|
| 161 | + def_bool y |
|---|
| 162 | + |
|---|
| 163 | +config ARCH_SUPPORTS_DEBUG_PAGEALLOC |
|---|
| 164 | + def_bool y |
|---|
| 165 | + |
|---|
| 166 | +config SYS_SUPPORTS_HUGETLBFS |
|---|
| 167 | + depends on MMU |
|---|
| 168 | + def_bool y |
|---|
| 60 | 169 | |
|---|
| 61 | 170 | config STACKTRACE_SUPPORT |
|---|
| 62 | 171 | def_bool y |
|---|
| 63 | 172 | |
|---|
| 64 | 173 | config TRACE_IRQFLAGS_SUPPORT |
|---|
| 65 | | - def_bool y |
|---|
| 66 | | - |
|---|
| 67 | | -config RWSEM_GENERIC_SPINLOCK |
|---|
| 68 | 174 | def_bool y |
|---|
| 69 | 175 | |
|---|
| 70 | 176 | config GENERIC_BUG |
|---|
| .. | .. |
|---|
| 84 | 190 | config GENERIC_HWEIGHT |
|---|
| 85 | 191 | def_bool y |
|---|
| 86 | 192 | |
|---|
| 193 | +config FIX_EARLYCON_MEM |
|---|
| 194 | + def_bool MMU |
|---|
| 195 | + |
|---|
| 87 | 196 | config PGTABLE_LEVELS |
|---|
| 88 | 197 | int |
|---|
| 89 | 198 | default 3 if 64BIT |
|---|
| 90 | 199 | default 2 |
|---|
| 91 | 200 | |
|---|
| 92 | | -config HAVE_KPROBES |
|---|
| 93 | | - def_bool n |
|---|
| 201 | +config LOCKDEP_SUPPORT |
|---|
| 202 | + def_bool y |
|---|
| 203 | + |
|---|
| 204 | +source "arch/riscv/Kconfig.socs" |
|---|
| 94 | 205 | |
|---|
| 95 | 206 | menu "Platform type" |
|---|
| 96 | 207 | |
|---|
| .. | .. |
|---|
| 98 | 209 | prompt "Base ISA" |
|---|
| 99 | 210 | default ARCH_RV64I |
|---|
| 100 | 211 | help |
|---|
| 101 | | - This selects the base ISA that this kernel will traget and must match |
|---|
| 212 | + This selects the base ISA that this kernel will target and must match |
|---|
| 102 | 213 | the target platform. |
|---|
| 103 | 214 | |
|---|
| 104 | 215 | config ARCH_RV32I |
|---|
| .. | .. |
|---|
| 108 | 219 | select GENERIC_LIB_ASHRDI3 |
|---|
| 109 | 220 | select GENERIC_LIB_LSHRDI3 |
|---|
| 110 | 221 | select GENERIC_LIB_UCMPDI2 |
|---|
| 222 | + select MMU |
|---|
| 111 | 223 | |
|---|
| 112 | 224 | config ARCH_RV64I |
|---|
| 113 | 225 | bool "RV64I" |
|---|
| 114 | 226 | select 64BIT |
|---|
| 115 | | - select HAVE_FUNCTION_TRACER |
|---|
| 116 | | - select HAVE_FUNCTION_GRAPH_TRACER |
|---|
| 227 | + select ARCH_SUPPORTS_INT128 if CC_HAS_INT128 && GCC_VERSION >= 50000 |
|---|
| 228 | + select HAVE_DYNAMIC_FTRACE if MMU |
|---|
| 229 | + select HAVE_DYNAMIC_FTRACE_WITH_REGS if HAVE_DYNAMIC_FTRACE |
|---|
| 117 | 230 | select HAVE_FTRACE_MCOUNT_RECORD |
|---|
| 118 | | - select HAVE_DYNAMIC_FTRACE |
|---|
| 119 | | - select HAVE_DYNAMIC_FTRACE_WITH_REGS |
|---|
| 120 | | - select SWIOTLB |
|---|
| 231 | + select HAVE_FUNCTION_GRAPH_TRACER |
|---|
| 232 | + select HAVE_FUNCTION_TRACER |
|---|
| 233 | + select SWIOTLB if MMU |
|---|
| 121 | 234 | |
|---|
| 122 | 235 | endchoice |
|---|
| 123 | 236 | |
|---|
| .. | .. |
|---|
| 141 | 254 | |
|---|
| 142 | 255 | choice |
|---|
| 143 | 256 | prompt "Maximum Physical Memory" |
|---|
| 144 | | - default MAXPHYSMEM_2GB if 32BIT |
|---|
| 257 | + default MAXPHYSMEM_1GB if 32BIT |
|---|
| 145 | 258 | default MAXPHYSMEM_2GB if 64BIT && CMODEL_MEDLOW |
|---|
| 146 | 259 | default MAXPHYSMEM_128GB if 64BIT && CMODEL_MEDANY |
|---|
| 147 | 260 | |
|---|
| 261 | + config MAXPHYSMEM_1GB |
|---|
| 262 | + depends on 32BIT |
|---|
| 263 | + bool "1GiB" |
|---|
| 148 | 264 | config MAXPHYSMEM_2GB |
|---|
| 265 | + depends on 64BIT && CMODEL_MEDLOW |
|---|
| 149 | 266 | bool "2GiB" |
|---|
| 150 | 267 | config MAXPHYSMEM_128GB |
|---|
| 151 | 268 | depends on 64BIT && CMODEL_MEDANY |
|---|
| 152 | | - select MODULE_SECTIONS if MODULES |
|---|
| 153 | 269 | bool "128GiB" |
|---|
| 154 | 270 | endchoice |
|---|
| 155 | 271 | |
|---|
| .. | .. |
|---|
| 173 | 289 | depends on SMP |
|---|
| 174 | 290 | default "8" |
|---|
| 175 | 291 | |
|---|
| 292 | +config HOTPLUG_CPU |
|---|
| 293 | + bool "Support for hot-pluggable CPUs" |
|---|
| 294 | + depends on SMP |
|---|
| 295 | + select GENERIC_IRQ_MIGRATION |
|---|
| 296 | + help |
|---|
| 297 | + |
|---|
| 298 | + Say Y here to experiment with turning CPUs off and on. CPUs |
|---|
| 299 | + can be controlled through /sys/devices/system/cpu. |
|---|
| 300 | + |
|---|
| 301 | + Say N if you want to disable CPU hotplug. |
|---|
| 302 | + |
|---|
| 176 | 303 | choice |
|---|
| 177 | 304 | prompt "CPU Tuning" |
|---|
| 178 | 305 | default TUNE_GENERIC |
|---|
| .. | .. |
|---|
| 192 | 319 | |
|---|
| 193 | 320 | If you don't know what to do here, say Y. |
|---|
| 194 | 321 | |
|---|
| 195 | | -config RISCV_ISA_A |
|---|
| 196 | | - def_bool y |
|---|
| 197 | | - |
|---|
| 198 | 322 | menu "supported PMU type" |
|---|
| 199 | 323 | depends on PERF_EVENTS |
|---|
| 200 | 324 | |
|---|
| .. | .. |
|---|
| 208 | 332 | |
|---|
| 209 | 333 | endmenu |
|---|
| 210 | 334 | |
|---|
| 211 | | -endmenu |
|---|
| 212 | | - |
|---|
| 213 | | -menu "Kernel type" |
|---|
| 214 | | - |
|---|
| 215 | | -source "kernel/Kconfig.hz" |
|---|
| 216 | | - |
|---|
| 217 | | -endmenu |
|---|
| 218 | | - |
|---|
| 219 | | -menu "Bus support" |
|---|
| 220 | | - |
|---|
| 221 | | -config PCI |
|---|
| 222 | | - bool "PCI support" |
|---|
| 223 | | - select PCI_MSI |
|---|
| 335 | +config TOOLCHAIN_NEEDS_EXPLICIT_ZICSR_ZIFENCEI |
|---|
| 336 | + def_bool y |
|---|
| 337 | + # https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=aed44286efa8ae8717a77d94b51ac3614e2ca6dc |
|---|
| 338 | + depends on AS_IS_GNU && AS_VERSION >= 23800 |
|---|
| 224 | 339 | help |
|---|
| 225 | | - This feature enables support for PCI bus system. If you say Y |
|---|
| 226 | | - here, the kernel will include drivers and infrastructure code |
|---|
| 227 | | - to support PCI bus devices. |
|---|
| 340 | + Newer binutils versions default to ISA spec version 20191213 which |
|---|
| 341 | + moves some instructions from the I extension to the Zicsr and Zifencei |
|---|
| 342 | + extensions. |
|---|
| 343 | + |
|---|
| 344 | +config TOOLCHAIN_NEEDS_OLD_ISA_SPEC |
|---|
| 345 | + def_bool y |
|---|
| 346 | + depends on TOOLCHAIN_NEEDS_EXPLICIT_ZICSR_ZIFENCEI |
|---|
| 347 | + # https://github.com/llvm/llvm-project/commit/22e199e6afb1263c943c0c0d4498694e15bf8a16 |
|---|
| 348 | + depends on CC_IS_CLANG && CLANG_VERSION < 170000 |
|---|
| 349 | + help |
|---|
| 350 | + Certain versions of clang do not support zicsr and zifencei via -march |
|---|
| 351 | + but newer versions of binutils require it for the reasons noted in the |
|---|
| 352 | + help text of CONFIG_TOOLCHAIN_NEEDS_EXPLICIT_ZICSR_ZIFENCEI. This |
|---|
| 353 | + option causes an older ISA spec compatible with these older versions |
|---|
| 354 | + of clang to be passed to GAS, which has the same result as passing zicsr |
|---|
| 355 | + and zifencei to -march. |
|---|
| 356 | + |
|---|
| 357 | +config FPU |
|---|
| 358 | + bool "FPU support" |
|---|
| 359 | + default y |
|---|
| 360 | + help |
|---|
| 361 | + Say N here if you want to disable all floating-point related procedure |
|---|
| 362 | + in the kernel. |
|---|
| 228 | 363 | |
|---|
| 229 | 364 | If you don't know what to do here, say Y. |
|---|
| 230 | 365 | |
|---|
| 231 | | -config PCI_DOMAINS |
|---|
| 232 | | - def_bool PCI |
|---|
| 366 | +endmenu |
|---|
| 233 | 367 | |
|---|
| 234 | | -config PCI_DOMAINS_GENERIC |
|---|
| 235 | | - def_bool PCI |
|---|
| 368 | +menu "Kernel features" |
|---|
| 236 | 369 | |
|---|
| 237 | | -source "drivers/pci/Kconfig" |
|---|
| 370 | +source "kernel/Kconfig.hz" |
|---|
| 371 | + |
|---|
| 372 | +config RISCV_SBI_V01 |
|---|
| 373 | + bool "SBI v0.1 support" |
|---|
| 374 | + default y |
|---|
| 375 | + depends on RISCV_SBI |
|---|
| 376 | + help |
|---|
| 377 | + This config allows kernel to use SBI v0.1 APIs. This will be |
|---|
| 378 | + deprecated in future once legacy M-mode software are no longer in use. |
|---|
| 379 | +endmenu |
|---|
| 380 | + |
|---|
| 381 | +menu "Boot options" |
|---|
| 382 | + |
|---|
| 383 | +config CMDLINE |
|---|
| 384 | + string "Built-in kernel command line" |
|---|
| 385 | + help |
|---|
| 386 | + For most platforms, the arguments for the kernel's command line |
|---|
| 387 | + are provided at run-time, during boot. However, there are cases |
|---|
| 388 | + where either no arguments are being provided or the provided |
|---|
| 389 | + arguments are insufficient or even invalid. |
|---|
| 390 | + |
|---|
| 391 | + When that occurs, it is possible to define a built-in command |
|---|
| 392 | + line here and choose how the kernel should use it later on. |
|---|
| 393 | + |
|---|
| 394 | +choice |
|---|
| 395 | + prompt "Built-in command line usage" if CMDLINE != "" |
|---|
| 396 | + default CMDLINE_FALLBACK |
|---|
| 397 | + help |
|---|
| 398 | + Choose how the kernel will handle the provided built-in command |
|---|
| 399 | + line. |
|---|
| 400 | + |
|---|
| 401 | +config CMDLINE_FALLBACK |
|---|
| 402 | + bool "Use bootloader kernel arguments if available" |
|---|
| 403 | + help |
|---|
| 404 | + Use the built-in command line as fallback in case we get nothing |
|---|
| 405 | + during boot. This is the default behaviour. |
|---|
| 406 | + |
|---|
| 407 | +config CMDLINE_EXTEND |
|---|
| 408 | + bool "Extend bootloader kernel arguments" |
|---|
| 409 | + help |
|---|
| 410 | + The command-line arguments provided during boot will be |
|---|
| 411 | + appended to the built-in command line. This is useful in |
|---|
| 412 | + cases where the provided arguments are insufficient and |
|---|
| 413 | + you don't want to or cannot modify them. |
|---|
| 414 | + |
|---|
| 415 | + |
|---|
| 416 | +config CMDLINE_FORCE |
|---|
| 417 | + bool "Always use the default kernel command string" |
|---|
| 418 | + help |
|---|
| 419 | + Always use the built-in command line, even if we get one during |
|---|
| 420 | + boot. This is useful in case you need to override the provided |
|---|
| 421 | + command line on systems where you don't have or want control |
|---|
| 422 | + over it. |
|---|
| 423 | + |
|---|
| 424 | +endchoice |
|---|
| 425 | + |
|---|
| 426 | +config EFI_STUB |
|---|
| 427 | + bool |
|---|
| 428 | + |
|---|
| 429 | +config EFI |
|---|
| 430 | + bool "UEFI runtime support" |
|---|
| 431 | + depends on OF |
|---|
| 432 | + select LIBFDT |
|---|
| 433 | + select UCS2_STRING |
|---|
| 434 | + select EFI_PARAMS_FROM_FDT |
|---|
| 435 | + select EFI_STUB |
|---|
| 436 | + select EFI_GENERIC_STUB |
|---|
| 437 | + select EFI_RUNTIME_WRAPPERS |
|---|
| 438 | + select RISCV_ISA_C |
|---|
| 439 | + depends on MMU |
|---|
| 440 | + default y |
|---|
| 441 | + help |
|---|
| 442 | + This option provides support for runtime services provided |
|---|
| 443 | + by UEFI firmware (such as non-volatile variables, realtime |
|---|
| 444 | + clock, and platform reset). A UEFI stub is also provided to |
|---|
| 445 | + allow the kernel to be booted as an EFI application. This |
|---|
| 446 | + is only useful on systems that have UEFI firmware. |
|---|
| 238 | 447 | |
|---|
| 239 | 448 | endmenu |
|---|
| 449 | + |
|---|
| 450 | +config BUILTIN_DTB |
|---|
| 451 | + def_bool n |
|---|
| 452 | + depends on RISCV_M_MODE |
|---|
| 453 | + depends on OF |
|---|
| 240 | 454 | |
|---|
| 241 | 455 | menu "Power management options" |
|---|
| 242 | 456 | |
|---|
| 243 | | -source kernel/power/Kconfig |
|---|
| 457 | +source "kernel/power/Kconfig" |
|---|
| 244 | 458 | |
|---|
| 245 | 459 | endmenu |
|---|
| 460 | + |
|---|
| 461 | +source "drivers/firmware/Kconfig" |
|---|