Subversion Repositories HelenOS

Rev

Rev 3665 | Rev 3743 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3665 Rev 3742
1
#
1
#
2
# Copyright (c) 2006 Ondrej Palkovsky 
2
# Copyright (c) 2006 Ondrej Palkovsky 
3
# All rights reserved.
3
# All rights reserved.
4
#
4
#
5
# Redistribution and use in source and binary forms, with or without
5
# Redistribution and use in source and binary forms, with or without
6
# modification, are permitted provided that the following conditions
6
# modification, are permitted provided that the following conditions
7
# are met:
7
# are met:
8
#
8
#
9
# - Redistributions of source code must retain the above copyright
9
# - Redistributions of source code must retain the above copyright
10
#   notice, this list of conditions and the following disclaimer.
10
#   notice, this list of conditions and the following disclaimer.
11
# - Redistributions in binary form must reproduce the above copyright
11
# - Redistributions in binary form must reproduce the above copyright
12
#   notice, this list of conditions and the following disclaimer in the
12
#   notice, this list of conditions and the following disclaimer in the
13
#   documentation and/or other materials provided with the distribution.
13
#   documentation and/or other materials provided with the distribution.
14
# - The name of the author may not be used to endorse or promote products
14
# - The name of the author may not be used to endorse or promote products
15
#   derived from this software without specific prior written permission.
15
#   derived from this software without specific prior written permission.
16
#
16
#
17
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
17
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
18
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
19
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
20
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
20
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
21
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
21
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
22
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
#
27
#
28
 
28
 
29
## General configuration directives
29
## General configuration directives
30
 
30
 
31
# Architecture
31
# Architecture
32
@ "amd64" AMD64/Intel EM64T
32
@ "amd64" AMD64/Intel EM64T
33
@ "arm32" ARM 32-bit
33
@ "arm32" ARM 32-bit
34
@ "ia32" Intel IA-32
34
@ "ia32" Intel IA-32
35
@ "ia32xen" Intel IA-32 on Xen hypervisor
35
@ "ia32xen" Intel IA-32 on Xen hypervisor
36
@ "ia64" Intel IA-64
36
@ "ia64" Intel IA-64
37
@ "mips32" MIPS 32-bit
37
@ "mips32" MIPS 32-bit
38
@ "ppc32" PowerPC 32-bit
38
@ "ppc32" PowerPC 32-bit
39
@ "ppc64" PowerPC 64-bit
39
@ "ppc64" PowerPC 64-bit
40
@ "sparc64" Sun UltraSPARC 64-bit
40
@ "sparc64" Sun UltraSPARC 64-bit
41
! ARCH (choice)
41
! ARCH (choice)
42
 
42
 
43
# Compiler                                                                                                        
-
 
-
 
43
# Compiler
44
@ "gcc_cross" GCC Cross-compiler                                                                                  
44
@ "gcc_cross" GCC Cross-compiler
45
@ "gcc_native" GCC Native                                                                                         
45
@ "gcc_native" GCC Native
46
@ "icc_native" ICC Native                                                                                         
46
@ "icc_native" ICC Native
47
@ "suncc_native" Sun Studio C Compiler                                                                             
47
@ "suncc_native" Sun Studio C Compiler
48
! [ARCH=amd64|ARCH=ia32|ARCH=ia32xen] COMPILER (choice)                                               
48
! [ARCH=amd64|ARCH=ia32|ARCH=ia32xen] COMPILER (choice)
49
                                                                                                                  
-
 
50
# Compiler                                                                                                        
-
 
-
 
49
 
-
 
50
# Compiler
51
@ "gcc_cross" GCC Cross-compiler                                                                                  
51
@ "gcc_cross" GCC Cross-compiler
52
@ "gcc_native" GCC Native                                                                                         
52
@ "gcc_native" GCC Native
53
@ "icc_native" ICC Native                                                                                         
53
@ "icc_native" ICC Native
54
! [ARCH=ia64] COMPILER (choice)                                                                               
54
! [ARCH=ia64] COMPILER (choice)
55
                                                                                                                  
-
 
56
# Compiler                                                                                                        
-
 
-
 
55
 
-
 
56
# Compiler
57
@ "gcc_cross" GCC Cross-compiler                                                                                  
57
@ "gcc_cross" GCC Cross-compiler
58
@ "gcc_native" GCC Native                                                                                         
58
@ "gcc_native" GCC Native
59
@ "suncc_native" Sun Studio C Compiler                                                                             
59
@ "suncc_native" Sun Studio C Compiler
60
! [ARCH=sparc64] COMPILER (choice)                                                                            
60
! [ARCH=sparc64] COMPILER (choice)
61
                                                                                                                  
-
 
62
# Compiler                                                                                                        
-
 
-
 
61
 
-
 
62
# Compiler
63
@ "gcc_cross" GCC Cross-compiler                                                                                  
63
@ "gcc_cross" GCC Cross-compiler
64
@ "gcc_native" GCC Native                                                                                         
64
@ "gcc_native" GCC Native
65
! [ARCH=arm32|ARCH=mips32|ARCH=ppc32|ARCH=ppc64] COMPILER (choice)
65
! [ARCH=arm32|ARCH=mips32|ARCH=ppc32|ARCH=ppc64] COMPILER (choice)
66
 
66
 
67
# CPU type
67
# CPU type
68
@ "pentium4" Pentium 4
68
@ "pentium4" Pentium 4
69
@ "pentium3" Pentium 3
69
@ "pentium3" Pentium 3
70
@ "core" Core Solo/Duo
70
@ "core" Core Solo/Duo
71
@ "athlon-xp" Athlon XP
71
@ "athlon-xp" Athlon XP
72
@ "athlon-mp" Athlon MP
72
@ "athlon-mp" Athlon MP
73
! [ARCH=ia32|ARCH=ia32xen] MACHINE (choice)
73
! [ARCH=ia32|ARCH=ia32xen] MACHINE (choice)
74
 
74
 
75
# CPU type
75
# CPU type
76
@ "opteron" Opteron
76
@ "opteron" Opteron
77
! [ARCH=amd64] MACHINE (choice)
77
! [ARCH=amd64] MACHINE (choice)
78
 
78
 
79
# CPU type
79
# CPU type
80
@ "us" UltraSPARC I-II subarchitecture
80
@ "us" UltraSPARC I-II subarchitecture
81
@ "us3" UltraSPARC III-IV subarchitecture
81
@ "us3" UltraSPARC III-IV subarchitecture
82
! [ARCH=sparc64] MACHINE (choice)
82
! [ARCH=sparc64] MACHINE (choice)
83
 
83
 
84
# Machine type
84
# Machine type
85
@ "msim" MSIM Simulator
85
@ "msim" MSIM Simulator
86
@ "simics" Virtutech Simics simulator
86
@ "simics" Virtutech Simics simulator
87
@ "lgxemul" GXEmul Little Endian
87
@ "lgxemul" GXEmul Little Endian
88
@ "bgxemul" GXEmul Big Endian
88
@ "bgxemul" GXEmul Big Endian
89
! [ARCH=mips32] MACHINE (choice)
89
! [ARCH=mips32] MACHINE (choice)
90
 
90
 
91
# Framebuffer support
91
# Framebuffer support
92
! [(ARCH=mips32&MACHINE=lgxemul)|(ARCH=mips32&MACHINE=bgxemul)|(ARCH=ia32)|(ARCH=amd64)|(ARCH=arm32)] CONFIG_FB (y/n)
92
! [(ARCH=mips32&MACHINE=lgxemul)|(ARCH=mips32&MACHINE=bgxemul)|(ARCH=ia32)|(ARCH=amd64)|(ARCH=arm32)] CONFIG_FB (y/n)
93
 
93
 
94
# Framebuffer width
94
# Framebuffer width
95
@ "640"
95
@ "640"
96
@ "800"
96
@ "800"
97
@ "1024"
97
@ "1024"
98
@ "1152"
98
@ "1152"
99
@ "1280"
99
@ "1280"
100
@ "1400"
100
@ "1400"
101
@ "1440"
101
@ "1440"
102
@ "1600"
102
@ "1600"
103
@ "2048"
103
@ "2048"
104
! [(ARCH=ia32|ARCH=amd64)&CONFIG_FB=y] CONFIG_VESA_WIDTH (choice)
104
! [(ARCH=ia32|ARCH=amd64)&CONFIG_FB=y] CONFIG_VESA_WIDTH (choice)
105
 
105
 
106
# Framebuffer height
106
# Framebuffer height
107
@ "480"
107
@ "480"
108
@ "600"
108
@ "600"
109
@ "768"
109
@ "768"
110
@ "852"
110
@ "852"
111
@ "900"
111
@ "900"
112
@ "960"
112
@ "960"
113
@ "1024"
113
@ "1024"
114
@ "1050"
114
@ "1050"
115
@ "1200"
115
@ "1200"
116
@ "1536"
116
@ "1536"
117
! [(ARCH=ia32|ARCH=amd64)&CONFIG_FB=y] CONFIG_VESA_HEIGHT (choice)
117
! [(ARCH=ia32|ARCH=amd64)&CONFIG_FB=y] CONFIG_VESA_HEIGHT (choice)
118
 
118
 
119
# Framebuffer depth
119
# Framebuffer depth
120
@ "8"
120
@ "8"
121
@ "16"
121
@ "16"
122
@ "24"
122
@ "24"
123
! [(ARCH=ia32|ARCH=amd64)&CONFIG_FB=y] CONFIG_VESA_BPP (choice)
123
! [(ARCH=ia32|ARCH=amd64)&CONFIG_FB=y] CONFIG_VESA_BPP (choice)
124
 
124
 
125
# Support for SMP
125
# Support for SMP
126
! [ARCH=ia32|ARCH=amd64|ARCH=ia32xen|ARCH=sparc64|ARCH=ia64] CONFIG_SMP (y/n)
126
! [ARCH=ia32|ARCH=amd64|ARCH=ia32xen|ARCH=sparc64|ARCH=ia64] CONFIG_SMP (y/n)
127
 
127
 
128
# Improved support for hyperthreading
128
# Improved support for hyperthreading
129
! [(ARCH=ia32|ARCH=amd64|ARCH=ia32xen)&CONFIG_SMP=y] CONFIG_HT (y/n)
129
! [(ARCH=ia32|ARCH=amd64|ARCH=ia32xen)&CONFIG_SMP=y] CONFIG_HT (y/n)
130
 
130
 
131
# Simics BIOS AP boot fix
131
# Simics BIOS AP boot fix
132
! [(ARCH=ia32|ARCH=amd64)&CONFIG_SMP=y] CONFIG_SIMICS_FIX (y/n)
132
! [(ARCH=ia32|ARCH=amd64)&CONFIG_SMP=y] CONFIG_SIMICS_FIX (y/n)
133
 
133
 
134
# Lazy FPU context switching
134
# Lazy FPU context switching
135
! [(ARCH=mips32&MACHINE!=msim&MACHINE!=simics)|ARCH=amd64|ARCH=ia32|ARCH=ia64|ARCH=sparc64|ARCH=ia32xen] CONFIG_FPU_LAZY (y/n)
135
! [(ARCH=mips32&MACHINE!=msim&MACHINE!=simics)|ARCH=amd64|ARCH=ia32|ARCH=ia64|ARCH=sparc64|ARCH=ia32xen] CONFIG_FPU_LAZY (y/n)
136
 
136
 
137
# Use VHPT
137
# Use VHPT
138
! [ARCH=ia64] CONFIG_VHPT (n/y)
138
! [ARCH=ia64] CONFIG_VHPT (n/y)
139
 
139
 
140
# Use TSB
140
# Use TSB
141
! [ARCH=sparc64] CONFIG_TSB (y/n)
141
! [ARCH=sparc64] CONFIG_TSB (y/n)
142
 
142
 
143
# Support for Z8530 serial port
143
# Support for Z8530 serial port
144
! [ARCH=sparc64] CONFIG_Z8530 (y/n)
144
! [ARCH=sparc64] CONFIG_Z8530 (y/n)
145
 
145
 
146
# Support for NS16550 serial port (On IA64 as a console instead legacy keyboard)
146
# Support for NS16550 serial port
147
! [ARCH=sparc64] CONFIG_NS16550 (y/n)
147
! [ARCH=sparc64|(ARCH=ia64&MACHINE!=ski)] CONFIG_NS16550 (n/y)
148
 
148
 
149
# Support for Serengeti console
149
# Support for Serengeti console
150
! [ARCH=sparc64] CONFIG_SGCN (y/n)
150
! [ARCH=sparc64] CONFIG_SGCN (y/n)
151
 
151
 
152
# Support for NS16550 serial port (On IA64 as a console instead legacy keyboard)
-
 
153
! [ARCH=ia64&MACHINE!=ski] CONFIG_NS16550 (n/y)
-
 
154
 
-
 
155
# IOSapic on default address support (including legacy IRQ)
152
# IOSapic on default address support
156
! [ARCH=ia64&MACHINE!=ski] CONFIG_IOSAPIC (y/n)
153
! [ARCH=ia64&MACHINE!=ski] CONFIG_IOSAPIC (y/n)
157
 
154
 
158
# Interrupt-driven driver for Legacy Keyboard?
155
# Interrupt-driven driver for Legacy Keyboard?
159
! [CONFIG_NS16550=n&CONFIG_IOSAPIC=y&MACHINE!=ski] CONFIG_I8042_INTERRUPT_DRIVEN (y/n)
156
! [CONFIG_NS16550=n&CONFIG_IOSAPIC=y&MACHINE!=ski] CONFIG_I8042_INTERRUPT_DRIVEN (y/n)
160
 
157
 
161
# Interrupt-driven driver for NS16550?
158
# Interrupt-driven driver for NS16550?
162
! [CONFIG_NS16550=y&((ARCH!=ia64)|CONFIG_IOSAPIC=y)&MACHINE!=ski] CONFIG_NS16550_INTERRUPT_DRIVEN (y/n)
159
! [CONFIG_NS16550=y&((ARCH!=ia64)|CONFIG_IOSAPIC=y)&MACHINE!=ski] CONFIG_NS16550_INTERRUPT_DRIVEN (y/n)
163
 
160
 
164
# Virtually indexed D-cache support
161
# Virtually indexed D-cache support
165
! [ARCH=sparc64] CONFIG_VIRT_IDX_DCACHE (y/n)
162
! [ARCH=sparc64] CONFIG_VIRT_IDX_DCACHE (y/n)
166
 
163
 
167
# Support for userspace debuggers
164
# Support for userspace debuggers
168
! CONFIG_UDEBUG (n/y)
165
! CONFIG_UDEBUG (n/y)
169
 
166
 
170
## Debugging configuration directives
167
## Debugging configuration directives
171
 
168
 
172
# General debuging and assert checking
169
# General debugging and assert checking
173
! CONFIG_DEBUG (y/n)
170
! CONFIG_DEBUG (y/n)
174
 
171
 
175
# Extensive debugging output
172
# Kernel console support
176
! [CONFIG_DEBUG=y] CONFIG_EDEBUG (n/y)
173
! CONFIG_KCONSOLE (y/n)
-
 
174
 
-
 
175
# Detailed kernel logging
-
 
176
! CONFIG_LOG (n/y)
177
 
177
 
178
# Deadlock detection support for spinlocks
178
# Deadlock detection support for spinlocks
179
! [CONFIG_DEBUG=y&CONFIG_SMP=y] CONFIG_DEBUG_SPINLOCK (y/n)
179
! [CONFIG_DEBUG=y&CONFIG_SMP=y] CONFIG_DEBUG_SPINLOCK (y/n)
180
 
180
 
181
# Watchpoint on rewriting AS with zero
181
# Watchpoint on rewriting AS with zero
182
! [CONFIG_DEBUG=y&(ARCH=amd64|ARCH=ia32|ARCH=ia32xen)] CONFIG_DEBUG_AS_WATCHPOINT (y/n)
182
! [CONFIG_DEBUG=y&(ARCH=amd64|ARCH=ia32|ARCH=ia32xen)] CONFIG_DEBUG_AS_WATCHPOINT (y/n)
183
 
183
 
184
# Save all interrupt registers
184
# Save all interrupt registers
185
! [CONFIG_DEBUG=y&(ARCH=amd64|ARCH=mips32|ARCH=ia32|ARCH=ia32xen)] CONFIG_DEBUG_ALLREGS (y/n)
185
! [CONFIG_DEBUG=y&(ARCH=amd64|ARCH=mips32|ARCH=ia32|ARCH=ia32xen)] CONFIG_DEBUG_ALLREGS (y/n)
186
 
186
 
187
 
187
 
188
## Run-time configuration directives
188
## Run-time configuration directives
189
 
189
 
190
# Compile kernel tests
190
# Compile kernel tests
191
! CONFIG_TEST (y/n)
191
! CONFIG_TEST (y/n)
192
 
192