Subversion Repositories HelenOS

Rev

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

Rev 3588 Rev 3674
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
                                                                                                                  
49
                                                                                                                  
50
# Compiler                                                                                                        
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
                                                                                                                  
55
                                                                                                                  
56
# Compiler                                                                                                        
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
                                                                                                                  
61
                                                                                                                  
62
# Compiler                                                                                                        
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
-
 
80
@ "us" UltraSPARC I-II subarchitecture
-
 
81
@ "us3" UltraSPARC III-IV subarchitecture
-
 
82
! [ARCH=sparc64] MACHINE (choice)
-
 
83
 
79
# Machine type
84
# Machine type
80
@ "msim" MSIM Simulator
85
@ "msim" MSIM Simulator
81
@ "simics" Virtutech Simics simulator
86
@ "simics" Virtutech Simics simulator
82
@ "lgxemul" GXEmul Little Endian
87
@ "lgxemul" GXEmul Little Endian
83
@ "bgxemul" GXEmul Big Endian
88
@ "bgxemul" GXEmul Big Endian
84
! [ARCH=mips32] MACHINE (choice)
89
! [ARCH=mips32] MACHINE (choice)
85
 
90
 
86
# Framebuffer support
91
# Framebuffer support
87
! [(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)
88
 
93
 
89
# Framebuffer width
94
# Framebuffer width
90
@ "640"
95
@ "640"
91
@ "800"
96
@ "800"
92
@ "1024"
97
@ "1024"
93
@ "1152"
98
@ "1152"
94
@ "1280"
99
@ "1280"
95
@ "1400"
100
@ "1400"
96
@ "1440"
101
@ "1440"
97
@ "1600"
102
@ "1600"
98
@ "2048"
103
@ "2048"
99
! [(ARCH=ia32|ARCH=amd64)&CONFIG_FB=y] CONFIG_VESA_WIDTH (choice)
104
! [(ARCH=ia32|ARCH=amd64)&CONFIG_FB=y] CONFIG_VESA_WIDTH (choice)
100
 
105
 
101
# Framebuffer height
106
# Framebuffer height
102
@ "480"
107
@ "480"
103
@ "600"
108
@ "600"
104
@ "768"
109
@ "768"
105
@ "852"
110
@ "852"
106
@ "900"
111
@ "900"
107
@ "960"
112
@ "960"
108
@ "1024"
113
@ "1024"
109
@ "1050"
114
@ "1050"
110
@ "1200"
115
@ "1200"
111
@ "1536"
116
@ "1536"
112
! [(ARCH=ia32|ARCH=amd64)&CONFIG_FB=y] CONFIG_VESA_HEIGHT (choice)
117
! [(ARCH=ia32|ARCH=amd64)&CONFIG_FB=y] CONFIG_VESA_HEIGHT (choice)
113
 
118
 
114
# Framebuffer depth
119
# Framebuffer depth
115
@ "8"
120
@ "8"
116
@ "16"
121
@ "16"
117
@ "24"
122
@ "24"
118
! [(ARCH=ia32|ARCH=amd64)&CONFIG_FB=y] CONFIG_VESA_BPP (choice)
123
! [(ARCH=ia32|ARCH=amd64)&CONFIG_FB=y] CONFIG_VESA_BPP (choice)
119
 
124
 
120
# Support for SMP
125
# Support for SMP
121
! [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)
122
 
127
 
123
# Improved support for hyperthreading
128
# Improved support for hyperthreading
124
! [(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)
125
 
130
 
126
# Simics BIOS AP boot fix
131
# Simics BIOS AP boot fix
127
! [(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)
128
 
133
 
129
# Lazy FPU context switching
134
# Lazy FPU context switching
130
! [(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)
131
 
136
 
132
# Use VHPT
137
# Use VHPT
133
! [ARCH=ia64] CONFIG_VHPT (n/y)
138
! [ARCH=ia64] CONFIG_VHPT (n/y)
134
 
139
 
135
# Use TSB
140
# Use TSB
136
! [ARCH=sparc64] CONFIG_TSB (y/n)
141
! [ARCH=sparc64] CONFIG_TSB (y/n)
137
 
142
 
138
# Support for Z8530 serial port
143
# Support for Z8530 serial port
139
! [ARCH=sparc64] CONFIG_Z8530 (y/n)
144
! [ARCH=sparc64] CONFIG_Z8530 (y/n)
140
 
145
 
141
# Support for NS16550 serial port
146
# Support for NS16550 serial port 
142
! [ARCH=sparc64|ARCH=ia64] CONFIG_NS16550 (y/n)
147
! [ARCH=sparc64|(ARCH=ia64&MACHINE!=ski)] CONFIG_NS16550 (n/y)
-
 
148
 
-
 
149
# Support for Serengeti console
-
 
150
! [ARCH=sparc64] CONFIG_SGCN (y/n)
-
 
151
 
-
 
152
# IOSapic on default address support
-
 
153
! [ARCH=ia64&MACHINE!=ski] CONFIG_IOSAPIC (y/n)
143
 
154
 
-
 
155
# Interrupt-driven driver for Legacy Keyboard?
-
 
156
! [CONFIG_NS16550=n&CONFIG_IOSAPIC=y&MACHINE!=ski] CONFIG_I8042_INTERRUPT_DRIVEN (y/n)
-
 
157
 
-
 
158
# Interrupt-driven driver for NS16550?
-
 
159
! [CONFIG_NS16550=y&((ARCH!=ia64)|CONFIG_IOSAPIC=y)&MACHINE!=ski] CONFIG_NS16550_INTERRUPT_DRIVEN (y/n)
144
 
160
 
145
# Virtually indexed D-cache support
161
# Virtually indexed D-cache support
146
! [ARCH=sparc64] CONFIG_VIRT_IDX_DCACHE (y/n)
162
! [ARCH=sparc64] CONFIG_VIRT_IDX_DCACHE (y/n)
147
 
163
 
148
# Support for userspace debuggers
164
# Support for userspace debuggers
149
! CONFIG_UDEBUG (n/y)
165
! CONFIG_UDEBUG (n/y)
150
 
166
 
151
## Debugging configuration directives
167
## Debugging configuration directives
152
 
168
 
153
# General debuging and assert checking
169
# General debugging and assert checking
154
! CONFIG_DEBUG (y/n)
170
! CONFIG_DEBUG (y/n)
155
 
171
 
156
# Extensive debugging output
172
# Kernel console support
157
! [CONFIG_DEBUG=y] CONFIG_EDEBUG (n/y)
173
! CONFIG_KCONSOLE (y/n)
-
 
174
 
-
 
175
# Detailed kernel logging
-
 
176
! CONFIG_LOG (n/y)
158
 
177
 
159
# Deadlock detection support for spinlocks
178
# Deadlock detection support for spinlocks
160
! [CONFIG_DEBUG=y&CONFIG_SMP=y] CONFIG_DEBUG_SPINLOCK (y/n)
179
! [CONFIG_DEBUG=y&CONFIG_SMP=y] CONFIG_DEBUG_SPINLOCK (y/n)
161
 
180
 
162
# Watchpoint on rewriting AS with zero
181
# Watchpoint on rewriting AS with zero
163
! [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)
164
 
183
 
165
# Save all interrupt registers
184
# Save all interrupt registers
166
! [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)
167
 
186
 
168
 
187
 
169
## Run-time configuration directives
188
## Run-time configuration directives
170
 
189
 
171
# Compile kernel tests
190
# Compile kernel tests
172
! CONFIG_TEST (y/n)
191
! CONFIG_TEST (y/n)
173
 
192