Subversion Repositories HelenOS

Rev

Rev 4082 | Rev 4115 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2830 jermar 1
#
3803 decky 2
# Copyright (c) 2006 Ondrej Palkovsky
3884 decky 3
# Copyright (c) 2009 Martin Decky
2830 jermar 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
 
3803 decky 30
## General platform options
31
 
32
% Platform
1802 decky 33
@ "amd64" AMD64/Intel EM64T (PC)
2128 jermar 34
@ "arm32" ARM 32-bit
1802 decky 35
@ "ia32" Intel IA-32 (PC)
2064 vana 36
@ "ia64" Intel IA-64
2088 decky 37
@ "mips32" MIPS 32-bit
1802 decky 38
@ "ppc32" PowerPC 32-bit (iMac G4)
39
@ "sparc64" Sun UltraSPARC 64-bit
40
! PLATFORM (choice)
41
 
3803 decky 42
% Machine type
2088 decky 43
@ "msim" MSIM
44
@ "bgxemul" GXEmul big endian
3028 decky 45
@ "lgxemul" GXEmul little endian
2088 decky 46
! [PLATFORM=mips32] MACHINE (choice)
47
 
3803 decky 48
% Machine type
3917 decky 49
@ "gxemul" GXEmul
50
! [PLATFORM=arm32] MACHINE (choice)
51
 
52
% Machine type
3696 vana 53
@ "i460GX" i460GX chipset machine
2511 vana 54
@ "ski" Ski ia64 simulator
55
! [PLATFORM=ia64] MACHINE (choice)
56
 
4047 jermar 57
% Machine type
58
@ "generic" Generic Sun workstation or server
59
@ "serengeti" Serengeti system
60
! [PLATFORM=sparc64] MACHINE (choice)
61
 
3803 decky 62
% CPU type
63
@ "pentium4" Pentium 4
64
@ "pentium3" Pentium 3
65
@ "core" Core Solo/Duo
3936 decky 66
@ "athlon_xp" Athlon XP
67
@ "athlon_mp" Athlon MP
4050 jermar 68
! [PLATFORM=ia32] PROCESSOR (choice)
3803 decky 69
 
70
% CPU type
71
@ "opteron" Opteron
4047 jermar 72
! [PLATFORM=amd64] PROCESSOR (choice)
3803 decky 73
 
74
% CPU type
75
@ "us" UltraSPARC I-II subarchitecture
76
@ "us3" UltraSPARC III-IV subarchitecture
4047 jermar 77
! [PLATFORM=sparc64&MACHINE=generic] PROCESSOR (choice)
3803 decky 78
 
4047 jermar 79
% CPU type
80
@ "us3"
81
! [PLATFORM=sparc64&MACHINE=serengeti] PROCESSOR (choice)
82
 
3803 decky 83
% Ramdisk format
84
@ "tmpfs" TMPFS image
85
@ "fat" FAT16 image
86
! RDFMT (choice)
87
 
88
 
3884 decky 89
## Mapping between platform and kernel architecture
90
 
91
% Kernel architecture
92
@ "amd64"
93
! [PLATFORM=amd64] KARCH (choice)
94
 
95
% Kernel architecture
96
@ "arm32"
97
! [PLATFORM=arm32] KARCH (choice)
98
 
99
% Kernel architecture
100
@ "ia32"
101
! [PLATFORM=ia32] KARCH (choice)
102
 
103
% Kernel architecture
104
@ "ia32xen"
105
! [PLATFORM=ia32xen] KARCH (choice)
106
 
107
% Kernel architecture
108
@ "ia64"
109
! [PLATFORM=ia64] KARCH (choice)
110
 
111
% Kernel architecture
112
@ "mips32"
113
! [PLATFORM=mips32] KARCH (choice)
114
 
115
% Kernel architecture
116
@ "ppc32"
117
! [PLATFORM=ppc32] KARCH (choice)
118
 
119
% Kernel architecture
120
@ "ppc64"
121
! [PLATFORM=ppc64] KARCH (choice)
122
 
123
% Kernel architecture
124
@ "sparc64"
125
! [PLATFORM=sparc64] KARCH (choice)
126
 
127
 
128
## Mapping between platform and user space architecture
129
 
130
% User space architecture
131
@ "amd64"
132
! [PLATFORM=amd64] UARCH (choice)
133
 
134
% User space architecture
135
@ "arm32"
136
! [PLATFORM=arm32] UARCH (choice)
137
 
138
% User space architecture
139
@ "ia32"
140
! [PLATFORM=ia32|PLATFORM=ia32xen] UARCH (choice)
141
 
142
% User space architecture
143
@ "ia64"
144
! [PLATFORM=ia64] UARCH (choice)
145
 
146
% User space architecture
147
@ "mips32"
4082 decky 148
! [PLATFORM=mips32&(MACHINE=msim|MACHINE=lgxemul)] UARCH (choice)
3884 decky 149
 
150
% User space architecture
151
@ "mips32eb"
3915 decky 152
! [PLATFORM=mips32&MACHINE=bgxemul] UARCH (choice)
3884 decky 153
 
154
% User space architecture
155
@ "ppc32"
156
! [PLATFORM=ppc32] UARCH (choice)
157
 
158
% User space architecture
159
@ "ppc64"
160
! [PLATFORM=ppc64] UARCH (choice)
161
 
162
% User space architecture
163
@ "sparc64"
164
! [PLATFORM=sparc64] UARCH (choice)
165
 
166
 
167
## Mapping between platform and boot architecture
168
 
169
% Boot architecture
170
@ "amd64"
171
! [PLATFORM=amd64] BARCH (choice)
172
 
173
% Boot architecture
174
@ "arm32"
175
! [PLATFORM=arm32] BARCH (choice)
176
 
177
% Boot architecture
178
@ "ia32"
179
! [PLATFORM=ia32] BARCH (choice)
180
 
181
% Boot architecture
182
@ "ia32xen"
183
! [PLATFORM=ia32xen] BARCH (choice)
184
 
185
% Boot architecture
186
@ "ia64"
187
! [PLATFORM=ia64] BARCH (choice)
188
 
189
% Boot architecture
190
@ "mips32"
191
! [PLATFORM=mips32] BARCH (choice)
192
 
193
% Boot architecture
194
@ "ppc32"
195
! [PLATFORM=ppc32] BARCH (choice)
196
 
197
% Boot architecture
198
@ "ppc64"
199
! [PLATFORM=ppc64] BARCH (choice)
200
 
201
% Boot architecture
202
@ "sparc64"
203
! [PLATFORM=sparc64] BARCH (choice)
204
 
205
 
206
## Mapping between platform and image format
207
 
208
% Image format
209
@ "binary"
210
! [PLATFORM=mips32&MACHINE=msim] IMAGE (choice)
211
 
212
% Image format
213
@ "ecoff"
4082 decky 214
! [PLATFORM=mips32&(MACHINE=bgxemul|MACHINE=lgxemul)] IMAGE (choice)
3884 decky 215
 
216
 
3803 decky 217
## Compiler options
218
 
219
% Compiler
2437 decky 220
@ "gcc_cross" GCC Cross-compiler
221
@ "gcc_native" GCC Native
222
@ "icc_native" ICC Native
2443 jermar 223
@ "suncc_native" Sun Studio C Compiler
4050 jermar 224
! [PLATFORM=amd64|PLATFORM=ia32] COMPILER (choice)
1802 decky 225
 
3803 decky 226
% Compiler
2442 jermar 227
@ "gcc_cross" GCC Cross-compiler
228
@ "gcc_native" GCC Native
229
@ "icc_native" ICC Native
4050 jermar 230
! [PLATFORM=ia64] COMPILER (choice)
2442 jermar 231
 
3803 decky 232
% Compiler
2442 jermar 233
@ "gcc_cross" GCC Cross-compiler
234
@ "gcc_native" GCC Native
2443 jermar 235
@ "suncc_native" Sun Studio C Compiler
4050 jermar 236
! [PLATFORM=sparc64] COMPILER (choice)
2442 jermar 237
 
3803 decky 238
% Compiler
2442 jermar 239
@ "gcc_cross" GCC Cross-compiler
240
@ "gcc_native" GCC Native
4050 jermar 241
! [PLATFORM=arm32|PLATFORM=mips32|PLATFORM=ppc32] COMPILER (choice)
2442 jermar 242
 
3803 decky 243
 
3884 decky 244
## Kernel configuration
245
 
246
% Fences
4047 jermar 247
! [PLATFORM=ia32&(PROCESSOR=athlon_xp|PROCESSOR=athlon_mp|PROCESSOR=pentium3)] CONFIG_FENCES_P3 (y)
3884 decky 248
 
249
% Fences
4047 jermar 250
! [PLATFORM=ia32&(PROCESSOR=pentium4|PROCESSOR=core)] CONFIG_FENCES_P4 (y)
3884 decky 251
 
3915 decky 252
% Fences
253
! [PLATFORM=amd64] CONFIG_FENCES_P4 (y)
254
 
3884 decky 255
% ACPI support
256
! [PLATFORM=ia32|PLATFORM=amd64] CONFIG_ACPI (y)
257
 
258
% Hierarchical page tables support
259
! [PLATFORM=ia32|PLATFORM=amd64|PLATFORM=arm32|PLATFORM=mips32|PLATFORM=ppc32] CONFIG_PAGE_PT (y)
260
 
261
% Page hash table support
262
! [PLATFORM=ia64|PLATFORM=sparc64] CONFIG_PAGE_HT (y)
263
 
264
% Software integer division support
265
! [PLATFORM=ia32|PLATFORM=arm32|PLATFORM=ia64|PLATFORM=mips32|PLATFORM=ppc32] CONFIG_SOFTINT (y)
266
 
267
% ASID support
268
! [PLATFORM=ia64|PLATFORM=mips32|PLATFORM=ppc32|PLATFORM=sparc64] CONFIG_ASID (y)
269
 
270
% ASID FIFO support
271
! [PLATFORM=ia64|PLATFORM=mips32|PLATFORM=ppc32|PLATFORM=sparc64] CONFIG_ASID_FIFO (y)
272
 
273
% OpenFirmware tree support
274
! [PLATFORM=sparc64] CONFIG_OFW_TREE (y)
275
 
4022 svoboda 276
% Multiboot standard support
277
! [PLATFORM=ia32|PLATFORM=amd64] CONFIG_MULTIBOOT (y)
278
 
3884 decky 279
% FPU support
3915 decky 280
! [PLATFORM=ia32|PLATFORM=amd64|PLATFORM=ia64|PLATFORM=sparc64] CONFIG_FPU (y)
3884 decky 281
 
3915 decky 282
% FPU support
283
! [PLATFORM=mips32&(MACHINE=lgxemul|MACHINE=bgxemul)] CONFIG_FPU (y)
3884 decky 284
 
3915 decky 285
 
3803 decky 286
## Kernel features options
287
 
288
% Support for SMP
4047 jermar 289
! [PLATFORM=ia32|PLATFORM=amd64|PLATFORM=sparc64|PLATFORM=ia64|(PLATFORM=mips32&MACHINE=msim)] CONFIG_SMP (y/n)
3803 decky 290
 
4069 decky 291
% Debug build
292
! CONFIG_DEBUG (y/n)
293
 
294
% Deadlock detection support for spinlocks
295
! [CONFIG_DEBUG=y&CONFIG_SMP=y] CONFIG_DEBUG_SPINLOCK (y/n)
296
 
3803 decky 297
% Improved support for hyperthreading
4050 jermar 298
! [PLATFORM=amd64&CONFIG_SMP=y] CONFIG_HT (y/n)
4069 decky 299
 
3915 decky 300
% Improved support for hyperthreading
4050 jermar 301
! [PLATFORM=ia32&PROCESSOR!=athlon_xp&PROCESSOR!=athlon_mp&PROCESSOR!=pentium3&CONFIG_SMP=y] CONFIG_HT (y/n)
3915 decky 302
 
3803 decky 303
% Lazy FPU context switching
4050 jermar 304
! [CONFIG_FPU=y] CONFIG_FPU_LAZY (y/n)
3803 decky 305
 
306
% Use VHPT
4050 jermar 307
! [PLATFORM=ia64] CONFIG_VHPT (n/y)
3803 decky 308
 
309
% Use TSB
4050 jermar 310
! [PLATFORM=sparc64] CONFIG_TSB (y/n)
3803 decky 311
 
4047 jermar 312
% IO SAPIC on default address support
4050 jermar 313
! [PLATFORM=ia64&MACHINE!=ski] CONFIG_IOSAPIC (y/n)
4047 jermar 314
 
315
% Virtually indexed D-cache support
4050 jermar 316
! [PLATFORM=sparc64] CONFIG_VIRT_IDX_DCACHE (y/n)
4047 jermar 317
 
318
% Support for userspace debuggers
4050 jermar 319
! CONFIG_UDEBUG (y/n)
4047 jermar 320
 
321
% Kernel console support
4050 jermar 322
! CONFIG_KCONSOLE (y/n)
4047 jermar 323
 
324
% Detailed kernel logging
4050 jermar 325
! CONFIG_LOG (n/y)
4047 jermar 326
 
327
% Compile kernel tests
4050 jermar 328
! CONFIG_TEST (y/n)
4047 jermar 329
 
4069 decky 330
 
4047 jermar 331
## Hardware support
332
 
4056 decky 333
% Input device class
4053 jermar 334
@ "generic" Keyboard or serial line
335
@ "none" No input device
4114 jermar 336
! [PLATFORM=ia32|PLATFORM=amd64|(PLATFORM=mips32&MACHINE!=msim)] CONFIG_HID_IN (choice)
4069 decky 337
 
4114 jermar 338
% Input device class
339
@ "serial" Serial line
340
@ "none" No input device
341
! [MACHINE=ski|MACHINE=serengeti|MACHINE=msim] CONFIG_HID_IN (choice)
342
 
4082 decky 343
% Output device class
4114 jermar 344
@ "serial" Serial line
345
@ "none" No output device
346
! [MACHINE=ski|MACHINE=serengeti|MACHINE=msim] CONFIG_HID_OUT (choice)
347
 
348
% Output device class
4082 decky 349
@ "generic" Monitor or serial line
350
@ "none" No output device
4114 jermar 351
! [PLATFORM=ia32|PLATFORM=amd64] CONFIG_HID_OUT (choice)
4047 jermar 352
 
4056 decky 353
% Output device class
4053 jermar 354
@ "generic" Monitor or serial line
4047 jermar 355
@ "monitor" Monitor
356
@ "serial" Serial line
4053 jermar 357
@ "none" No output device
4082 decky 358
! [PLATFORM=mips32&(MACHINE=bgxemul|MACHINE=lgxemul)] CONFIG_HID_OUT (choice)
4069 decky 359
 
4082 decky 360
% PC keyboard support
361
! [CONFIG_HID_IN=generic&(PLATFORM=ia32|PLATFORM=amd64)] CONFIG_PC_KBD (y/n)
4047 jermar 362
 
4082 decky 363
% Support for msim/GXemul keyboard
364
! [CONFIG_HID_IN=generic&PLATFORM=mips32] CONFIG_MIPS_KBD (y/n)
4069 decky 365
 
4082 decky 366
% Support for msim/GXemul printer
367
! [(CONFIG_HID_OUT=generic|CONFIG_HID_OUT=serial)&PLATFORM=mips32] CONFIG_MIPS_PRN (y/n)
368
 
4047 jermar 369
% i8042 controller support
4082 decky 370
! [CONFIG_PC_KBD=y] CONFIG_I8042 (y)
3803 decky 371
 
4082 decky 372
% Dummy serial line input
373
! [CONFIG_MIPS_KBD=y] CONFIG_DSRLNIN (y)
3899 jermar 374
 
4082 decky 375
% Dummy serial line output
376
! [CONFIG_MIPS_PRN=y] CONFIG_DSRLNOUT (y)
4042 jermar 377
 
4082 decky 378
% Serial line input module
379
! [CONFIG_DSRLNIN=y] CONFIG_SRLN (y)
3900 jermar 380
 
4082 decky 381
#% i8042 controller support
382
#! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&MACHINE=i460GX] CONFIG_I8042 (y/n)
4069 decky 383
 
4082 decky 384
#% Support for NS16550 controller
385
#! [(CONFIG_HID_IN=keyboard&PLATFORM=sparc64)|(CONFIG_HID_IN=serial&PLATFORM=ia64)] CONFIG_NS16550 (y/n)
4042 jermar 386
 
4082 decky 387
#% Support for Z8530 controller
388
#! [(CONFIG_HID_IN!=none|CONFIG_HID_OUT=generic|CONFIG_HID_OUT=serial)&PLATFORM=sparc64] CONFIG_Z8530 (y/n)
4042 jermar 389
 
4082 decky 390
#% Support for Serengeti console
391
#! [(CONFIG_HID_IN=serial|CONFIG_HID_OUT=serial)&MACHINE=serengeti] CONFIG_SGCN (y/n)
4043 jermar 392
 
4082 decky 393
#% PC keyboard support
394
#! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&MACHINE=i460GX] CONFIG_PC_KBD (y/n)
4069 decky 395
 
4082 decky 396
#% Sun keyboard support
397
#! [(CONFIG_HID_IN=generic|CONFIG_HID_IN=keyboard)&PLATFORM=sparc64] CONFIG_SUN_KBD (y/n)
398
 
4047 jermar 399
% EGA support
4082 decky 400
! [CONFIG_HID_OUT=generic&(PLATFORM=ia32|PLATFORM=amd64)] CONFIG_EGA (y/n)
4042 jermar 401
 
4082 decky 402
#% EGA support
403
#! [(CONFIG_HID_OUT=generic|CONFIG_HID_OUT=monitor)&MACHINE=i460GX] CONFIG_EGA (y/n)
404
 
3803 decky 405
% Framebuffer support
4082 decky 406
! [CONFIG_HID_OUT=generic&(PLATFORM=ia32|PLATFORM=amd64)] CONFIG_FB (y/n)
3803 decky 407
 
4082 decky 408
% Framebuffer support
409
! [(CONFIG_HID_OUT=generic|CONFIG_HID_OUT=monitor)&PLATFORM=mips32&(MACHINE=lgxemul|MACHINE=bgxemul)] CONFIG_FB (y/n)
410
 
411
% Framebuffer support
412
! [CONFIG_HID_OUT=none] CONFIG_FB (n)
413
 
3803 decky 414
% Framebuffer width
415
@ "640"
416
@ "800"
417
@ "1024"
418
@ "1152"
419
@ "1280"
420
@ "1400"
421
@ "1440"
422
@ "1600"
423
@ "2048"
4050 jermar 424
! [(PLATFORM=ia32|PLATFORM=amd64)&CONFIG_FB=y] CONFIG_VESA_WIDTH (choice)
3803 decky 425
 
426
% Framebuffer height
427
@ "480"
428
@ "600"
429
@ "768"
430
@ "852"
431
@ "900"
432
@ "960"
433
@ "1024"
434
@ "1050"
435
@ "1200"
436
@ "1536"
4050 jermar 437
! [(PLATFORM=ia32|PLATFORM=amd64)&CONFIG_FB=y] CONFIG_VESA_HEIGHT (choice)
3803 decky 438
 
439
% Framebuffer depth
440
@ "8"
441
@ "16"
442
@ "24"
4050 jermar 443
! [(PLATFORM=ia32|PLATFORM=amd64)&CONFIG_FB=y] CONFIG_VESA_BPP (choice)
3803 decky 444
 
445
% Start AP processors by the loader
4050 jermar 446
! [PLATFORM=sparc64&CONFIG_SMP=y] CONFIG_AP (y/n)
3803 decky 447
 
448
% Use Block Address Translation by the loader
4050 jermar 449
! [PLATFORM=ppc32] CONFIG_BAT (y/n)
3803 decky 450
 
451
% Preserve A.OUT header in isofs.b
4047 jermar 452
! [PLATFORM=sparc64&MACHINE=generic] CONFIG_AOUT_ISOFS_B (y)
3803 decky 453
 
454
% External ramdisk
455
! [PLATFORM=sparc64] CONFIG_RD_EXTERNAL (y/n)
3923 svoboda 456
 
457
% Keyboard layout
458
@ "us_qwerty" US QWERTY
459
@ "us_dvorak" US Dvorak
4051 svoboda 460
! KBD_LAYOUT (choice)