1 | #
|
---|
2 | # Copyright (c) 2006 Ondrej Palkovsky
|
---|
3 | # Copyright (c) 2009 Martin Decky
|
---|
4 | # All rights reserved.
|
---|
5 | #
|
---|
6 | # Redistribution and use in source and binary forms, with or without
|
---|
7 | # modification, are permitted provided that the following conditions
|
---|
8 | # are met:
|
---|
9 | #
|
---|
10 | # - Redistributions of source code must retain the above copyright
|
---|
11 | # notice, this list of conditions and the following disclaimer.
|
---|
12 | # - Redistributions in binary form must reproduce the above copyright
|
---|
13 | # notice, this list of conditions and the following disclaimer in the
|
---|
14 | # documentation and/or other materials provided with the distribution.
|
---|
15 | # - The name of the author may not be used to endorse or promote products
|
---|
16 | # derived from this software without specific prior written permission.
|
---|
17 | #
|
---|
18 | # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
---|
19 | # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
---|
20 | # OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
---|
21 | # IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
---|
22 | # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
---|
23 | # NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
---|
24 | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
---|
25 | # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
---|
26 | # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
---|
27 | # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
---|
28 | #
|
---|
29 |
|
---|
30 | ## General platform options
|
---|
31 |
|
---|
32 | % Platform
|
---|
33 | @ "abs32le" abstract 32-bit little endian
|
---|
34 | @ "amd64" AMD64/EM64T 64-bit (PC)
|
---|
35 | @ "arm32" ARM 32-bit
|
---|
36 | @ "ia32" IA-32 32-bit (PC)
|
---|
37 | @ "ia64" IA-64 64-bit
|
---|
38 | @ "mips32" MIPS 32-bit
|
---|
39 | @ "ppc32" PowerPC 32-bit
|
---|
40 | @ "riscv64" RISC-V 64-bit
|
---|
41 | @ "sparc64" SPARCv9 64-bit
|
---|
42 | ! PLATFORM (choice)
|
---|
43 |
|
---|
44 | % Machine type
|
---|
45 | @ "msim" MSIM
|
---|
46 | @ "bmalta" MIPS Malta Development Board big endian
|
---|
47 | @ "lmalta" MIPS Malta Development Board little endian
|
---|
48 | ! [PLATFORM=mips32] MACHINE (choice)
|
---|
49 |
|
---|
50 | % Machine type
|
---|
51 | @ "i460GX" i460GX chipset machine
|
---|
52 | @ "ski" Ski ia64 simulator
|
---|
53 | ! [PLATFORM=ia64] MACHINE (choice)
|
---|
54 |
|
---|
55 | % Machine type
|
---|
56 | @ "generic" Generic Sun workstation or server
|
---|
57 | ! [PLATFORM=sparc64] MACHINE (choice)
|
---|
58 |
|
---|
59 | % Machine type
|
---|
60 | @ "gta02" GTA02 / Neo FreeRunner
|
---|
61 | @ "integratorcp" Integratorcp
|
---|
62 | @ "beagleboardxm" BeagleBoard-xM
|
---|
63 | @ "beaglebone" BeagleBone
|
---|
64 | @ "raspberrypi" Raspberry Pi
|
---|
65 | ! [PLATFORM=arm32] MACHINE (choice)
|
---|
66 |
|
---|
67 | % CPU type
|
---|
68 | @ "pentium4" Pentium 4
|
---|
69 | @ "pentium3" Pentium 3
|
---|
70 | @ "core" Core Solo/Duo
|
---|
71 | @ "athlon_xp" Athlon XP
|
---|
72 | @ "athlon_mp" Athlon MP
|
---|
73 | @ "i486" i486
|
---|
74 | ! [PLATFORM=ia32] PROCESSOR (choice)
|
---|
75 |
|
---|
76 | % CPU type
|
---|
77 | @ "opteron" Opteron
|
---|
78 | ! [PLATFORM=amd64] PROCESSOR (choice)
|
---|
79 |
|
---|
80 | % CPU type
|
---|
81 | @ "us" UltraSPARC I-II subarchitecture
|
---|
82 | @ "us3" UltraSPARC III-IV subarchitecture
|
---|
83 | @ "sun4v" Niagara (sun4v)
|
---|
84 | ! [PLATFORM=sparc64&MACHINE=generic] PROCESSOR (choice)
|
---|
85 |
|
---|
86 | % Quad float type
|
---|
87 | @ "hard" Hardware
|
---|
88 | @ "soft" Software
|
---|
89 | ! [PLATFORM=sparc64] QUADFLOAT (choice)
|
---|
90 |
|
---|
91 | % CPU type
|
---|
92 | @ "cortex_a8" ARM Cortex A-8
|
---|
93 | ! [PLATFORM=arm32&(MACHINE=beagleboardxm|MACHINE=beaglebone)] PROCESSOR (choice)
|
---|
94 |
|
---|
95 | % CPU type
|
---|
96 | @ "arm920t" ARM920T
|
---|
97 | ! [PLATFORM=arm32&MACHINE=gta02] PROCESSOR (choice)
|
---|
98 |
|
---|
99 | % CPU type
|
---|
100 | @ "arm926ej_s" ARM926EJ-S
|
---|
101 | ! [PLATFORM=arm32&MACHINE=integratorcp] PROCESSOR (choice)
|
---|
102 |
|
---|
103 | % CPU type
|
---|
104 | @ "arm1176jzf_s" ARM1176JZF-S
|
---|
105 | ! [PLATFORM=arm32&MACHINE=raspberrypi] PROCESSOR (choice)
|
---|
106 |
|
---|
107 | # Add more ARMv4 CPUs
|
---|
108 | % CPU arch
|
---|
109 | @ "armv4" ARMv4
|
---|
110 | ! [PLATFORM=arm32&(PROCESSOR=arm920t)] PROCESSOR_ARCH (choice)
|
---|
111 |
|
---|
112 | # Add more ARMv5 CPUs
|
---|
113 | % CPU arch
|
---|
114 | @ "armv5" ARMv5
|
---|
115 | ! [PLATFORM=arm32&(PROCESSOR=arm926ej_s)] PROCESSOR_ARCH (choice)
|
---|
116 |
|
---|
117 | # Add more ARMv6 CPUs
|
---|
118 | % CPU arch
|
---|
119 | @ "armv6" ARMv6
|
---|
120 | ! [PLATFORM=arm32&(PROCESSOR=arm1176jzf_s)] PROCESSOR_ARCH (choice)
|
---|
121 |
|
---|
122 | # Add more ARMv7-A CPUs
|
---|
123 | % CPU arch
|
---|
124 | @ "armv7_a" ARMv7-A
|
---|
125 | ! [PLATFORM=arm32&(PROCESSOR=cortex_a8)] PROCESSOR_ARCH (choice)
|
---|
126 |
|
---|
127 | % CPU type
|
---|
128 | @ "R4000" MIPS R4000
|
---|
129 | ! [PLATFORM=mips32&MACHINE=msim] PROCESSOR (choice)
|
---|
130 |
|
---|
131 | % CPU type
|
---|
132 | @ "4Kc" MIPS 4Kc
|
---|
133 | ! [PLATFORM=mips32&(MACHINE=bmalta|MACHINE=lmalta)] PROCESSOR (choice)
|
---|
134 |
|
---|
135 | % Kernel memory model
|
---|
136 | @ "kernel" Kernel
|
---|
137 | @ "large" Large
|
---|
138 | ! [PLATFORM=amd64] MEMORY_MODEL (choice)
|
---|
139 |
|
---|
140 | % RAM disk format
|
---|
141 | @ "tmpfs" TMPFS image
|
---|
142 | @ "fat" FAT16 image
|
---|
143 | @ "ext4fs" ext4 image
|
---|
144 | ! RDFMT (choice)
|
---|
145 |
|
---|
146 |
|
---|
147 | ## Mapping between platform and kernel architecture
|
---|
148 |
|
---|
149 | % Kernel architecture
|
---|
150 | @ "abs32le"
|
---|
151 | ! [PLATFORM=abs32le] KARCH (choice)
|
---|
152 |
|
---|
153 | % Kernel architecture
|
---|
154 | @ "amd64"
|
---|
155 | ! [PLATFORM=amd64] KARCH (choice)
|
---|
156 |
|
---|
157 | % Kernel architecture
|
---|
158 | @ "arm32"
|
---|
159 | ! [PLATFORM=arm32] KARCH (choice)
|
---|
160 |
|
---|
161 | % Kernel architecture
|
---|
162 | @ "ia32"
|
---|
163 | ! [PLATFORM=ia32] KARCH (choice)
|
---|
164 |
|
---|
165 | % Kernel architecture
|
---|
166 | @ "ia32xen"
|
---|
167 | ! [PLATFORM=ia32xen] KARCH (choice)
|
---|
168 |
|
---|
169 | % Kernel architecture
|
---|
170 | @ "ia64"
|
---|
171 | ! [PLATFORM=ia64] KARCH (choice)
|
---|
172 |
|
---|
173 | % Kernel architecture
|
---|
174 | @ "mips32"
|
---|
175 | ! [PLATFORM=mips32] KARCH (choice)
|
---|
176 |
|
---|
177 | % Kernel architecture
|
---|
178 | @ "ppc32"
|
---|
179 | ! [PLATFORM=ppc32] KARCH (choice)
|
---|
180 |
|
---|
181 | % Kernel architecture
|
---|
182 | @ "ppc64"
|
---|
183 | ! [PLATFORM=ppc64] KARCH (choice)
|
---|
184 |
|
---|
185 | % Kernel architecture
|
---|
186 | @ "riscv64"
|
---|
187 | ! [PLATFORM=riscv64] KARCH (choice)
|
---|
188 |
|
---|
189 | % Kernel architecture
|
---|
190 | @ "sparc64"
|
---|
191 | ! [PLATFORM=sparc64] KARCH (choice)
|
---|
192 |
|
---|
193 |
|
---|
194 | ## Mapping between platform and user space architecture
|
---|
195 |
|
---|
196 | % User space architecture
|
---|
197 | @ "abs32le"
|
---|
198 | ! [PLATFORM=abs32le] UARCH (choice)
|
---|
199 |
|
---|
200 | % User space architecture
|
---|
201 | @ "amd64"
|
---|
202 | ! [PLATFORM=amd64] UARCH (choice)
|
---|
203 |
|
---|
204 | % User space architecture
|
---|
205 | @ "arm32"
|
---|
206 | ! [PLATFORM=arm32] UARCH (choice)
|
---|
207 |
|
---|
208 | % User space architecture
|
---|
209 | @ "ia32"
|
---|
210 | ! [PLATFORM=ia32|PLATFORM=ia32xen] UARCH (choice)
|
---|
211 |
|
---|
212 | % User space architecture
|
---|
213 | @ "ia64"
|
---|
214 | ! [PLATFORM=ia64] UARCH (choice)
|
---|
215 |
|
---|
216 | % User space architecture
|
---|
217 | @ "mips32"
|
---|
218 | ! [PLATFORM=mips32&(MACHINE=msim|MACHINE=lmalta)] UARCH (choice)
|
---|
219 |
|
---|
220 | % User space architecture
|
---|
221 | @ "mips32eb"
|
---|
222 | ! [PLATFORM=mips32&MACHINE=bmalta] UARCH (choice)
|
---|
223 |
|
---|
224 | % User space architecture
|
---|
225 | @ "ppc32"
|
---|
226 | ! [PLATFORM=ppc32] UARCH (choice)
|
---|
227 |
|
---|
228 | % User space architecture
|
---|
229 | @ "ppc64"
|
---|
230 | ! [PLATFORM=ppc64] UARCH (choice)
|
---|
231 |
|
---|
232 | % User space architecture
|
---|
233 | @ "riscv64"
|
---|
234 | ! [PLATFORM=riscv64] UARCH (choice)
|
---|
235 |
|
---|
236 | % User space architecture
|
---|
237 | @ "sparc64"
|
---|
238 | ! [PLATFORM=sparc64] UARCH (choice)
|
---|
239 |
|
---|
240 |
|
---|
241 | ## Mapping between platform and boot architecture
|
---|
242 |
|
---|
243 | % Boot architecture
|
---|
244 | @ "abs32le"
|
---|
245 | ! [PLATFORM=abs32le] BARCH (choice)
|
---|
246 |
|
---|
247 | % Boot architecture
|
---|
248 | @ "amd64"
|
---|
249 | ! [PLATFORM=amd64] BARCH (choice)
|
---|
250 |
|
---|
251 | % Boot architecture
|
---|
252 | @ "arm32"
|
---|
253 | ! [PLATFORM=arm32] BARCH (choice)
|
---|
254 |
|
---|
255 | % Boot architecture
|
---|
256 | @ "ia32"
|
---|
257 | ! [PLATFORM=ia32] BARCH (choice)
|
---|
258 |
|
---|
259 | % Boot architecture
|
---|
260 | @ "ia32xen"
|
---|
261 | ! [PLATFORM=ia32xen] BARCH (choice)
|
---|
262 |
|
---|
263 | % Boot architecture
|
---|
264 | @ "ia64"
|
---|
265 | ! [PLATFORM=ia64] BARCH (choice)
|
---|
266 |
|
---|
267 | % Boot architecture
|
---|
268 | @ "mips32"
|
---|
269 | ! [PLATFORM=mips32] BARCH (choice)
|
---|
270 |
|
---|
271 | % Boot architecture
|
---|
272 | @ "ppc32"
|
---|
273 | ! [PLATFORM=ppc32] BARCH (choice)
|
---|
274 |
|
---|
275 | % Boot architecture
|
---|
276 | @ "ppc64"
|
---|
277 | ! [PLATFORM=ppc64] BARCH (choice)
|
---|
278 |
|
---|
279 | % Boot architecture
|
---|
280 | @ "riscv64"
|
---|
281 | ! [PLATFORM=riscv64] BARCH (choice)
|
---|
282 |
|
---|
283 | % Boot architecture
|
---|
284 | @ "sparc64"
|
---|
285 | ! [PLATFORM=sparc64] BARCH (choice)
|
---|
286 |
|
---|
287 |
|
---|
288 | ## Mapping between platform and image format
|
---|
289 |
|
---|
290 | % Image format
|
---|
291 | @ "binary"
|
---|
292 | ! [PLATFORM=mips32&MACHINE=msim] IMAGE (choice)
|
---|
293 |
|
---|
294 | % Image format
|
---|
295 | @ "elf"
|
---|
296 | ! [PLATFORM=mips32&(MACHINE=bmalta|MACHINE=lmalta)] IMAGE (choice)
|
---|
297 |
|
---|
298 |
|
---|
299 | ## Compiler options
|
---|
300 |
|
---|
301 | % Compiler
|
---|
302 | @ "gcc_cross" GNU C Compiler (HelenOS-specific cross-compiler)
|
---|
303 | @ "clang" Clang
|
---|
304 | ! COMPILER (choice)
|
---|
305 |
|
---|
306 | % Clang Integrated Assembler
|
---|
307 | @ "default" Use architecture default.
|
---|
308 | @ "yes" Use integrated assembler.
|
---|
309 | @ "no" Use GNU Assembler.
|
---|
310 | ! [COMPILER=clang] INTEGRATED_AS (choice)
|
---|
311 |
|
---|
312 | ## Cross-compiler target for abstract architecture
|
---|
313 |
|
---|
314 | % Cross-compiler target
|
---|
315 | @ "arm32" ARM 32-bit
|
---|
316 | @ "ia32" Intel IA-32
|
---|
317 | @ "mips32" MIPS 32-bit
|
---|
318 | ! [PLATFORM=abs32le&COMPILER=gcc_cross] CROSS_TARGET (choice)
|
---|
319 |
|
---|
320 |
|
---|
321 | ## Kernel configuration
|
---|
322 |
|
---|
323 | % Fences
|
---|
324 | ! [PLATFORM=ia32&(PROCESSOR=athlon_xp|PROCESSOR=athlon_mp|PROCESSOR=pentium3)] CONFIG_FENCES_P3 (y)
|
---|
325 |
|
---|
326 | % Fences
|
---|
327 | ! [PLATFORM=ia32&(PROCESSOR=pentium4|PROCESSOR=core)] CONFIG_FENCES_P4 (y)
|
---|
328 |
|
---|
329 | % Fences
|
---|
330 | ! [PLATFORM=amd64] CONFIG_FENCES_P4 (y)
|
---|
331 |
|
---|
332 | % IOMAP bitmap support
|
---|
333 | ! [PLATFORM=ia32|PLATFORM=amd64] CONFIG_IOMAP_BITMAP (y)
|
---|
334 |
|
---|
335 | % IOMAP dummy support
|
---|
336 | ! [PLATFORM=abs32le|PLATFORM=arm32|PLATFORM=mips32|PLATFORM=ppc32|PLATFORM=riscv64|PLATFORM=sparc64] CONFIG_IOMAP_DUMMY (y)
|
---|
337 |
|
---|
338 | % ACPI support
|
---|
339 | ! [PLATFORM=ia32|PLATFORM=amd64] CONFIG_ACPI (y)
|
---|
340 |
|
---|
341 | % Hierarchical page tables support
|
---|
342 | ! [PLATFORM=abs32le|PLATFORM=ia32|PLATFORM=amd64|PLATFORM=arm32|PLATFORM=mips32|PLATFORM=ppc32|PLATFORM=riscv64] CONFIG_PAGE_PT (y)
|
---|
343 |
|
---|
344 | % Page hash table support
|
---|
345 | ! [PLATFORM=ia64|PLATFORM=sparc64] CONFIG_PAGE_HT (y)
|
---|
346 |
|
---|
347 | % Software integer division support
|
---|
348 | ! [PLATFORM=abs32le|PLATFORM=ia32|PLATFORM=arm32|PLATFORM=ia64|PLATFORM=mips32|PLATFORM=ppc32] CONFIG_SOFTINT (y)
|
---|
349 |
|
---|
350 | % ASID support
|
---|
351 | ! [PLATFORM=ia64|PLATFORM=mips32|PLATFORM=ppc32|PLATFORM=sparc64] CONFIG_ASID (y)
|
---|
352 |
|
---|
353 | % ASID FIFO support
|
---|
354 | ! [PLATFORM=ia64|PLATFORM=mips32|PLATFORM=ppc32|PLATFORM=sparc64] CONFIG_ASID_FIFO (y)
|
---|
355 |
|
---|
356 | % OpenFirmware tree support
|
---|
357 | ! [PLATFORM=ppc32|PLATFORM=sparc64] CONFIG_OFW_TREE (y)
|
---|
358 |
|
---|
359 | % OpenFirmware PCI bus support
|
---|
360 | ! [PLATFORM=sparc64] CONFIG_OFW_PCI (y)
|
---|
361 |
|
---|
362 | % Multiboot standard support
|
---|
363 | ! [PLATFORM=ia32|PLATFORM=amd64] CONFIG_MULTIBOOT (y)
|
---|
364 |
|
---|
365 | % FPU support
|
---|
366 | ! [PLATFORM=ia32|PLATFORM=amd64|PLATFORM=ia64|PLATFORM=ppc32|PLATFORM=sparc64] CONFIG_FPU (y)
|
---|
367 |
|
---|
368 | ## ARMv7 made FPU hardware compulsory
|
---|
369 | % FPU support
|
---|
370 | ! [PLATFORM=arm32&PROCESSOR_ARCH=armv7_a] CONFIG_FPU (y)
|
---|
371 |
|
---|
372 | % FPU support
|
---|
373 | ! [PLATFORM=arm32&MACHINE=integratorcp] CONFIG_FPU (y)
|
---|
374 |
|
---|
375 |
|
---|
376 | ## Kernel features options
|
---|
377 |
|
---|
378 | % Support for SMP
|
---|
379 | ! [(PLATFORM=ia32&PROCESSOR!=athlon_xp)|PLATFORM=amd64|PLATFORM=sparc64|PLATFORM=ia64|(PLATFORM=mips32&MACHINE=msim)|PLATFORM=abs32le] CONFIG_SMP (y/n)
|
---|
380 |
|
---|
381 | % Debug build
|
---|
382 | ! CONFIG_DEBUG (y/n)
|
---|
383 |
|
---|
384 | % Sanitize undefined behavior (userspace)
|
---|
385 | ! CONFIG_UBSAN (n/y)
|
---|
386 |
|
---|
387 | % Sanitize undefined behavior (kernel)
|
---|
388 | ! CONFIG_UBSAN_KERNEL (n/y)
|
---|
389 |
|
---|
390 | % Track owner for futexes in userspace.
|
---|
391 | ! CONFIG_DEBUG_FUTEX (y/n)
|
---|
392 |
|
---|
393 | % Deadlock detection support for spinlocks
|
---|
394 | ! [CONFIG_DEBUG=y&CONFIG_SMP=y] CONFIG_DEBUG_SPINLOCK (y/n)
|
---|
395 |
|
---|
396 | % Lazy FPU context switching
|
---|
397 | ! [CONFIG_FPU=y] CONFIG_FPU_LAZY (y/n)
|
---|
398 |
|
---|
399 | % Use VHPT
|
---|
400 | ! [PLATFORM=ia64] CONFIG_VHPT (n/y)
|
---|
401 |
|
---|
402 | % Use TSB
|
---|
403 | ! [PLATFORM=sparc64] CONFIG_TSB (y/n)
|
---|
404 |
|
---|
405 | % IO SAPIC on default address support
|
---|
406 | ! [PLATFORM=ia64&MACHINE!=ski] CONFIG_IOSAPIC (y/n)
|
---|
407 |
|
---|
408 | % Virtually indexed D-cache support
|
---|
409 | ! [PLATFORM=sparc64] CONFIG_VIRT_IDX_DCACHE (y/n)
|
---|
410 |
|
---|
411 | % Support for userspace debuggers
|
---|
412 | ! CONFIG_UDEBUG (y/n)
|
---|
413 |
|
---|
414 | % Kernel console support
|
---|
415 | ! CONFIG_KCONSOLE (y/n)
|
---|
416 |
|
---|
417 | % Kernel symbol information
|
---|
418 | ! CONFIG_SYMTAB (y/n)
|
---|
419 |
|
---|
420 | % Detailed kernel logging
|
---|
421 | ! CONFIG_LOG (n/y)
|
---|
422 |
|
---|
423 | % Kernel function tracing
|
---|
424 | ! CONFIG_TRACE (n/y)
|
---|
425 |
|
---|
426 | % Compile kernel tests
|
---|
427 | ! CONFIG_TEST (y/n)
|
---|
428 |
|
---|
429 | % Use link-time optimization
|
---|
430 | ! [COMPILER=gcc_cross] CONFIG_LTO (n/y)
|
---|
431 |
|
---|
432 | % Compress init data
|
---|
433 | ! CONFIG_COMPRESSED_INIT (y/n)
|
---|
434 |
|
---|
435 | ## User space features options
|
---|
436 |
|
---|
437 | ## Hardware support
|
---|
438 |
|
---|
439 | % Input device class
|
---|
440 | @ "generic" Keyboard or serial line
|
---|
441 | ! [PLATFORM=arm32&MACHINE=integratorcp] CONFIG_HID_IN (choice)
|
---|
442 |
|
---|
443 | % Input device class
|
---|
444 | @ "generic" Keyboard or serial line
|
---|
445 | @ "none" No input device
|
---|
446 | ! [PLATFORM=ia32|PLATFORM=amd64|PLATFORM=mips32|PLATFORM=ppc32|PLATFORM=riscv64|PLATFORM=sparc64] CONFIG_HID_IN (choice)
|
---|
447 |
|
---|
448 | % Input device class
|
---|
449 | @ "generic" Keyboard or serial line
|
---|
450 | @ "keyboard" Keyboard
|
---|
451 | @ "serial" Serial line
|
---|
452 | @ "none" No input device
|
---|
453 | ! [PLATFORM=ia64&MACHINE=i460GX] CONFIG_HID_IN (choice)
|
---|
454 |
|
---|
455 | % Output device class
|
---|
456 | @ "generic" Monitor or serial line
|
---|
457 | ! [PLATFORM=arm32&(MACHINE=gta02|MACHINE=integratorcp|MACHINE=beagleboardxm|MACHINE=beaglebone|MACHINE=raspberrypi)] CONFIG_HID_OUT (choice)
|
---|
458 |
|
---|
459 | % Output device class
|
---|
460 | @ "generic" Monitor or serial line
|
---|
461 | @ "none" No output device
|
---|
462 | ! [PLATFORM=ia32|PLATFORM=amd64|PLATFORM=sparc64|PLATFORM=ppc32|(PLATFORM=ia64&MACHINE=i460GX)|(PLATFORM=mips32&(MACHINE=msim|MACHINE=bmalta|MACHINE=lmalta))|PLATFORM=riscv64] CONFIG_HID_OUT (choice)
|
---|
463 |
|
---|
464 | % PC keyboard support
|
---|
465 | ! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&(PLATFORM=ia32|PLATFORM=amd64)] CONFIG_PC_KBD (y/n)
|
---|
466 |
|
---|
467 | % PC keyboard support
|
---|
468 | ! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&PLATFORM=ia64&MACHINE=i460GX] CONFIG_PC_KBD (y/n)
|
---|
469 |
|
---|
470 | % PC keyboard support
|
---|
471 | ! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&PLATFORM=arm32&MACHINE=integratorcp] CONFIG_AT_KBD (y/n)
|
---|
472 |
|
---|
473 | % Support for msim keyboard
|
---|
474 | ! [CONFIG_HID_IN=generic&MACHINE=msim] CONFIG_MSIM_KBD (y/n)
|
---|
475 |
|
---|
476 | % Support for msim printer
|
---|
477 | ! [(CONFIG_HID_OUT=generic|CONFIG_HID_OUT=serial)&MACHINE=msim] CONFIG_MSIM_PRN (y/n)
|
---|
478 |
|
---|
479 | % Support for VIA CUDA controller
|
---|
480 | ! [CONFIG_HID_IN=generic&PLATFORM=ppc32] CONFIG_VIA_CUDA (y/n)
|
---|
481 |
|
---|
482 | % Support for NS16550 controller
|
---|
483 | ! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&PLATFORM=sparc64&MACHINE=generic] CONFIG_NS16550 (y/n)
|
---|
484 |
|
---|
485 | % Support for NS16550 controller
|
---|
486 | ! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=serial)&PLATFORM=ia64&MACHINE=i460GX] CONFIG_NS16550 (y/n)
|
---|
487 |
|
---|
488 | % Support for PL011 UART
|
---|
489 | ! [(CONFIG_HID_OUT=generic|CONFIG_HID_OUT=serial)&PLATFORM=arm32&(MACHINE=integratorcp|MACHINE=raspberrypi)] CONFIG_PL011_UART (y/n)
|
---|
490 |
|
---|
491 | % Support for NS16550 controller (kernel console)
|
---|
492 | ! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=serial|CONFIG_HID_OUT=generic|CONFIG_HID_OUT=serial)&(PLATFORM=ia32|PLATFORM=amd64)] CONFIG_NS16550_KCON (y/n)
|
---|
493 |
|
---|
494 | % Use NS16550 controller as serial input (kernel console)
|
---|
495 | ! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=serial)&(PLATFORM=ia32|PLATFORM=amd64)&CONFIG_NS16550_KCON=y] CONFIG_NS16550 (y)
|
---|
496 |
|
---|
497 | % Use NS16550 controller as dummy serial output (kernel console)
|
---|
498 | ! [(CONFIG_HID_OUT=generic|CONFIG_HID_OUT=serial)&(PLATFORM=ia32|PLATFORM=amd64)&CONFIG_NS16550_KCON=y] CONFIG_NS16550_OUT (y)
|
---|
499 |
|
---|
500 | % Support for Samsung S3C24XX on-chip UART
|
---|
501 | ! [(CONFIG_HID_OUT=generic|CONFIG_HID_OUT=serial)&PLATFORM=arm32&MACHINE=gta02] CONFIG_S3C24XX_UART (y/n)
|
---|
502 |
|
---|
503 | % Support for Samsung S3C24XX on-chip interrupt controller
|
---|
504 | ! [PLATFORM=arm32&MACHINE=gta02] CONFIG_S3C24XX_IRQC (y)
|
---|
505 |
|
---|
506 | % Support for TI AM335x timers support
|
---|
507 | ! [PLATFORM=arm32&MACHINE=beaglebone] CONFIG_AM335X_TIMERS (y)
|
---|
508 |
|
---|
509 | % Support for OMAP on-chip UART
|
---|
510 | ! [(CONFIG_HID_OUT=generic|CONFIG_HID_OUT=serial)&PLATFORM=arm32&(MACHINE=beagleboardxm|MACHINE=beaglebone)] CONFIG_OMAP_UART (y/n)
|
---|
511 |
|
---|
512 | % Support for BCM2835 mailbox
|
---|
513 | ! [PLATFORM=arm32&MACHINE=raspberrypi] CONFIG_BCM2835_MAILBOX (y/n)
|
---|
514 |
|
---|
515 | % Support for i8042 controller
|
---|
516 | ! [CONFIG_PC_KBD=y] CONFIG_I8042 (y)
|
---|
517 |
|
---|
518 | % Support for pl050 controller
|
---|
519 | ! [CONFIG_HID_IN=generic&PLATFORM=arm32&MACHINE=integratorcp] CONFIG_PL050 (y)
|
---|
520 |
|
---|
521 | % Sun keyboard support
|
---|
522 | ! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&PLATFORM=sparc64&MACHINE=generic&CONFIG_NS16550=y] CONFIG_SUN_KBD (y)
|
---|
523 |
|
---|
524 | % Macintosh ADB keyboard support
|
---|
525 | ! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&PLATFORM=ppc32&(CONFIG_VIA_CUDA=y)] CONFIG_MAC_KBD (y)
|
---|
526 |
|
---|
527 | % Dummy serial line input
|
---|
528 | ! [CONFIG_MSIM_KBD=y|CONFIG_ARM_KBD=y] CONFIG_DSRLNIN (y)
|
---|
529 |
|
---|
530 | % Dummy serial line output
|
---|
531 | ! [CONFIG_MSIM_PRN=y|CONFIG_ARM_PRN=y] CONFIG_DSRLNOUT (y)
|
---|
532 |
|
---|
533 | % Serial line input module
|
---|
534 | ! [CONFIG_DSRLNIN=y|(PLATFORM=arm32&MACHINE=gta02)|(PLATFORM=arm32&MACHINE=integratorcp&CONFIG_PL011_UART=y)|(PLATFORM=arm32&MACHINE=beaglebone&CONFIG_OMAP_UART=y)|(PLATFORM=arm32&MACHINE=beagleboardxm&CONFIG_OMAP_UART=y)|(PLATFORM=ia64&MACHINE=i460GX&CONFIG_NS16550=y)|(PLATFORM=ia64&MACHINE=ski)|(PLATFORM=sparc64&PROCESSOR=sun4v)|(PLATFORM=arm32&MACHINE=raspberrypi&CONFIG_PL011_UART=y)|(PLATFORM=ia32&CONFIG_NS16550=y)|(PLATFORM=amd64&CONFIG_NS16550=y)] CONFIG_SRLN (y)
|
---|
535 |
|
---|
536 | % EGA support
|
---|
537 | ! [CONFIG_HID_OUT=generic&(PLATFORM=ia32|PLATFORM=amd64)] CONFIG_EGA (y/n)
|
---|
538 |
|
---|
539 | % EGA support
|
---|
540 | ! [CONFIG_HID_OUT=generic&PLATFORM=ia64&MACHINE=i460GX] CONFIG_EGA (y/n)
|
---|
541 |
|
---|
542 | % Framebuffer support
|
---|
543 | ! [CONFIG_HID_OUT=generic&(PLATFORM=ia32|PLATFORM=amd64|PLATFORM=ppc32)] CONFIG_FB (y/n)
|
---|
544 |
|
---|
545 | % Framebuffer support
|
---|
546 | ! [(CONFIG_HID_OUT=generic|CONFIG_HID_OUT=monitor)&PLATFORM=arm32] CONFIG_FB (y/n)
|
---|
547 |
|
---|
548 | % Framebuffer support
|
---|
549 | ! [(CONFIG_HID_OUT=generic|CONFIG_HID_OUT=monitor)&PLATFORM=sparc64&MACHINE=generic] CONFIG_FB (y/n)
|
---|
550 |
|
---|
551 | % Default framebuffer mode
|
---|
552 | @ "640x480"
|
---|
553 | @ "800x600"
|
---|
554 | @ "1024x768"
|
---|
555 | @ "1152x720"
|
---|
556 | @ "1152x864"
|
---|
557 | @ "1280x720"
|
---|
558 | @ "1280x800"
|
---|
559 | @ "1280x960"
|
---|
560 | @ "1280x1024"
|
---|
561 | @ "1400x1050"
|
---|
562 | @ "1440x900"
|
---|
563 | @ "1440x1050"
|
---|
564 | @ "1600x1200"
|
---|
565 | @ "1920x1080"
|
---|
566 | @ "1920x1200"
|
---|
567 | ! [(PLATFORM=ia32|PLATFORM=amd64|MACHINE=beagleboardxm)&CONFIG_HID_OUT!=none&CONFIG_FB=y] CONFIG_BFB_MODE (choice)
|
---|
568 |
|
---|
569 | % Default framebuffer depth
|
---|
570 | @ "8"
|
---|
571 | @ "16"
|
---|
572 | @ "24"
|
---|
573 | @ "32"
|
---|
574 | ! [(PLATFORM=ia32|PLATFORM=amd64|MACHINE=beagleboardxm)&CONFIG_HID_OUT!=none&CONFIG_FB=y] CONFIG_BFB_BPP (choice)
|
---|
575 |
|
---|
576 | % Start AP processors by the loader
|
---|
577 | ! [PLATFORM=sparc64&CONFIG_SMP=y] CONFIG_AP (y/n)
|
---|
578 |
|
---|
579 | % Dynamic linking support
|
---|
580 | ! [PLATFORM=amd64|PLATFORM=arm32|PLATFORM=ia32|PLATFORM=ppc32|PLATFORM=sparc64] CONFIG_RTLD (y/n)
|
---|
581 | ! [PLATFORM=abs32le|PLATFORM=ia64|PLATFORM=mips32|PLATFORM=riscv64] CONFIG_RTLD (n)
|
---|
582 |
|
---|
583 | % Build shared libraries
|
---|
584 | ! [CONFIG_RTLD=y] CONFIG_BUILD_SHARED_LIBS (n/y)
|
---|
585 | ! [CONFIG_RTLD=n] CONFIG_BUILD_SHARED_LIBS (n)
|
---|
586 |
|
---|
587 | % Link against shared libraries
|
---|
588 | ! [CONFIG_BUILD_SHARED_LIBS=y] CONFIG_USE_SHARED_LIBS (n/y)
|
---|
589 | ! [CONFIG_BUILD_SHARED_LIBS=n] CONFIG_USE_SHARED_LIBS (n)
|
---|
590 |
|
---|
591 | % Launch (devman) test drivers
|
---|
592 | ! [CONFIG_DEBUG=y] CONFIG_TEST_DRIVERS (n/y)
|
---|
593 |
|
---|
594 | % Write core files
|
---|
595 | ! CONFIG_WRITE_CORE_FILES (n/y)
|
---|
596 |
|
---|
597 | % Include userspace unit tests (PCUT)
|
---|
598 | ! CONFIG_PCUT_TESTS (n/y)
|
---|
599 |
|
---|
600 | % Include PCUT self-tests
|
---|
601 | ! CONFIG_PCUT_SELF_TESTS (n/y)
|
---|
602 |
|
---|
603 | % Include development files (headers, libraries)
|
---|
604 | ! CONFIG_DEVEL_FILES (n/y)
|
---|
605 |
|
---|
606 | % Strip binaries
|
---|
607 | ! CONFIG_STRIP_BINARIES (n/y)
|
---|
608 |
|
---|
609 | % Strip revision information (helpful when comparing outputs)
|
---|
610 | ! CONFIG_STRIP_REVISION_INFO (n/y)
|
---|
611 |
|
---|
612 | % Optimization level
|
---|
613 | @ "3" Level 3 (recommended).
|
---|
614 | @ "2" Level 2.
|
---|
615 | @ "1" Level 1.
|
---|
616 | @ "0" Disable optimizations.
|
---|
617 | @ "s" Optimize for size.
|
---|
618 | @ "g" Enable only optimizations that don't harm debugging.
|
---|
619 | @ "fast" Level 3 + aggressive optimizations that can affect adherence to standards.
|
---|
620 | ! OPTIMIZATION (choice)
|
---|
621 |
|
---|
622 | % Barebone build with essential binaries only
|
---|
623 | ! CONFIG_BAREBONE (n/y)
|
---|
624 |
|
---|
625 | % Line debugging information
|
---|
626 | ! [CONFIG_STRIP_BINARIES!=y] CONFIG_LINE_DEBUG (n/y)
|
---|
627 |
|
---|
628 | # USB settings
|
---|
629 |
|
---|
630 | % Start virtual USB host controller
|
---|
631 | ! CONFIG_RUN_VIRTUAL_USB_HC (n/y)
|
---|
632 |
|
---|
633 | % OHCI root hub port power switching
|
---|
634 | @ "no" All root hub ports are always powered.
|
---|
635 | @ "ganged" Root hub ports are all powered or all off.
|
---|
636 | @ "per_port" Powered status of every root hub port is independent.
|
---|
637 | ! [PLATFORM=ia32|PLATFORM=amd64|PLATFORM=ppc32] OHCI_POWER_SWITCH (choice)
|
---|
638 |
|
---|
639 | % GRUB boot loader architecture
|
---|
640 | @ "pc" GRUB for PC
|
---|
641 | @ "efi" GRUB for UEFI
|
---|
642 | ! [PLATFORM=ia32|PLATFORM=amd64] GRUB_ARCH (choice)
|
---|
643 |
|
---|
644 | % uImage OS type
|
---|
645 | @ "2" NetBSD stage 2 boot loader
|
---|
646 | ! [PLATFORM=arm32&(MACHINE=beagleboardxm|MACHINE=beaglebone)] UIMAGE_OS (choice)
|
---|
647 |
|
---|
648 | % uImage OS type
|
---|
649 | @ "5" Linux kernel
|
---|
650 | ! [PLATFORM=arm32&MACHINE!=beagleboardxm&MACHINE!=beaglebone] UIMAGE_OS (choice)
|
---|