Config.in.kernel 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332
  1. # This file is part of the OpenADK project. OpenADK is copyrighted
  2. # material, please see the LICENCE file in the top-level directory.
  3. config ADK_LINUX_KERNEL_EXPERIMENTAL
  4. bool
  5. default y
  6. config ADK_LINUX_KERNEL_MODULE_COMPRESS_NONE
  7. bool
  8. default y
  9. config ADK_LINUX_KERNEL_STAGING
  10. bool
  11. config ADK_LINUX_KERNEL_CGROUP_CPUACCT
  12. bool
  13. config ADK_LINUX_KERNEL_CGROUP_DEVICE
  14. bool
  15. config ADK_LINUX_KERNEL_CGROUP_SCHED
  16. bool
  17. config ADK_LINUX_KERNEL_CGROUPS
  18. bool
  19. config ADK_LINUX_KERNEL_NAMESPACES
  20. bool
  21. config ADK_LINUX_KERNEL_UTS_NS
  22. bool
  23. config ADK_LINUX_KERNEL_FHANDLE
  24. bool
  25. config ADK_LINUX_KERNEL_AUDIT
  26. bool
  27. config ADK_LINUX_KERNEL_RESET_CONTROLLER
  28. bool
  29. config ADK_LINUX_KERNEL_BLK_DEV_INITRD
  30. bool
  31. config ADK_LINUX_KERNEL_BLK_DEV_RAM
  32. bool
  33. config ADK_LINUX_KERNEL_NETWORK_FILESYSTEMS
  34. bool
  35. config ADK_LINUX_KERNEL_IP_PNP
  36. bool
  37. config ADK_LINUX_KERNEL_IP_PNP_DHCP
  38. bool
  39. config ADK_LINUX_KERNEL_ROOT_NFS
  40. bool
  41. config ADK_LINUX_KERNEL_NFS_COMMON
  42. bool
  43. config ADK_LINUX_KERNEL_64BIT
  44. bool
  45. default y if ADK_LINUX_64
  46. # ARM specific
  47. config ADK_LINUX_KERNEL_AEABI
  48. bool
  49. default y if ADK_TARGET_ARCH_ARM
  50. config ADK_LINUX_KERNEL_ARM_THUMB
  51. bool
  52. config ADK_LINUX_KERNEL_THUMB2_KERNEL
  53. bool
  54. # endianess
  55. config ADK_LINUX_KERNEL_CPU_BIG_ENDIAN
  56. bool
  57. default y if ADK_TARGET_BIG_ENDIAN
  58. config ADK_LINUX_KERNEL_CPU_LITTLE_ENDIAN
  59. bool
  60. default y if ADK_TARGET_LITTLE_ENDIAN
  61. menu "Kernel options"
  62. config ADK_LINUX_KERNEL_MODULE_UNLOAD
  63. bool "Module unloading"
  64. config ADK_LINUX_KERNEL_HOTPLUG
  65. bool
  66. config ADK_LINUX_KERNEL_DEVTMPFS
  67. bool
  68. config ADK_LINUX_KERNEL_DEVTMPFS_MOUNT
  69. bool
  70. select ADK_LINUX_KERNEL_HOTPLUG
  71. config ADK_LINUX_KERNEL_UEVENT_HELPER
  72. bool
  73. depends on ADK_RUNTIME_DEV_MDEV
  74. default y if ADK_RUNTIME_DEV_MDEV
  75. config ADK_LINUX_KERNEL_UEVENT_HELPER_PATH
  76. string
  77. default "/sbin/mdev"
  78. depends on ADK_RUNTIME_DEV_MDEV
  79. config ADK_LINUX_KERNEL_BINFMT_ELF
  80. bool
  81. default y if ADK_TARGET_BINFMT_ELF
  82. config ADK_LINUX_KERNEL_BINFMT_ELF_FDPIC
  83. bool
  84. default y if ADK_TARGET_BINFMT_FDPIC
  85. default y if !ADK_TARGET_WITH_MMU && ADK_TARGET_BINFMT_ELF
  86. config ADK_LINUX_KERNEL_BINFMT_FLAT
  87. bool
  88. default y if ADK_TARGET_BINFMT_FLAT
  89. config ADK_LINUX_KERNEL_BINFMT_SHARED_FLAT
  90. bool
  91. default y if ADK_TARGET_BINFMT_FLAT_SHARED
  92. config ADK_LINUX_KERNEL_MMU
  93. bool
  94. config ADK_LINUX_KERNEL_VFP
  95. bool
  96. default y if ADK_TARGET_CPU_WITH_FPU_VFP
  97. config ADK_LINUX_KERNEL_VFPv3
  98. bool
  99. select ADK_LINUX_KERNEL_VFP
  100. default y if ADK_TARGET_CPU_WITH_FPU_VFPV3 || ADK_TARGET_CPU_WITH_FPU_VFPV4
  101. config ADK_LINUX_KERNEL_NEON
  102. bool
  103. default y if ADK_TARGET_ARCH_ARM_WITH_NEON
  104. config ADK_LINUX_KERNEL_KERNEL_MODE_NEON
  105. bool
  106. default y if ADK_TARGET_ARCH_ARM_WITH_NEON
  107. config ADK_LINUX_KERNEL_MIPS_FP_SUPPORT
  108. bool
  109. default y
  110. config ADK_LINUX_KERNEL_PATCH_REALTIME
  111. bool
  112. choice
  113. prompt "preemptive mode"
  114. config ADK_LINUX_KERNEL_PREEMPT_NONE
  115. bool "No Forced Preemption (Server)"
  116. help
  117. No Forced Preemption (Server)
  118. config ADK_LINUX_KERNEL_PREEMPT_VOLUNTARY
  119. bool "Voluntary Kernel Preemption (Desktop)"
  120. select ADK_LINUX_KERNEL_HIGH_RES_TIMERS
  121. help
  122. Voluntary Kernel Preemption (Desktop)
  123. config ADK_LINUX_KERNEL_PREEMPT__LL
  124. bool "Preemptible Kernel (Low-Latency Desktop)"
  125. select ADK_LINUX_KERNEL_HIGH_RES_TIMERS
  126. help
  127. Preemptible Kernel (Low-Latency Desktop)
  128. config ADK_LINUX_KERNEL_PREEMPT_RTB
  129. bool "Preemptible Kernel (Basic RealTime)"
  130. select ADK_LINUX_KERNEL_HIGH_RES_TIMERS
  131. select ADK_LINUX_KERNEL_PATCH_REALTIME
  132. depends on !ADK_LINUX_KERNEL_OPROFILE
  133. depends on ADK_TARGET_KERNEL_VERSION_4_4 \
  134. || ADK_TARGET_KERNEL_VERSION_4_9 \
  135. || (ADK_TARGET_KERNEL_VERSION_GIT && ADK_TARGET_BOARD_BCM28XX)
  136. help
  137. Preemptible Kernel (Basic RT)
  138. config ADK_LINUX_KERNEL_PREEMPT_RT_FULL
  139. bool "Fully Preemptible Kernel (RealTime)"
  140. select ADK_LINUX_KERNEL_HIGH_RES_TIMERS
  141. select ADK_LINUX_KERNEL_PATCH_REALTIME
  142. depends on !ADK_LINUX_KERNEL_OPROFILE
  143. depends on ADK_TARGET_KERNEL_VERSION_4_4 \
  144. || ADK_TARGET_KERNEL_VERSION_4_9 \
  145. || (ADK_TARGET_KERNEL_VERSION_GIT && ADK_TARGET_BOARD_BCM28XX)
  146. help
  147. Fully Preemptible Kernel (RealTime)
  148. https://www.kernel.org/pub/linux/kernel/projects/rt/
  149. endchoice
  150. config ADK_LINUX_KERNEL_HIGH_RES_TIMERS
  151. bool "Enable high resolution timers"
  152. choice
  153. prompt "tick configuration"
  154. config ADK_LINUX_KERNEL_NO_HZ_IDLE
  155. bool "no HZ IDLE, dynamic tick"
  156. config ADK_LINUX_KERNEL_NO_HZ_FULL
  157. bool "no HZ FULL, dynamic tick"
  158. config ADK_LINUX_KERNEL_HZ_PERIODIC
  159. bool "periodic tick"
  160. endchoice
  161. choice
  162. prompt "HZ"
  163. depends on ADK_LINUX_KERNEL_HZ_PERIODIC
  164. config ADK_LINUX_KERNEL_HZ_100
  165. bool "100 HZ"
  166. config ADK_LINUX_KERNEL_HZ_500
  167. bool "500 HZ"
  168. config ADK_LINUX_KERNEL_HZ_1000
  169. bool "1000 HZ"
  170. endchoice
  171. config ADK_TARGET_NO_CMDLINE
  172. bool "Do not builtin any kernel cmdline"
  173. help
  174. No kernel command line modifictaion is done.
  175. config ADK_LINUX_KERNEL_SMP
  176. bool "Enable symmetric multi processing"
  177. depends on ADK_TARGET_WITH_SMP
  178. default y if ADK_TARGET_WITH_SMP
  179. default n
  180. help
  181. Enable symmetric multi processing support.
  182. config ADK_LINUX_KERNEL_HIGHMEM
  183. bool "Enable high memory"
  184. # produces broken kernel on bcm28xx
  185. depends on !ADK_TARGET_BOARD_BCM28XX
  186. default y if ADK_TARGET_MODEL_CUBOX_I4PRO
  187. default y if ADK_TARGET_MODEL_CUBOX_I2ULTRA
  188. default y if ADK_TARGET_MODEL_CUBOX_I2EX
  189. default y if ADK_TARGET_SYSTEM_PCENGINES_APU
  190. default n
  191. help
  192. Enable high memory support.
  193. config ADK_LINUX_KERNEL_CC_OPTIMIZE_FOR_SIZE
  194. bool "Optimize for size"
  195. # does not boot in qemu-microblaze
  196. depends on !ADK_TARGET_ARCH_MICROBLAZE && \
  197. !ADK_TARGET_ARCH_RISC64 && \
  198. !ADK_TARGET_ARCH_KVX
  199. default y
  200. config ADK_LINUX_KERNEL_IKCONFIG
  201. tristate
  202. config ADK_LINUX_KERNEL_IKCONFIG_PROC
  203. bool "Enable access to .config through /proc/config.gz"
  204. select ADK_LINUX_KERNEL_IKCONFIG
  205. default n
  206. config ADK_LINUX_KERNEL_BSD_PROCESS_ACCT
  207. bool "BSD Process Accounting"
  208. default n
  209. config ADK_LINUX_KERNEL_NAMESPACES
  210. bool
  211. default n
  212. config ADK_LINUX_KERNEL_GENERIC_VDSO_TIME_NS
  213. bool
  214. default n
  215. config ADK_LINUX_KERNEL_USER_NS
  216. bool "User namespace"
  217. select ADK_LINUX_KERNEL_NAMESPACES
  218. default n
  219. config ADK_LINUX_KERNEL_NET_NS
  220. bool "Network namespace"
  221. select ADK_LINUX_KERNEL_NAMESPACES
  222. default n
  223. config ADK_LINUX_KERNEL_TIME_NS
  224. bool "Network namespace"
  225. select ADK_LINUX_KERNEL_NAMESPACES
  226. select ADK_LINUX_KERNEL_GENERIC_VDSO_TIME_NS
  227. default n
  228. config ADK_LINUX_KERNEL_BPF
  229. bool
  230. default n
  231. config ADK_LINUX_KERNEL_BPF_SYSCALL
  232. bool "Enable bpf() syscall"
  233. select ADK_LINUX_KERNEL_BPF
  234. default n
  235. config ADK_LINUX_KERNEL_WATCH_QUEUE
  236. bool "General notification queue"
  237. default n
  238. choice
  239. prompt "Page size"
  240. depends on ADK_TARGET_ARCH_MIPS64
  241. default ADK_LINUX_KERNEL_PAGE_SIZE_16KB if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
  242. default ADK_LINUX_KERNEL_PAGE_SIZE_4KB
  243. config ADK_LINUX_KERNEL_PAGE_SIZE_4KB
  244. bool "4kB"
  245. config ADK_LINUX_KERNEL_PAGE_SIZE_16KB
  246. bool "16kB"
  247. config ADK_LINUX_KERNEL_PAGE_SIZE_64KB
  248. bool "64kB"
  249. endchoice
  250. endmenu