Rev 4341 | Rev 4343 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 4341 | Rev 4342 | ||
|---|---|---|---|
| Line 1... | Line 1... | ||
| 1 | # |
1 | # |
| 2 | # Copyright (c) 2006 Ondrej Palkovsky |
2 | # Copyright (c) 2006 Ondrej Palkovsky |
| - | 3 | # Copyright (c) 2009 Martin Decky |
|
| 3 | # All rights reserved. |
4 | # All rights reserved. |
| 4 | # |
5 | # |
| 5 | # Redistribution and use in source and binary forms, with or without |
6 | # Redistribution and use in source and binary forms, with or without |
| 6 | # modification, are permitted provided that the following conditions |
7 | # modification, are permitted provided that the following conditions |
| 7 | # are met: |
8 | # are met: |
| Line 31... | Line 32... | ||
| 31 | 32 | ||
| 32 | % Platform |
33 | % Platform |
| 33 | @ "amd64" AMD64/Intel EM64T (PC) |
34 | @ "amd64" AMD64/Intel EM64T (PC) |
| 34 | @ "arm32" ARM 32-bit |
35 | @ "arm32" ARM 32-bit |
| 35 | @ "ia32" Intel IA-32 (PC) |
36 | @ "ia32" Intel IA-32 (PC) |
| 36 | @ "ia32xen" Intel IA-32 on Xen hypervisor |
- | |
| 37 | @ "ia64" Intel IA-64 |
37 | @ "ia64" Intel IA-64 |
| 38 | @ "mips32" MIPS 32-bit |
38 | @ "mips32" MIPS 32-bit |
| 39 | @ "ppc32" PowerPC 32-bit (iMac G4) |
39 | @ "ppc32" PowerPC 32-bit (iMac G4) |
| 40 | @ "ppc64" PowerPC 64-bit (iMac G5) |
- | |
| 41 | @ "sparc64" Sun UltraSPARC 64-bit |
40 | @ "sparc64" Sun UltraSPARC 64-bit |
| 42 | ! PLATFORM (choice) |
41 | ! PLATFORM (choice) |
| 43 | 42 | ||
| 44 | % Machine type |
43 | % Machine type |
| 45 | @ "msim" MSIM |
44 | @ "msim" MSIM |
| Line 57... | Line 56... | ||
| 57 | @ "pentium4" Pentium 4 |
56 | @ "pentium4" Pentium 4 |
| 58 | @ "pentium3" Pentium 3 |
57 | @ "pentium3" Pentium 3 |
| 59 | @ "core" Core Solo/Duo |
58 | @ "core" Core Solo/Duo |
| 60 | @ "athlon-xp" Athlon XP |
59 | @ "athlon-xp" Athlon XP |
| 61 | @ "athlon-mp" Athlon MP |
60 | @ "athlon-mp" Athlon MP |
| 62 | ! [PLATFORM=ia32|PLATFORM=ia32xen] MACHINE (choice) |
61 | ! [PLATFORM=ia32] MACHINE (choice) |
| 63 | 62 | ||
| 64 | % CPU type |
63 | % CPU type |
| 65 | @ "opteron" Opteron |
64 | @ "opteron" Opteron |
| 66 | ! [PLATFORM=amd64] MACHINE (choice) |
65 | ! [PLATFORM=amd64] MACHINE (choice) |
| 67 | 66 | ||
| Line 74... | Line 73... | ||
| 74 | @ "tmpfs" TMPFS image |
73 | @ "tmpfs" TMPFS image |
| 75 | @ "fat" FAT16 image |
74 | @ "fat" FAT16 image |
| 76 | ! RDFMT (choice) |
75 | ! RDFMT (choice) |
| 77 | 76 | ||
| 78 | 77 | ||
| - | 78 | ## Mapping between platform and kernel architecture |
|
| - | 79 | ||
| - | 80 | % Kernel architecture |
|
| - | 81 | @ "amd64" |
|
| - | 82 | ! [PLATFORM=amd64] KARCH (choice) |
|
| - | 83 | ||
| - | 84 | % Kernel architecture |
|
| - | 85 | @ "arm32" |
|
| - | 86 | ! [PLATFORM=arm32] KARCH (choice) |
|
| - | 87 | ||
| - | 88 | % Kernel architecture |
|
| - | 89 | @ "ia32" |
|
| - | 90 | ! [PLATFORM=ia32] KARCH (choice) |
|
| - | 91 | ||
| - | 92 | % Kernel architecture |
|
| - | 93 | @ "ia32xen" |
|
| - | 94 | ! [PLATFORM=ia32xen] KARCH (choice) |
|
| - | 95 | ||
| - | 96 | % Kernel architecture |
|
| - | 97 | @ "ia64" |
|
| - | 98 | ! [PLATFORM=ia64] KARCH (choice) |
|
| - | 99 | ||
| - | 100 | % Kernel architecture |
|
| - | 101 | @ "mips32" |
|
| - | 102 | ! [PLATFORM=mips32] KARCH (choice) |
|
| - | 103 | ||
| - | 104 | % Kernel architecture |
|
| - | 105 | @ "ppc32" |
|
| - | 106 | ! [PLATFORM=ppc32] KARCH (choice) |
|
| - | 107 | ||
| - | 108 | % Kernel architecture |
|
| - | 109 | @ "ppc64" |
|
| - | 110 | ! [PLATFORM=ppc64] KARCH (choice) |
|
| - | 111 | ||
| - | 112 | % Kernel architecture |
|
| - | 113 | @ "sparc64" |
|
| - | 114 | ! [PLATFORM=sparc64] KARCH (choice) |
|
| - | 115 | ||
| - | 116 | ||
| - | 117 | ## Mapping between platform and user space architecture |
|
| - | 118 | ||
| - | 119 | % User space architecture |
|
| - | 120 | @ "amd64" |
|
| - | 121 | ! [PLATFORM=amd64] UARCH (choice) |
|
| - | 122 | ||
| - | 123 | % User space architecture |
|
| - | 124 | @ "arm32" |
|
| - | 125 | ! [PLATFORM=arm32] UARCH (choice) |
|
| - | 126 | ||
| - | 127 | % User space architecture |
|
| - | 128 | @ "ia32" |
|
| - | 129 | ! [PLATFORM=ia32|PLATFORM=ia32xen] UARCH (choice) |
|
| - | 130 | ||
| - | 131 | % User space architecture |
|
| - | 132 | @ "ia64" |
|
| - | 133 | ! [PLATFORM=ia64] UARCH (choice) |
|
| - | 134 | ||
| - | 135 | % User space architecture |
|
| - | 136 | @ "mips32" |
|
| - | 137 | ! [PLATFORM=mips32&(MACHINE=msim|MACHINE=simics|MACHINE=lgxemul)] UARCH (choice) |
|
| - | 138 | ||
| - | 139 | % User space architecture |
|
| - | 140 | @ "mips32eb" |
|
| - | 141 | ! [PLATFORM=mips32&(MACHINE=bgxemul)] UARCH (choice) |
|
| - | 142 | ||
| - | 143 | % User space architecture |
|
| - | 144 | @ "ppc32" |
|
| - | 145 | ! [PLATFORM=ppc32] UARCH (choice) |
|
| - | 146 | ||
| - | 147 | % User space architecture |
|
| - | 148 | @ "ppc64" |
|
| - | 149 | ! [PLATFORM=ppc64] UARCH (choice) |
|
| - | 150 | ||
| - | 151 | % User space architecture |
|
| - | 152 | @ "sparc64" |
|
| - | 153 | ! [PLATFORM=sparc64] UARCH (choice) |
|
| - | 154 | ||
| - | 155 | ||
| - | 156 | ## Mapping between platform and boot architecture |
|
| - | 157 | ||
| - | 158 | % Boot architecture |
|
| - | 159 | @ "amd64" |
|
| - | 160 | ! [PLATFORM=amd64] BARCH (choice) |
|
| - | 161 | ||
| - | 162 | % Boot architecture |
|
| - | 163 | @ "arm32" |
|
| - | 164 | ! [PLATFORM=arm32] BARCH (choice) |
|
| - | 165 | ||
| - | 166 | % Boot architecture |
|
| - | 167 | @ "ia32" |
|
| - | 168 | ! [PLATFORM=ia32] BARCH (choice) |
|
| - | 169 | ||
| - | 170 | % Boot architecture |
|
| - | 171 | @ "ia32xen" |
|
| - | 172 | ! [PLATFORM=ia32xen] BARCH (choice) |
|
| - | 173 | ||
| - | 174 | % Boot architecture |
|
| - | 175 | @ "ia64" |
|
| - | 176 | ! [PLATFORM=ia64] BARCH (choice) |
|
| - | 177 | ||
| - | 178 | % Boot architecture |
|
| - | 179 | @ "mips32" |
|
| - | 180 | ! [PLATFORM=mips32] BARCH (choice) |
|
| - | 181 | ||
| - | 182 | % Boot architecture |
|
| - | 183 | @ "ppc32" |
|
| - | 184 | ! [PLATFORM=ppc32] BARCH (choice) |
|
| - | 185 | ||
| - | 186 | % Boot architecture |
|
| - | 187 | @ "ppc64" |
|
| - | 188 | ! [PLATFORM=ppc64] BARCH (choice) |
|
| - | 189 | ||
| - | 190 | % Boot architecture |
|
| - | 191 | @ "sparc64" |
|
| - | 192 | ! [PLATFORM=sparc64] BARCH (choice) |
|
| - | 193 | ||
| - | 194 | ||
| - | 195 | ## Mapping between platform and image format |
|
| - | 196 | ||
| - | 197 | % Image format |
|
| - | 198 | @ "binary" |
|
| - | 199 | ! [PLATFORM=mips32&MACHINE=msim] IMAGE (choice) |
|
| - | 200 | ||
| - | 201 | % Image format |
|
| - | 202 | @ "ecoff" |
|
| - | 203 | ! [PLATFORM=mips32&(MACHINE=simics|MACHINE=bgxemul|MACHINE=lgxemul)] IMAGE (choice) |
|
| - | 204 | ||
| - | 205 | ||
| 79 | ## Compiler options |
206 | ## Compiler options |
| 80 | 207 | ||
| 81 | % Compiler |
208 | % Compiler |
| 82 | @ "gcc_cross" GCC Cross-compiler |
209 | @ "gcc_cross" GCC Cross-compiler |
| 83 | @ "gcc_native" GCC Native |
210 | @ "gcc_native" GCC Native |
| 84 | @ "icc_native" ICC Native |
211 | @ "icc_native" ICC Native |
| 85 | @ "suncc_native" Sun Studio C Compiler |
212 | @ "suncc_native" Sun Studio C Compiler |
| 86 | ! [PLATFORM=amd64|PLATFORM=ia32|PLATFORM=ia32xen] COMPILER (choice) |
213 | ! [PLATFORM=amd64|PLATFORM=ia32] COMPILER (choice) |
| 87 | 214 | ||
| 88 | % Compiler |
215 | % Compiler |
| 89 | @ "gcc_cross" GCC Cross-compiler |
216 | @ "gcc_cross" GCC Cross-compiler |
| 90 | @ "gcc_native" GCC Native |
217 | @ "gcc_native" GCC Native |
| 91 | @ "icc_native" ICC Native |
218 | @ "icc_native" ICC Native |
| Line 98... | Line 225... | ||
| 98 | ! [PLATFORM=sparc64] COMPILER (choice) |
225 | ! [PLATFORM=sparc64] COMPILER (choice) |
| 99 | 226 | ||
| 100 | % Compiler |
227 | % Compiler |
| 101 | @ "gcc_cross" GCC Cross-compiler |
228 | @ "gcc_cross" GCC Cross-compiler |
| 102 | @ "gcc_native" GCC Native |
229 | @ "gcc_native" GCC Native |
| 103 | ! [PLATFORM=arm32|PLATFORM=mips32|PLATFORM=ppc32|PLATFORM=ppc64] COMPILER (choice) |
230 | ! [PLATFORM=arm32|PLATFORM=mips32|PLATFORM=ppc32] COMPILER (choice) |
| 104 | 231 | ||
| 105 | 232 | ||
| 106 | ## Debug build options |
233 | ## Debug build options |
| 107 | 234 | ||
| 108 | % Debug build |
235 | % Debug build |
| 109 | ! CONFIG_DEBUG (y/n) |
236 | ! CONFIG_DEBUG (y/n) |
| 110 | 237 | ||
| 111 | 238 | ||
| - | 239 | ## Kernel configuration |
|
| - | 240 | ||
| - | 241 | % Fences |
|
| - | 242 | ! [PLATFORM=ia32&(MACHINE=athlon-xp|MACHINE=athlon-mp|MACHINE=pentium3)] CONFIG_FENCES_P3 (y) |
|
| - | 243 | ||
| - | 244 | % Fences |
|
| - | 245 | ! [(PLATFORM=ia32&(MACHINE=pentium4|MACHINE=core))|PLATFORM=amd64] CONFIG_FENCES_P4 (y) |
|
| - | 246 | ||
| - | 247 | % ACPI support |
|
| - | 248 | ! [PLATFORM=ia32|PLATFORM=amd64] CONFIG_ACPI (y) |
|
| - | 249 | ||
| - | 250 | % Hierarchical page tables support |
|
| - | 251 | ! [PLATFORM=ia32|PLATFORM=amd64|PLATFORM=arm32|PLATFORM=mips32|PLATFORM=ppc32] CONFIG_PAGE_PT (y) |
|
| - | 252 | ||
| - | 253 | % Page hash table support |
|
| - | 254 | ! [PLATFORM=ia64|PLATFORM=sparc64] CONFIG_PAGE_HT (y) |
|
| - | 255 | ||
| - | 256 | % i8042 controller support |
|
| - | 257 | ! [PLATFORM=ia32|PLATFORM=amd64|(PLATFORM=ia64&MACHINE=i460GX)] CONFIG_I8042 (y) |
|
| - | 258 | ||
| - | 259 | % Sun keyboard support |
|
| - | 260 | ! [PLATFORM=sparc64] CONFIG_SUN_KBD (y) |
|
| - | 261 | ||
| - | 262 | % EGA support |
|
| - | 263 | ! [PLATFORM=ia32|PLATFORM=amd64|(PLATFORM=ia64&MACHINE=i460GX)] CONFIG_EGA (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 | ||
| - | 277 | % FPU support |
|
| - | 278 | ! [PLATFORM=ia32|PLATFORM=amd64|PLATFORM=ia64|PLATFORM=sparc64|(PLATFORM=mips32&(MACHINE=lgxemul|MACHINE=bgxemul))] CONFIG_FPU (y) |
|
| - | 279 | ||
| - | 280 | ||
| 112 | ## Kernel features options |
281 | ## Kernel features options |
| 113 | 282 | ||
| 114 | % Support for SMP |
283 | % Support for SMP |
| 115 | ! [PLATFORM=ia32|PLATFORM=amd64|PLATFORM=ia32xen|PLATFORM=sparc64|PLATFORM=ia64] CONFIG_SMP (y/n) |
284 | ! [(PLATFORM=ia32&MACHINE!=athlon-xp)|PLATFORM=amd64|PLATFORM=sparc64|PLATFORM=ia64] CONFIG_SMP (y/n) |
| 116 | 285 | ||
| 117 | % Improved support for hyperthreading |
286 | % Improved support for hyperthreading |
| 118 | ! [(PLATFORM=ia32|PLATFORM=amd64|PLATFORM=ia32xen)&CONFIG_SMP=y] CONFIG_HT (y/n) |
287 | ! [((PLATFORM=ia32&MACHINE!=athlon-xp&MACHINE!=athlon-mp&MACHINE!=pentium3)|PLATFORM=amd64)&CONFIG_SMP=y] CONFIG_HT (y/n) |
| 119 | 288 | ||
| 120 | % Simics BIOS AP boot fix |
289 | % Simics BIOS AP boot fix |
| 121 | ! [(PLATFORM=ia32|PLATFORM=amd64)&CONFIG_SMP=y] CONFIG_SIMICS_FIX (y/n) |
290 | ! [(PLATFORM=ia32|PLATFORM=amd64)&CONFIG_SMP=y] CONFIG_SIMICS_FIX (y/n) |
| 122 | 291 | ||
| 123 | % Lazy FPU context switching |
292 | % Lazy FPU context switching |
| 124 | ! [(PLATFORM=mips32&MACHINE!=msim&MACHINE!=simics)|PLATFORM=amd64|PLATFORM=ia32|PLATFORM=ia64|PLATFORM=sparc64|PLATFORM=ia32xen] CONFIG_FPU_LAZY (y/n) |
293 | ! [CONFIG_FPU=y] CONFIG_FPU_LAZY (y/n) |
| 125 | 294 | ||
| 126 | % Use VHPT |
295 | % Use VHPT |
| 127 | ! [PLATFORM=ia64] CONFIG_VHPT (n/y) |
296 | ! [PLATFORM=ia64] CONFIG_VHPT (n/y) |
| 128 | 297 | ||
| 129 | % Use TSB |
298 | % Use TSB |
| Line 133... | Line 302... | ||
| 133 | ! [PLATFORM=sparc64] CONFIG_Z8530 (y/n) |
302 | ! [PLATFORM=sparc64] CONFIG_Z8530 (y/n) |
| 134 | 303 | ||
| 135 | % Support for NS16550 serial port |
304 | % Support for NS16550 serial port |
| 136 | ! [PLATFORM=sparc64|(PLATFORM=ia64&MACHINE!=ski)] CONFIG_NS16550 (n/y) |
305 | ! [PLATFORM=sparc64|(PLATFORM=ia64&MACHINE!=ski)] CONFIG_NS16550 (n/y) |
| 137 | 306 | ||
| 138 | % Support for Serengeti console |
- | |
| 139 | ! [PLATFORM=sparc64] CONFIG_SGCN (y/n) |
- | |
| 140 | - | ||
| 141 | % IOSapic on default address support |
307 | % IOSapic on default address support |
| 142 | ! [PLATFORM=ia64&MACHINE!=ski] CONFIG_IOSAPIC (y/n) |
308 | ! [PLATFORM=ia64&MACHINE!=ski] CONFIG_IOSAPIC (y/n) |
| 143 | 309 | ||
| 144 | % Interrupt-driven driver for Legacy Keyboard |
310 | % Interrupt-driven driver for Legacy Keyboard |
| 145 | ! [CONFIG_NS16550=n&CONFIG_IOSAPIC=y&MACHINE!=ski] CONFIG_I8042_INTERRUPT_DRIVEN (y/n) |
311 | ! [CONFIG_NS16550=n&CONFIG_IOSAPIC=y&MACHINE!=ski] CONFIG_I8042_INTERRUPT_DRIVEN (y/n) |
| 146 | 312 | ||
| 147 | % Interrupt-driven driver for NS16550 |
313 | % Interrupt-driven driver for NS16550 |
| 148 | ! [CONFIG_NS16550=y&((PLATFORM!=ia64)|CONFIG_IOSAPIC=y)&MACHINE!=ski] CONFIG_NS16550_INTERRUPT_DRIVEN (y/n) |
314 | ! [CONFIG_NS16550=y&((PLATFORM!=ia64)|CONFIG_IOSAPIC=y)&MACHINE!=ski] CONFIG_NS16550_INTERRUPT_DRIVEN (y/n) |
| 149 | 315 | ||
| - | 316 | % Support for Serengeti console |
|
| - | 317 | ! [PLATFORM=sparc64] CONFIG_SGCN (y/n) |
|
| - | 318 | ||
| 150 | % Virtually indexed D-cache support |
319 | % Virtually indexed D-cache support |
| 151 | ! [PLATFORM=sparc64] CONFIG_VIRT_IDX_DCACHE (y/n) |
320 | ! [PLATFORM=sparc64] CONFIG_VIRT_IDX_DCACHE (y/n) |
| 152 | 321 | ||
| 153 | % Support for userspace debuggers |
322 | % Support for userspace debuggers |
| 154 | ! CONFIG_UDEBUG (n/y) |
323 | ! CONFIG_UDEBUG (n/y) |
| Line 161... | Line 330... | ||
| 161 | 330 | ||
| 162 | % Deadlock detection support for spinlocks |
331 | % Deadlock detection support for spinlocks |
| 163 | ! [CONFIG_DEBUG=y&CONFIG_SMP=y] CONFIG_DEBUG_SPINLOCK (y/n) |
332 | ! [CONFIG_DEBUG=y&CONFIG_SMP=y] CONFIG_DEBUG_SPINLOCK (y/n) |
| 164 | 333 | ||
| 165 | % Watchpoint on rewriting AS with zero |
334 | % Watchpoint on rewriting AS with zero |
| 166 | ! [CONFIG_DEBUG=y&(PLATFORM=amd64|PLATFORM=ia32|PLATFORM=ia32xen)] CONFIG_DEBUG_AS_WATCHPOINT (y/n) |
335 | ! [CONFIG_DEBUG=y&(PLATFORM=amd64|PLATFORM=ia32)] CONFIG_DEBUG_AS_WATCHPOINT (y/n) |
| 167 | 336 | ||
| 168 | % Save all interrupt registers |
337 | % Save all interrupt registers |
| 169 | ! [CONFIG_DEBUG=y&(PLATFORM=amd64|PLATFORM=mips32|PLATFORM=ia32|PLATFORM=ia32xen)] CONFIG_DEBUG_ALLREGS (y/n) |
338 | ! [CONFIG_DEBUG=y&(PLATFORM=amd64|PLATFORM=mips32|PLATFORM=ia32)] CONFIG_DEBUG_ALLREGS (y/n) |
| 170 | 339 | ||
| 171 | % Compile kernel tests |
340 | % Compile kernel tests |
| 172 | ! CONFIG_TEST (y/n) |
341 | ! CONFIG_TEST (y/n) |
| 173 | 342 | ||
| 174 | 343 | ||
| 175 | ## Hardware support |
344 | ## Hardware support |
| 176 | 345 | ||
| 177 | % Framebuffer support |
346 | % Framebuffer support |
| 178 | ! [(PLATFORM=mips32&MACHINE=lgxemul)|(PLATFORM=mips32&MACHINE=bgxemul)|(PLATFORM=ia32)|(PLATFORM=amd64)|(PLATFORM=arm32)] CONFIG_FB (y/n) |
347 | ! [(PLATFORM=mips32&MACHINE=lgxemul)|(PLATFORM=mips32&MACHINE=bgxemul)|(PLATFORM=ia32)|(PLATFORM=amd64)|(PLATFORM=arm32)|(PLATFORM=sparc64&MACHINE=us3)] CONFIG_FB (y/n) |
| - | 348 | ||
| - | 349 | % Framebuffer support |
|
| - | 350 | ! [PLATFORM=ppc32|(PLATFORM=sparc64&MACHINE=us)] CONFIG_FB (y) |
|
| 179 | 351 | ||
| 180 | % Framebuffer width |
352 | % Framebuffer width |
| 181 | @ "640" |
353 | @ "640" |
| 182 | @ "800" |
354 | @ "800" |
| 183 | @ "1024" |
355 | @ "1024" |