2
# Copyright (c) 2006 Ondrej Palkovsky
3
# Copyright (c) 2009 Martin Decky
6
# Redistribution and use in source and binary forms, with or without
7
# modification, are permitted provided that the following conditions
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.
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.
30
## General platform options
33
@ "amd64" AMD64/Intel EM64T (PC)
35
@ "ia32" Intel IA-32 (PC)
37
@ "mips32" MIPS 32-bit
38
@ "ppc32" PowerPC 32-bit (iMac G4)
39
@ "sparc64" Sun UltraSPARC 64-bit
44
@ "bgxemul" GXEmul big endian
45
@ "lgxemul" GXEmul little endian
46
! [PLATFORM=mips32] MACHINE (choice)
49
@ "i460GX" i460GX chipset machine
50
@ "ski" Ski ia64 simulator
51
! [PLATFORM=ia64] MACHINE (choice)
54
@ "generic" Generic Sun workstation or server
55
@ "serengeti" Serengeti system
56
! [PLATFORM=sparc64] MACHINE (choice)
59
@ "testarm" GXEmul Testarm
60
@ "integratorcp" Integratorcp
61
! [PLATFORM=arm32] MACHINE (choice)
64
@ "pentium4" Pentium 4
65
@ "pentium3" Pentium 3
66
@ "core" Core Solo/Duo
67
@ "athlon_xp" Athlon XP
68
@ "athlon_mp" Athlon MP
69
! [PLATFORM=ia32] PROCESSOR (choice)
73
! [PLATFORM=amd64] PROCESSOR (choice)
76
@ "us" UltraSPARC I-II subarchitecture
77
@ "us3" UltraSPARC III-IV subarchitecture
78
! [PLATFORM=sparc64&MACHINE=generic] PROCESSOR (choice)
82
! [PLATFORM=sparc64&MACHINE=serengeti] PROCESSOR (choice)
90
## Mapping between platform and kernel architecture
94
! [PLATFORM=amd64] KARCH (choice)
98
! [PLATFORM=arm32] KARCH (choice)
100
% Kernel architecture
102
! [PLATFORM=ia32] KARCH (choice)
104
% Kernel architecture
106
! [PLATFORM=ia32xen] KARCH (choice)
108
% Kernel architecture
110
! [PLATFORM=ia64] KARCH (choice)
112
% Kernel architecture
114
! [PLATFORM=mips32] KARCH (choice)
116
% Kernel architecture
118
! [PLATFORM=ppc32] KARCH (choice)
120
% Kernel architecture
122
! [PLATFORM=ppc64] KARCH (choice)
124
% Kernel architecture
126
! [PLATFORM=sparc64] KARCH (choice)
129
## Mapping between platform and user space architecture
131
% User space architecture
133
! [PLATFORM=amd64] UARCH (choice)
135
% User space architecture
137
! [PLATFORM=arm32] UARCH (choice)
139
% User space architecture
141
! [PLATFORM=ia32|PLATFORM=ia32xen] UARCH (choice)
143
% User space architecture
145
! [PLATFORM=ia64] UARCH (choice)
147
% User space architecture
149
! [PLATFORM=mips32&(MACHINE=msim|MACHINE=lgxemul)] UARCH (choice)
151
% User space architecture
153
! [PLATFORM=mips32&MACHINE=bgxemul] UARCH (choice)
155
% User space architecture
157
! [PLATFORM=ppc32] UARCH (choice)
159
% User space architecture
161
! [PLATFORM=ppc64] UARCH (choice)
163
% User space architecture
165
! [PLATFORM=sparc64] UARCH (choice)
168
## Mapping between platform and boot architecture
172
! [PLATFORM=amd64] BARCH (choice)
176
! [PLATFORM=arm32] BARCH (choice)
180
! [PLATFORM=ia32] BARCH (choice)
184
! [PLATFORM=ia32xen] BARCH (choice)
188
! [PLATFORM=ia64] BARCH (choice)
192
! [PLATFORM=mips32] BARCH (choice)
196
! [PLATFORM=ppc32] BARCH (choice)
200
! [PLATFORM=ppc64] BARCH (choice)
204
! [PLATFORM=sparc64] BARCH (choice)
207
## Mapping between platform and image format
211
! [PLATFORM=mips32&MACHINE=msim] IMAGE (choice)
215
! [PLATFORM=mips32&(MACHINE=bgxemul|MACHINE=lgxemul)] IMAGE (choice)
221
@ "gcc_cross" GCC Cross-compiler
222
@ "gcc_native" GCC Native
223
@ "icc_native" ICC Native
224
@ "suncc_native" Sun Studio C Compiler
225
! [PLATFORM=amd64|PLATFORM=ia32] COMPILER (choice)
228
@ "gcc_cross" GCC Cross-compiler
229
@ "gcc_native" GCC Native
230
@ "icc_native" ICC Native
231
! [PLATFORM=ia64] COMPILER (choice)
234
@ "gcc_cross" GCC Cross-compiler
235
@ "gcc_native" GCC Native
236
@ "suncc_native" Sun Studio C Compiler
237
! [PLATFORM=sparc64] COMPILER (choice)
240
@ "gcc_cross" GCC Cross-compiler
241
@ "gcc_native" GCC Native
242
! [PLATFORM=arm32|PLATFORM=mips32|PLATFORM=ppc32] COMPILER (choice)
245
## Kernel configuration
248
! [PLATFORM=ia32&(PROCESSOR=athlon_xp|PROCESSOR=athlon_mp|PROCESSOR=pentium3)] CONFIG_FENCES_P3 (y)
251
! [PLATFORM=ia32&(PROCESSOR=pentium4|PROCESSOR=core)] CONFIG_FENCES_P4 (y)
254
! [PLATFORM=amd64] CONFIG_FENCES_P4 (y)
257
! [PLATFORM=ia32|PLATFORM=amd64] CONFIG_ACPI (y)
259
% Hierarchical page tables support
260
! [PLATFORM=ia32|PLATFORM=amd64|PLATFORM=arm32|PLATFORM=mips32|PLATFORM=ppc32] CONFIG_PAGE_PT (y)
262
% Page hash table support
263
! [PLATFORM=ia64|PLATFORM=sparc64] CONFIG_PAGE_HT (y)
265
% Software integer division support
266
! [PLATFORM=ia32|PLATFORM=arm32|PLATFORM=ia64|PLATFORM=mips32|PLATFORM=ppc32] CONFIG_SOFTINT (y)
269
! [PLATFORM=ia64|PLATFORM=mips32|PLATFORM=ppc32|PLATFORM=sparc64] CONFIG_ASID (y)
272
! [PLATFORM=ia64|PLATFORM=mips32|PLATFORM=ppc32|PLATFORM=sparc64] CONFIG_ASID_FIFO (y)
274
% OpenFirmware tree support
275
! [PLATFORM=sparc64] CONFIG_OFW_TREE (y)
277
% Multiboot standard support
278
! [PLATFORM=ia32|PLATFORM=amd64] CONFIG_MULTIBOOT (y)
281
! [PLATFORM=ia32|PLATFORM=amd64|PLATFORM=ia64|PLATFORM=sparc64] CONFIG_FPU (y)
284
! [PLATFORM=mips32&(MACHINE=lgxemul|MACHINE=bgxemul)] CONFIG_FPU (y)
287
## Kernel features options
290
! [(PLATFORM=ia32&PROCESSOR!=athlon_xp)|PLATFORM=amd64|PLATFORM=sparc64|PLATFORM=ia64|(PLATFORM=mips32&MACHINE=msim)] CONFIG_SMP (y/n)
295
% Deadlock detection support for spinlocks
296
! [CONFIG_DEBUG=y&CONFIG_SMP=y] CONFIG_DEBUG_SPINLOCK (y/n)
298
% Lazy FPU context switching
299
! [CONFIG_FPU=y] CONFIG_FPU_LAZY (y/n)
302
! [PLATFORM=ia64] CONFIG_VHPT (n/y)
305
! [PLATFORM=sparc64] CONFIG_TSB (y/n)
307
% IO SAPIC on default address support
308
! [PLATFORM=ia64&MACHINE!=ski] CONFIG_IOSAPIC (y/n)
310
% Virtually indexed D-cache support
311
! [PLATFORM=sparc64] CONFIG_VIRT_IDX_DCACHE (y/n)
313
% Support for userspace debuggers
314
! CONFIG_UDEBUG (y/n)
316
% Kernel console support
317
! CONFIG_KCONSOLE (y/n)
319
% Kernel symbol information
320
! CONFIG_SYMTAB (y/n)
322
% Detailed kernel logging
325
% Compile kernel tests
332
@ "generic" Keyboard or serial line
333
! [PLATFORM=arm32&MACHINE=integratorcp] CONFIG_HID_IN (choice)
336
@ "generic" Keyboard or serial line
337
@ "none" No input device
338
! [PLATFORM=ia32|(PLATFORM=arm32&MACHINE=testarm)|PLATFORM=amd64|PLATFORM=mips32|PLATFORM=ppc32|PLATFORM=sparc64] CONFIG_HID_IN (choice)
341
@ "generic" Keyboard or serial line
342
@ "keyboard" Keyboard
343
@ "serial" Serial line
344
@ "none" No input device
345
! [PLATFORM=ia64&MACHINE=i460GX] CONFIG_HID_IN (choice)
347
% Output device class
348
@ "generic" Monitor or serial line
349
! [PLATFORM=arm32&MACHINE=integratorcp] CONFIG_HID_OUT (choice)
351
% Output device class
352
@ "generic" Monitor or serial line
353
@ "none" No output device
354
! [PLATFORM=ia32|PLATFORM=amd64|PLATFORM=sparc64|PLATFORM=ppc32|(PLATFORM=ia64&MACHINE=i460GX)|(PLATFORM=mips32&MACHINE=msim)] CONFIG_HID_OUT (choice)
356
% Output device class
357
@ "generic" Monitor or serial line
359
@ "serial" Serial line
360
@ "none" No output device
361
! [PLATFORM=mips32&(MACHINE=bgxemul|MACHINE=lgxemul)] CONFIG_HID_OUT (choice)
363
% Output device class
364
@ "generic" Monitor or serial line
366
@ "serial" Serial line
367
@ "none" No output device
368
! [PLATFORM=arm32&MACHINE=testarm] CONFIG_HID_OUT (choice)
370
% PC keyboard support
371
! [CONFIG_HID_IN=generic&(PLATFORM=ia32|PLATFORM=amd64)] CONFIG_PC_KBD (y/n)
373
% PC keyboard support
374
! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&PLATFORM=ia64&MACHINE=i460GX] CONFIG_PC_KBD (y/n)
376
% Support for msim/GXemul keyboard
377
! [CONFIG_HID_IN=generic&PLATFORM=mips32] CONFIG_MIPS_KBD (y/n)
379
% Support for msim/GXemul printer
380
! [(CONFIG_HID_OUT=generic|CONFIG_HID_OUT=serial)&PLATFORM=mips32] CONFIG_MIPS_PRN (y/n)
382
% Support for GXemul keyboard
383
! [CONFIG_HID_IN=generic&PLATFORM=arm32&MACHINE=testarm] CONFIG_ARM_KBD (y/n)
385
% Support for GXemul printer
386
! [(CONFIG_HID_OUT=generic|CONFIG_HID_OUT=serial)&PLATFORM=arm32&MACHINE=testarm] CONFIG_ARM_PRN (y/n)
388
% Support for VIA CUDA controller
389
! [CONFIG_HID_IN=generic&PLATFORM=ppc32] CONFIG_VIA_CUDA (y/n)
391
% Support for NS16550 controller
392
! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&PLATFORM=sparc64&MACHINE=generic] CONFIG_NS16550 (y/n)
394
% Support for NS16550 controller
395
! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=serial)&PLATFORM=ia64&MACHINE=i460GX] CONFIG_NS16550 (y/n)
397
% Support for Z8530 controller
398
! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&PLATFORM=sparc64&MACHINE=generic] CONFIG_Z8530 (y/n)
400
% Support for Serengeti console
401
! [CONFIG_HID_OUT=generic&PLATFORM=sparc64&MACHINE=serengeti] CONFIG_SGCN_PRN (y/n)
403
% Support for Serengeti keyboard
404
! [CONFIG_HID_IN=generic&PLATFORM=sparc64&MACHINE=serengeti] CONFIG_SGCN_KBD (y/n)
406
% Support for i8042 controller
407
! [CONFIG_PC_KBD=y] CONFIG_I8042 (y)
409
% Support for pl050 controller
410
! [CONFIG_HID_IN=generic&PLATFORM=arm32&MACHINE=integratorcp] CONFIG_PL050 (y)
412
% Sun keyboard support
413
! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&PLATFORM=sparc64&MACHINE=generic&(CONFIG_NS16550=y|CONFIG_Z8530=y)] CONFIG_SUN_KBD (y)
415
% Macintosh ADB keyboard support
416
! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&PLATFORM=ppc32&(CONFIG_VIA_CUDA=y)] CONFIG_MAC_KBD (y)
418
% Dummy serial line input
419
! [CONFIG_MIPS_KBD=y|CONFIG_ARM_KBD=y] CONFIG_DSRLNIN (y)
421
% Dummy serial line output
422
! [CONFIG_MIPS_PRN=y|CONFIG_ARM_PRN=y] CONFIG_DSRLNOUT (y)
424
% Serial line input module
425
! [CONFIG_DSRLNIN=y|(PLATFORM=ia64&MACHINE=i460GX&CONFIG_NS16550=y)|(PLATFORM=ia64&MACHINE=ski)|(PLATFORM=sparc64&MACHINE=serengeti&CONFIG_SGCN_KBD=y)] CONFIG_SRLN (y)
428
! [CONFIG_HID_OUT=generic&(PLATFORM=ia32|PLATFORM=amd64)] CONFIG_EGA (y/n)
431
! [CONFIG_HID_OUT=generic&PLATFORM=ia64&MACHINE=i460GX] CONFIG_EGA (y/n)
433
% Framebuffer support
434
! [CONFIG_HID_OUT=generic&(PLATFORM=ia32|PLATFORM=amd64|PLATFORM=ppc32)] CONFIG_FB (y/n)
436
% Framebuffer support
437
! [(CONFIG_HID_OUT=generic|CONFIG_HID_OUT=monitor)&PLATFORM=mips32&(MACHINE=lgxemul|MACHINE=bgxemul)] CONFIG_FB (y/n)
439
% Framebuffer support
440
! [(CONFIG_HID_OUT=generic|CONFIG_HID_OUT=monitor)&PLATFORM=arm32] CONFIG_FB (y/n)
442
% Framebuffer support
443
! [(CONFIG_HID_OUT=generic|CONFIG_HID_OUT=monitor)&PLATFORM=sparc64&MACHINE=generic] CONFIG_FB (y/n)
445
% Default framebuffer mode
459
! [(PLATFORM=ia32|PLATFORM=amd64)&CONFIG_HID_OUT!=none&CONFIG_FB=y] CONFIG_VESA_MODE (choice)
461
% Default framebuffer depth
465
! [(PLATFORM=ia32|PLATFORM=amd64)&CONFIG_HID_OUT!=none&CONFIG_FB=y] CONFIG_VESA_BPP (choice)
467
% Start AP processors by the loader
468
! [PLATFORM=sparc64&CONFIG_SMP=y] CONFIG_AP (y/n)
470
% Use Block Address Translation by the loader
471
! [PLATFORM=ppc32] CONFIG_BAT (y/n)
473
% Preserve A.OUT header in isofs.b
474
! [PLATFORM=sparc64&MACHINE=generic] CONFIG_AOUT_ISOFS_B (y)
477
! [PLATFORM=sparc64] CONFIG_RD_EXTERNAL (y/n)
479
% Load disk drivers on startup
480
! CONFIG_START_BD (n/y)
482
% Mount /data on startup
483
! [CONFIG_START_BD=y] CONFIG_MOUNT_DATA (n/y)