Subversion Repositories HelenOS

Rev

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