1 # This file is part of the OpenADK project. OpenADK is copyrighted
2 # material, please see the LICENCE file in the top-level directory.
4 config ADK_LINUX_KERNEL_EXPERIMENTAL
8 config ADK_LINUX_KERNEL_MODULE_COMPRESS_NONE
12 config ADK_LINUX_KERNEL_STAGING
15 config ADK_LINUX_KERNEL_CGROUP_CPUACCT
18 config ADK_LINUX_KERNEL_CGROUP_DEVICE
21 config ADK_LINUX_KERNEL_CGROUP_SCHED
24 config ADK_LINUX_KERNEL_CGROUPS
27 config ADK_LINUX_KERNEL_NAMESPACES
30 config ADK_LINUX_KERNEL_UTS_NS
33 config ADK_LINUX_KERNEL_FHANDLE
36 config ADK_LINUX_KERNEL_AUDIT
39 config ADK_LINUX_KERNEL_RESET_CONTROLLER
42 config ADK_LINUX_KERNEL_BLK_DEV_INITRD
45 config ADK_LINUX_KERNEL_BLK_DEV_RAM
48 config ADK_LINUX_KERNEL_NETWORK_FILESYSTEMS
51 config ADK_LINUX_KERNEL_IP_PNP
54 config ADK_LINUX_KERNEL_IP_PNP_DHCP
57 config ADK_LINUX_KERNEL_ROOT_NFS
60 config ADK_LINUX_KERNEL_NFS_COMMON
63 config ADK_LINUX_KERNEL_64BIT
65 default y if ADK_LINUX_64
68 config ADK_LINUX_KERNEL_AEABI
70 default y if ADK_TARGET_ARCH_ARM
72 config ADK_LINUX_KERNEL_ARM_THUMB
75 config ADK_LINUX_KERNEL_THUMB2_KERNEL
79 config ADK_LINUX_KERNEL_CPU_BIG_ENDIAN
81 default y if ADK_TARGET_BIG_ENDIAN
83 config ADK_LINUX_KERNEL_CPU_LITTLE_ENDIAN
85 default y if ADK_TARGET_LITTLE_ENDIAN
89 config ADK_LINUX_KERNEL_MODULE_UNLOAD
90 bool "Module unloading"
92 config ADK_LINUX_KERNEL_HOTPLUG
95 config ADK_LINUX_KERNEL_DEVTMPFS
98 config ADK_LINUX_KERNEL_DEVTMPFS_MOUNT
100 select ADK_LINUX_KERNEL_HOTPLUG
102 config ADK_LINUX_KERNEL_UEVENT_HELPER
104 depends on ADK_RUNTIME_DEV_MDEV
105 default y if ADK_RUNTIME_DEV_MDEV
107 config ADK_LINUX_KERNEL_UEVENT_HELPER_PATH
110 depends on ADK_RUNTIME_DEV_MDEV
112 config ADK_LINUX_KERNEL_BINFMT_ELF
114 default y if ADK_TARGET_BINFMT_ELF
116 config ADK_LINUX_KERNEL_BINFMT_ELF_FDPIC
118 default y if ADK_TARGET_BINFMT_FDPIC
119 default y if !ADK_TARGET_WITH_MMU && ADK_TARGET_BINFMT_ELF
121 config ADK_LINUX_KERNEL_BINFMT_FLAT
123 default y if ADK_TARGET_BINFMT_FLAT
125 config ADK_LINUX_KERNEL_BINFMT_SHARED_FLAT
127 default y if ADK_TARGET_BINFMT_FLAT_SHARED
129 config ADK_LINUX_KERNEL_MMU
132 config ADK_LINUX_KERNEL_VFP
134 default y if ADK_TARGET_CPU_WITH_FPU_VFP
136 config ADK_LINUX_KERNEL_VFPv3
138 select ADK_LINUX_KERNEL_VFP
139 default y if ADK_TARGET_CPU_WITH_FPU_VFPV3 || ADK_TARGET_CPU_WITH_FPU_VFPV4
141 config ADK_LINUX_KERNEL_NEON
143 default y if ADK_TARGET_ARCH_ARM_WITH_NEON
145 config ADK_LINUX_KERNEL_KERNEL_MODE_NEON
147 default y if ADK_TARGET_ARCH_ARM_WITH_NEON
149 config ADK_LINUX_KERNEL_MIPS_FP_SUPPORT
153 config ADK_LINUX_KERNEL_PATCH_REALTIME
157 prompt "preemptive mode"
159 config ADK_LINUX_KERNEL_PREEMPT_NONE
160 bool "No Forced Preemption (Server)"
162 No Forced Preemption (Server)
164 config ADK_LINUX_KERNEL_PREEMPT_VOLUNTARY
165 bool "Voluntary Kernel Preemption (Desktop)"
166 select ADK_LINUX_KERNEL_HIGH_RES_TIMERS
168 Voluntary Kernel Preemption (Desktop)
170 config ADK_LINUX_KERNEL_PREEMPT__LL
171 bool "Preemptible Kernel (Low-Latency Desktop)"
172 select ADK_LINUX_KERNEL_HIGH_RES_TIMERS
174 Preemptible Kernel (Low-Latency Desktop)
176 config ADK_LINUX_KERNEL_PREEMPT_RTB
177 bool "Preemptible Kernel (Basic RealTime)"
178 select ADK_LINUX_KERNEL_HIGH_RES_TIMERS
179 select ADK_LINUX_KERNEL_PATCH_REALTIME
180 depends on !ADK_LINUX_KERNEL_OPROFILE
181 depends on ADK_TARGET_KERNEL_VERSION_4_4 \
182 || ADK_TARGET_KERNEL_VERSION_4_9 \
183 || (ADK_TARGET_KERNEL_VERSION_GIT && ADK_TARGET_BOARD_BCM28XX)
185 Preemptible Kernel (Basic RT)
187 config ADK_LINUX_KERNEL_PREEMPT_RT_FULL
188 bool "Fully Preemptible Kernel (RealTime)"
189 select ADK_LINUX_KERNEL_HIGH_RES_TIMERS
190 select ADK_LINUX_KERNEL_PATCH_REALTIME
191 depends on !ADK_LINUX_KERNEL_OPROFILE
192 depends on ADK_TARGET_KERNEL_VERSION_4_4 \
193 || ADK_TARGET_KERNEL_VERSION_4_9 \
194 || (ADK_TARGET_KERNEL_VERSION_GIT && ADK_TARGET_BOARD_BCM28XX)
196 Fully Preemptible Kernel (RealTime)
197 https://www.kernel.org/pub/linux/kernel/projects/rt/
201 config ADK_LINUX_KERNEL_HIGH_RES_TIMERS
202 bool "Enable high resolution timers"
205 prompt "tick configuration"
207 config ADK_LINUX_KERNEL_NO_HZ_IDLE
208 bool "no HZ IDLE, dynamic tick"
210 config ADK_LINUX_KERNEL_NO_HZ_FULL
211 bool "no HZ FULL, dynamic tick"
213 config ADK_LINUX_KERNEL_HZ_PERIODIC
220 depends on ADK_LINUX_KERNEL_HZ_PERIODIC
222 config ADK_LINUX_KERNEL_HZ_100
225 config ADK_LINUX_KERNEL_HZ_500
228 config ADK_LINUX_KERNEL_HZ_1000
233 config ADK_TARGET_NO_CMDLINE
234 bool "Do not builtin any kernel cmdline"
236 No kernel command line modifictaion is done.
238 config ADK_LINUX_KERNEL_SMP
239 bool "Enable symmetric multi processing"
240 depends on ADK_TARGET_WITH_SMP
241 default y if ADK_TARGET_WITH_SMP
244 Enable symmetric multi processing support.
246 config ADK_LINUX_KERNEL_HIGHMEM
247 bool "Enable high memory"
248 # produces broken kernel on bcm28xx
249 depends on !ADK_TARGET_BOARD_BCM28XX
250 default y if ADK_TARGET_MODEL_CUBOX_I4PRO
251 default y if ADK_TARGET_MODEL_CUBOX_I2ULTRA
252 default y if ADK_TARGET_MODEL_CUBOX_I2EX
253 default y if ADK_TARGET_SYSTEM_PCENGINES_APU
256 Enable high memory support.
258 config ADK_LINUX_KERNEL_CC_OPTIMIZE_FOR_SIZE
259 bool "Optimize for size"
260 # does not boot in qemu-microblaze
261 depends on !ADK_TARGET_ARCH_MICROBLAZE && \
262 !ADK_TARGET_ARCH_RISC64 && \
266 config ADK_LINUX_KERNEL_IKCONFIG
269 config ADK_LINUX_KERNEL_IKCONFIG_PROC
270 bool "Enable access to .config through /proc/config.gz"
271 select ADK_LINUX_KERNEL_IKCONFIG
274 config ADK_LINUX_KERNEL_BSD_PROCESS_ACCT
275 bool "BSD Process Accounting"
278 config ADK_LINUX_KERNEL_NAMESPACES
282 config ADK_LINUX_KERNEL_GENERIC_VDSO_TIME_NS
286 config ADK_LINUX_KERNEL_USER_NS
287 bool "User namespace"
288 select ADK_LINUX_KERNEL_NAMESPACES
291 config ADK_LINUX_KERNEL_NET_NS
292 bool "Network namespace"
293 select ADK_LINUX_KERNEL_NAMESPACES
296 config ADK_LINUX_KERNEL_TIME_NS
297 bool "Network namespace"
298 select ADK_LINUX_KERNEL_NAMESPACES
299 select ADK_LINUX_KERNEL_GENERIC_VDSO_TIME_NS
302 config ADK_LINUX_KERNEL_BPF
306 config ADK_LINUX_KERNEL_BPF_SYSCALL
307 bool "Enable bpf() syscall"
308 select ADK_LINUX_KERNEL_BPF
311 config ADK_LINUX_KERNEL_WATCH_QUEUE
312 bool "General notification queue"
315 config ADK_LINUX_KERNEL_MEMCG
319 config ADK_LINUX_KERNEL_BLK_CGROUP
323 config ADK_LINUX_KERNEL_CGROUP_SCHED
327 config ADK_LINUX_KERNEL_CGROUP_PIDS
331 config ADK_LINUX_KERNEL_CGROUPS
332 bool "Control group support"
333 select ADK_LINUX_KERNEL_MEMCG
334 select ADK_LINUX_KERNEL_BLK_CGROUP
335 select ADK_LINUX_KERNEL_CGROUP_SCHED
336 select ADK_LINUX_KERNEL_CGROUP_PIDS
341 depends on ADK_TARGET_ARCH_MIPS64
342 default ADK_LINUX_KERNEL_PAGE_SIZE_16KB if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
343 default ADK_LINUX_KERNEL_PAGE_SIZE_4KB
345 config ADK_LINUX_KERNEL_PAGE_SIZE_4KB
348 config ADK_LINUX_KERNEL_PAGE_SIZE_16KB
351 config ADK_LINUX_KERNEL_PAGE_SIZE_64KB