Kconfig 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293
  1. config ARM64
  2. def_bool y
  3. select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
  4. select ARCH_USE_CMPXCHG_LOCKREF
  5. select ARCH_WANT_OPTIONAL_GPIOLIB
  6. select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
  7. select ARCH_WANT_FRAME_POINTERS
  8. select ARM_AMBA
  9. select ARM_ARCH_TIMER
  10. select ARM_GIC
  11. select BUILDTIME_EXTABLE_SORT
  12. select CLONE_BACKWARDS
  13. select COMMON_CLK
  14. select GENERIC_CLOCKEVENTS
  15. select GENERIC_IOMAP
  16. select GENERIC_IRQ_PROBE
  17. select GENERIC_IRQ_SHOW
  18. select GENERIC_SCHED_CLOCK
  19. select GENERIC_SMP_IDLE_THREAD
  20. select GENERIC_TIME_VSYSCALL
  21. select HARDIRQS_SW_RESEND
  22. select HAVE_ARCH_TRACEHOOK
  23. select HAVE_DEBUG_BUGVERBOSE
  24. select HAVE_DEBUG_KMEMLEAK
  25. select HAVE_DMA_API_DEBUG
  26. select HAVE_DMA_ATTRS
  27. select HAVE_GENERIC_DMA_COHERENT
  28. select HAVE_HW_BREAKPOINT if PERF_EVENTS
  29. select HAVE_MEMBLOCK
  30. select HAVE_PERF_EVENTS
  31. select IRQ_DOMAIN
  32. select MODULES_USE_ELF_RELA
  33. select NO_BOOTMEM
  34. select OF
  35. select OF_EARLY_FLATTREE
  36. select PERF_USE_VMALLOC
  37. select POWER_RESET
  38. select POWER_SUPPLY
  39. select RTC_LIB
  40. select SPARSE_IRQ
  41. select SYSCTL_EXCEPTION_TRACE
  42. help
  43. ARM 64-bit (AArch64) Linux support.
  44. config 64BIT
  45. def_bool y
  46. config ARCH_PHYS_ADDR_T_64BIT
  47. def_bool y
  48. config MMU
  49. def_bool y
  50. config NO_IOPORT
  51. def_bool y
  52. config STACKTRACE_SUPPORT
  53. def_bool y
  54. config LOCKDEP_SUPPORT
  55. def_bool y
  56. config TRACE_IRQFLAGS_SUPPORT
  57. def_bool y
  58. config RWSEM_GENERIC_SPINLOCK
  59. def_bool y
  60. config GENERIC_HWEIGHT
  61. def_bool y
  62. config GENERIC_CSUM
  63. def_bool y
  64. config GENERIC_CALIBRATE_DELAY
  65. def_bool y
  66. config ZONE_DMA32
  67. def_bool y
  68. config ARCH_DMA_ADDR_T_64BIT
  69. def_bool y
  70. config NEED_DMA_MAP_STATE
  71. def_bool y
  72. config NEED_SG_DMA_LENGTH
  73. def_bool y
  74. config SWIOTLB
  75. def_bool y
  76. config IOMMU_HELPER
  77. def_bool SWIOTLB
  78. config KERNEL_MODE_NEON
  79. def_bool y
  80. source "init/Kconfig"
  81. source "kernel/Kconfig.freezer"
  82. menu "Platform selection"
  83. config ARCH_VEXPRESS
  84. bool "ARMv8 software model (Versatile Express)"
  85. select ARCH_REQUIRE_GPIOLIB
  86. select COMMON_CLK_VERSATILE
  87. select POWER_RESET_VEXPRESS
  88. select VEXPRESS_CONFIG
  89. help
  90. This enables support for the ARMv8 software model (Versatile
  91. Express).
  92. config ARCH_XGENE
  93. bool "AppliedMicro X-Gene SOC Family"
  94. help
  95. This enables support for AppliedMicro X-Gene SOC Family
  96. endmenu
  97. menu "Bus support"
  98. config ARM_AMBA
  99. bool
  100. endmenu
  101. menu "Kernel Features"
  102. config ARM64_64K_PAGES
  103. bool "Enable 64KB pages support"
  104. help
  105. This feature enables 64KB pages support (4KB by default)
  106. allowing only two levels of page tables and faster TLB
  107. look-up. AArch32 emulation is not available when this feature
  108. is enabled.
  109. config CPU_BIG_ENDIAN
  110. bool "Build big-endian kernel"
  111. help
  112. Say Y if you plan on running a kernel in big-endian mode.
  113. config SMP
  114. bool "Symmetric Multi-Processing"
  115. select USE_GENERIC_SMP_HELPERS
  116. help
  117. This enables support for systems with more than one CPU. If
  118. you say N here, the kernel will run on single and
  119. multiprocessor machines, but will use only one CPU of a
  120. multiprocessor machine. If you say Y here, the kernel will run
  121. on many, but not all, single processor machines. On a single
  122. processor machine, the kernel will run faster if you say N
  123. here.
  124. If you don't know what to do here, say N.
  125. config NR_CPUS
  126. int "Maximum number of CPUs (2-32)"
  127. range 2 32
  128. depends on SMP
  129. # These have to remain sorted largest to smallest
  130. default "8" if ARCH_XGENE
  131. default "4"
  132. config HOTPLUG_CPU
  133. bool "Support for hot-pluggable CPUs"
  134. depends on SMP
  135. help
  136. Say Y here to experiment with turning CPUs off and on. CPUs
  137. can be controlled through /sys/devices/system/cpu.
  138. source kernel/Kconfig.preempt
  139. config HZ
  140. int
  141. default 100
  142. config ARCH_HAS_HOLES_MEMORYMODEL
  143. def_bool y if SPARSEMEM
  144. config ARCH_SPARSEMEM_ENABLE
  145. def_bool y
  146. select SPARSEMEM_VMEMMAP_ENABLE
  147. config ARCH_SPARSEMEM_DEFAULT
  148. def_bool ARCH_SPARSEMEM_ENABLE
  149. config ARCH_SELECT_MEMORY_MODEL
  150. def_bool ARCH_SPARSEMEM_ENABLE
  151. config HAVE_ARCH_PFN_VALID
  152. def_bool ARCH_HAS_HOLES_MEMORYMODEL || !SPARSEMEM
  153. config HW_PERF_EVENTS
  154. bool "Enable hardware performance counter support for perf events"
  155. depends on PERF_EVENTS
  156. default y
  157. help
  158. Enable hardware performance counter support for perf events. If
  159. disabled, perf events will use software events only.
  160. config SYS_SUPPORTS_HUGETLBFS
  161. def_bool y
  162. config ARCH_WANT_GENERAL_HUGETLB
  163. def_bool y
  164. config ARCH_WANT_HUGE_PMD_SHARE
  165. def_bool y if !ARM64_64K_PAGES
  166. config HAVE_ARCH_TRANSPARENT_HUGEPAGE
  167. def_bool y
  168. source "mm/Kconfig"
  169. config XEN_DOM0
  170. def_bool y
  171. depends on XEN
  172. config XEN
  173. bool "Xen guest support on ARM64 (EXPERIMENTAL)"
  174. depends on ARM64 && OF
  175. help
  176. Say Y if you want to run Linux in a Virtual Machine on Xen on ARM64.
  177. config FORCE_MAX_ZONEORDER
  178. int
  179. default "14" if (ARM64_64K_PAGES && TRANSPARENT_HUGEPAGE)
  180. default "11"
  181. endmenu
  182. menu "Boot options"
  183. config CMDLINE
  184. string "Default kernel command string"
  185. default ""
  186. help
  187. Provide a set of default command-line options at build time by
  188. entering them here. As a minimum, you should specify the the
  189. root device (e.g. root=/dev/nfs).
  190. config CMDLINE_FORCE
  191. bool "Always use the default kernel command string"
  192. help
  193. Always use the default kernel command string, even if the boot
  194. loader passes other arguments to the kernel.
  195. This is useful if you cannot or don't want to change the
  196. command-line options your boot loader passes to the kernel.
  197. endmenu
  198. menu "Userspace binary formats"
  199. source "fs/Kconfig.binfmt"
  200. config COMPAT
  201. bool "Kernel support for 32-bit EL0"
  202. depends on !ARM64_64K_PAGES
  203. select COMPAT_BINFMT_ELF
  204. select HAVE_UID16
  205. select OLD_SIGSUSPEND3
  206. select COMPAT_OLD_SIGACTION
  207. help
  208. This option enables support for a 32-bit EL0 running under a 64-bit
  209. kernel at EL1. AArch32-specific components such as system calls,
  210. the user helper functions, VFP support and the ptrace interface are
  211. handled appropriately by the kernel.
  212. If you want to execute 32-bit userspace applications, say Y.
  213. config SYSVIPC_COMPAT
  214. def_bool y
  215. depends on COMPAT && SYSVIPC
  216. endmenu
  217. source "net/Kconfig"
  218. source "drivers/Kconfig"
  219. source "fs/Kconfig"
  220. source "arch/arm64/kvm/Kconfig"
  221. source "arch/arm64/Kconfig.debug"
  222. source "security/Kconfig"
  223. source "crypto/Kconfig"
  224. source "lib/Kconfig"