1config ARM64 2 def_bool y 3 select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE 4 select ARCH_USE_CMPXCHG_LOCKREF 5 select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST 6 select ARCH_WANT_OPTIONAL_GPIOLIB 7 select ARCH_WANT_COMPAT_IPC_PARSE_VERSION 8 select ARCH_WANT_FRAME_POINTERS 9 select ARM_AMBA 10 select ARM_ARCH_TIMER 11 select ARM_GIC 12 select BUILDTIME_EXTABLE_SORT 13 select CLONE_BACKWARDS 14 select COMMON_CLK 15 select CPU_PM if (SUSPEND || CPU_IDLE) 16 select DCACHE_WORD_ACCESS 17 select GENERIC_CLOCKEVENTS 18 select GENERIC_CLOCKEVENTS_BROADCAST if SMP 19 select GENERIC_CPU_AUTOPROBE 20 select GENERIC_IOMAP 21 select GENERIC_IRQ_PROBE 22 select GENERIC_IRQ_SHOW 23 select GENERIC_SCHED_CLOCK 24 select GENERIC_SMP_IDLE_THREAD 25 select GENERIC_STRNCPY_FROM_USER 26 select GENERIC_STRNLEN_USER 27 select GENERIC_TIME_VSYSCALL 28 select HARDIRQS_SW_RESEND 29 select HAVE_ARCH_JUMP_LABEL 30 select HAVE_ARCH_KGDB 31 select HAVE_ARCH_TRACEHOOK 32 select HAVE_DEBUG_BUGVERBOSE 33 select HAVE_DEBUG_KMEMLEAK 34 select HAVE_DMA_API_DEBUG 35 select HAVE_DMA_ATTRS 36 select HAVE_DMA_CONTIGUOUS 37 select HAVE_EFFICIENT_UNALIGNED_ACCESS 38 select HAVE_GENERIC_DMA_COHERENT 39 select HAVE_HW_BREAKPOINT if PERF_EVENTS 40 select HAVE_MEMBLOCK 41 select HAVE_PATA_PLATFORM 42 select HAVE_PERF_EVENTS 43 select HAVE_PERF_REGS 44 select HAVE_PERF_USER_STACK_DUMP 45 select IRQ_DOMAIN 46 select MODULES_USE_ELF_RELA 47 select NO_BOOTMEM 48 select OF 49 select OF_EARLY_FLATTREE 50 select OF_RESERVED_MEM 51 select PERF_USE_VMALLOC 52 select POWER_RESET 53 select POWER_SUPPLY 54 select RTC_LIB 55 select SPARSE_IRQ 56 select SYSCTL_EXCEPTION_TRACE 57 help 58 ARM 64-bit (AArch64) Linux support. 59 60config 64BIT 61 def_bool y 62 63config ARCH_PHYS_ADDR_T_64BIT 64 def_bool y 65 66config MMU 67 def_bool y 68 69config NO_IOPORT 70 def_bool y 71 72config STACKTRACE_SUPPORT 73 def_bool y 74 75config LOCKDEP_SUPPORT 76 def_bool y 77 78config TRACE_IRQFLAGS_SUPPORT 79 def_bool y 80 81config RWSEM_XCHGADD_ALGORITHM 82 def_bool y 83 84config GENERIC_HWEIGHT 85 def_bool y 86 87config GENERIC_CSUM 88 def_bool y 89 90config GENERIC_CALIBRATE_DELAY 91 def_bool y 92 93config ZONE_DMA 94 def_bool y 95 96config ARCH_DMA_ADDR_T_64BIT 97 def_bool y 98 99config NEED_DMA_MAP_STATE 100 def_bool y 101 102config NEED_SG_DMA_LENGTH 103 def_bool y 104 105config SWIOTLB 106 def_bool y 107 108config IOMMU_HELPER 109 def_bool SWIOTLB 110 111config KERNEL_MODE_NEON 112 def_bool y 113 114source "init/Kconfig" 115 116source "kernel/Kconfig.freezer" 117 118menu "Platform selection" 119 120config ARCH_VEXPRESS 121 bool "ARMv8 software model (Versatile Express)" 122 select ARCH_REQUIRE_GPIOLIB 123 select COMMON_CLK_VERSATILE 124 select POWER_RESET_VEXPRESS 125 select VEXPRESS_CONFIG 126 help 127 This enables support for the ARMv8 software model (Versatile 128 Express). 129 130config ARCH_XGENE 131 bool "AppliedMicro X-Gene SOC Family" 132 help 133 This enables support for AppliedMicro X-Gene SOC Family 134 135endmenu 136 137menu "Bus support" 138 139config ARM_AMBA 140 bool 141 142endmenu 143 144menu "Kernel Features" 145 146config ARM64_64K_PAGES 147 bool "Enable 64KB pages support" 148 help 149 This feature enables 64KB pages support (4KB by default) 150 allowing only two levels of page tables and faster TLB 151 look-up. AArch32 emulation is not available when this feature 152 is enabled. 153 154config CPU_BIG_ENDIAN 155 bool "Build big-endian kernel" 156 help 157 Say Y if you plan on running a kernel in big-endian mode. 158 159config SMP 160 bool "Symmetric Multi-Processing" 161 help 162 This enables support for systems with more than one CPU. If 163 you say N here, the kernel will run on single and 164 multiprocessor machines, but will use only one CPU of a 165 multiprocessor machine. If you say Y here, the kernel will run 166 on many, but not all, single processor machines. On a single 167 processor machine, the kernel will run faster if you say N 168 here. 169 170 If you don't know what to do here, say N. 171 172config SCHED_MC 173 bool "Multi-core scheduler support" 174 depends on SMP 175 help 176 Multi-core scheduler support improves the CPU scheduler's decision 177 making when dealing with multi-core CPU chips at a cost of slightly 178 increased overhead in some places. If unsure say N here. 179 180config SCHED_SMT 181 bool "SMT scheduler support" 182 depends on SMP 183 help 184 Improves the CPU scheduler's decision making when dealing with 185 MultiThreading at a cost of slightly increased overhead in some 186 places. If unsure say N here. 187 188config NR_CPUS 189 int "Maximum number of CPUs (2-32)" 190 range 2 32 191 depends on SMP 192 # These have to remain sorted largest to smallest 193 default "8" 194 195config HOTPLUG_CPU 196 bool "Support for hot-pluggable CPUs" 197 depends on SMP 198 help 199 Say Y here to experiment with turning CPUs off and on. CPUs 200 can be controlled through /sys/devices/system/cpu. 201 202source kernel/Kconfig.preempt 203 204config HZ 205 int 206 default 100 207 208config ARCH_HAS_HOLES_MEMORYMODEL 209 def_bool y if SPARSEMEM 210 211config ARCH_SPARSEMEM_ENABLE 212 def_bool y 213 select SPARSEMEM_VMEMMAP_ENABLE 214 215config ARCH_SPARSEMEM_DEFAULT 216 def_bool ARCH_SPARSEMEM_ENABLE 217 218config ARCH_SELECT_MEMORY_MODEL 219 def_bool ARCH_SPARSEMEM_ENABLE 220 221config HAVE_ARCH_PFN_VALID 222 def_bool ARCH_HAS_HOLES_MEMORYMODEL || !SPARSEMEM 223 224config HW_PERF_EVENTS 225 bool "Enable hardware performance counter support for perf events" 226 depends on PERF_EVENTS 227 default y 228 help 229 Enable hardware performance counter support for perf events. If 230 disabled, perf events will use software events only. 231 232config SYS_SUPPORTS_HUGETLBFS 233 def_bool y 234 235config ARCH_WANT_GENERAL_HUGETLB 236 def_bool y 237 238config ARCH_WANT_HUGE_PMD_SHARE 239 def_bool y if !ARM64_64K_PAGES 240 241config HAVE_ARCH_TRANSPARENT_HUGEPAGE 242 def_bool y 243 244source "mm/Kconfig" 245 246config XEN_DOM0 247 def_bool y 248 depends on XEN 249 250config XEN 251 bool "Xen guest support on ARM64 (EXPERIMENTAL)" 252 depends on ARM64 && OF 253 select SWIOTLB_XEN 254 help 255 Say Y if you want to run Linux in a Virtual Machine on Xen on ARM64. 256 257config FORCE_MAX_ZONEORDER 258 int 259 default "14" if (ARM64_64K_PAGES && TRANSPARENT_HUGEPAGE) 260 default "11" 261 262endmenu 263 264menu "Boot options" 265 266config CMDLINE 267 string "Default kernel command string" 268 default "" 269 help 270 Provide a set of default command-line options at build time by 271 entering them here. As a minimum, you should specify the the 272 root device (e.g. root=/dev/nfs). 273 274config CMDLINE_FORCE 275 bool "Always use the default kernel command string" 276 help 277 Always use the default kernel command string, even if the boot 278 loader passes other arguments to the kernel. 279 This is useful if you cannot or don't want to change the 280 command-line options your boot loader passes to the kernel. 281 282endmenu 283 284menu "Userspace binary formats" 285 286source "fs/Kconfig.binfmt" 287 288config COMPAT 289 bool "Kernel support for 32-bit EL0" 290 depends on !ARM64_64K_PAGES 291 select COMPAT_BINFMT_ELF 292 select HAVE_UID16 293 select OLD_SIGSUSPEND3 294 select COMPAT_OLD_SIGACTION 295 help 296 This option enables support for a 32-bit EL0 running under a 64-bit 297 kernel at EL1. AArch32-specific components such as system calls, 298 the user helper functions, VFP support and the ptrace interface are 299 handled appropriately by the kernel. 300 301 If you want to execute 32-bit userspace applications, say Y. 302 303config SYSVIPC_COMPAT 304 def_bool y 305 depends on COMPAT && SYSVIPC 306 307endmenu 308 309menu "Power management options" 310 311source "kernel/power/Kconfig" 312 313config ARCH_SUSPEND_POSSIBLE 314 def_bool y 315 316config ARM64_CPU_SUSPEND 317 def_bool PM_SLEEP 318 319endmenu 320 321menu "CPU Power Management" 322 323source "drivers/cpuidle/Kconfig" 324 325source "kernel/power/Kconfig" 326 327source "drivers/cpufreq/Kconfig" 328 329endmenu 330 331source "net/Kconfig" 332 333source "drivers/Kconfig" 334 335source "fs/Kconfig" 336 337source "arch/arm64/kvm/Kconfig" 338 339source "arch/arm64/Kconfig.debug" 340 341source "security/Kconfig" 342 343source "crypto/Kconfig" 344 345source "lib/Kconfig" 346