source: mainline/HelenOS.config@ c247262

lfn serial ticket/834-toolchain-update topic/msim-upgrade topic/simplify-dev-export
Last change on this file since c247262 was 1c6b3a2, checked in by Jakub Jermar <jakub@…>, 16 years ago

Improve the configuration file.

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