blob: 1625a0035de97f8646072e1d84484308d4697b0c [file] [log] [blame]
Patrick Georgi0588d192009-08-12 15:00:51 +00001##
2## This file is part of the coreboot repair project.
3##
4## Redistribution and use in source and binary forms, with or without
5## modification, are permitted provided that the following conditions
6## are met:
7## 1. Redistributions of source code must retain the above copyright
8## notice, this list of conditions and the following disclaimer.
9## 2. Redistributions in binary form must reproduce the above copyright
10## notice, this list of conditions and the following disclaimer in the
11## documentation and/or other materials provided with the distribution.
12## 3. The name of the author may not be used to endorse or promote products
13## derived from this software without specific prior written permission.
14##
15## THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
16## ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17## IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18## ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
19## FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20## DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21## OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22## HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23## LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24## OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25## SUCH DAMAGE.
26##
27
28mainmenu "Coreboot Configuration"
29
Uwe Hermannc04be932009-10-05 13:55:28 +000030menu "General setup"
31
Uwe Hermanna29ad5c2009-10-18 18:35:50 +000032config EXPERT
33 bool "Expert mode"
34 help
35 This allows you to select certain advanced configuration options.
36
37 Warning: Only enable this option if you really know what you are
38 doing! You have been warned!
39
Uwe Hermannc04be932009-10-05 13:55:28 +000040config LOCALVERSION
Uwe Hermann168b11b2009-10-07 16:15:40 +000041 string "Local version string"
Uwe Hermannc04be932009-10-05 13:55:28 +000042 help
43 Append an extra string to the end of the coreboot version.
44
Uwe Hermann168b11b2009-10-07 16:15:40 +000045 This can be useful if, for instance, you want to append the
46 respective board's hostname or some other identifying string to
47 the coreboot version number, so that you can easily distinguish
48 boot logs of different boards from each other.
49
Uwe Hermannc04be932009-10-05 13:55:28 +000050endmenu
51
Patrick Georgi0588d192009-08-12 15:00:51 +000052source src/mainboard/Kconfig
53source src/arch/i386/Kconfig
54source src/arch/ppc/Kconfig
Patrick Georgi0588d192009-08-12 15:00:51 +000055source src/northbridge/Kconfig
Myles Watson74fb8f22009-09-24 15:09:11 +000056source src/devices/Kconfig
Patrick Georgi0588d192009-08-12 15:00:51 +000057source src/southbridge/Kconfig
58source src/superio/Kconfig
59source src/cpu/Kconfig
60
Patrick Georgi0588d192009-08-12 15:00:51 +000061config PCI_BUS_SEGN_BITS
Myles Watson74fb8f22009-09-24 15:09:11 +000062 int
63 default 0
Patrick Georgi892b0912009-09-24 09:03:06 +000064
Patrick Georgi0588d192009-08-12 15:00:51 +000065config MAINBOARD_PCI_SUBSYSTEM_VENDOR_ID
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +000066 hex
Uwe Hermann748475b2009-10-09 11:47:21 +000067 default 0x0
Patrick Georgi0588d192009-08-12 15:00:51 +000068
69config MAINBOARD_PCI_SUBSYSTEM_DEVICE_ID
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +000070 hex
Uwe Hermann748475b2009-10-09 11:47:21 +000071 default 0x0
Patrick Georgi0588d192009-08-12 15:00:51 +000072
73config CPU_ADDR_BITS
74 int
75 default 36
76
Patrick Georgi0e9a9252009-10-06 20:48:07 +000077config AGP_APERTURE_SIZE
78 hex
Uwe Hermann748475b2009-10-09 11:47:21 +000079 default 0x0
Patrick Georgi0e9a9252009-10-06 20:48:07 +000080
Patrick Georgi0588d192009-08-12 15:00:51 +000081config XIP_ROM_BASE
82 hex
83 default 0xfffe0000
84
85config XIP_ROM_SIZE
86 hex
87 default 0x20000
88
89config LB_CKS_RANGE_START
90 int
91 default 49
92
93config LB_CKS_RANGE_END
94 int
95 default 125
96
97config LB_CKS_LOC
98 int
99 default 126
100
101config LOGICAL_CPUS
Myles Watson45bb25f2009-09-22 18:49:08 +0000102 bool
103 default y
Patrick Georgi0588d192009-08-12 15:00:51 +0000104
105config PCI_ROM_RUN
Patrick Georgi698c0e0e2009-08-25 17:38:24 +0000106 bool
107 default n
Patrick Georgi0588d192009-08-12 15:00:51 +0000108
Patrick Georgi0588d192009-08-12 15:00:51 +0000109config HEAP_SIZE
110 hex
Myles Watson04000f42009-10-16 19:12:49 +0000111 default 0x4000
Patrick Georgi0588d192009-08-12 15:00:51 +0000112
113config COREBOOT_V2
114 bool
115 default y
116
117config COREBOOT_V4
118 bool
119 default y
120
121config DEBUG
122 bool
123 default n
124
125config USE_PRINTK_IN_CAR
126 bool
127 default n
128
129config USE_OPTION_TABLE
130 bool
131 default n
132
133config MAX_CPUS
134 int
135 default 1
136
137config MMCONF_SUPPORT_DEFAULT
138 bool
139 default n
140
141config MMCONF_SUPPORT
142 bool
143 default n
144
Myles Watson0f61a4f2009-10-16 16:32:57 +0000145config RAMTOP
Myles Watson3db199c2009-10-12 22:39:08 +0000146 hex
Myles Watson0f61a4f2009-10-16 16:32:57 +0000147 default 0x200000
Patrick Georgi0588d192009-08-12 15:00:51 +0000148
Patrick Georgi91ff0df2009-10-09 12:32:52 +0000149config ATI_RAGE_XL
150 bool
Patrick Georgi91ff0df2009-10-09 12:32:52 +0000151
Patrick Georgi0588d192009-08-12 15:00:51 +0000152source src/console/Kconfig
153
154config HAVE_ACPI_RESUME
155 bool
156 default n
157
158config ACPI_SSDTX_NUM
159 int
160 default 0
161
Patrick Georgi0588d192009-08-12 15:00:51 +0000162config HAVE_FALLBACK_BOOT
163 bool
164 default y
165
166config USE_FALLBACK_IMAGE
167 bool
168 default y
169
Patrick Georgi37ea3412009-10-03 21:04:13 +0000170config HAVE_FAILOVER_BOOT
171 bool
172 default n
173
174config USE_FAILOVER_IMAGE
175 bool
176 default n
177
Patrick Georgi0588d192009-08-12 15:00:51 +0000178config HAVE_HARD_RESET
179 bool
Uwe Hermann748475b2009-10-09 11:47:21 +0000180 default n
Patrick Georgi0588d192009-08-12 15:00:51 +0000181
182config HAVE_INIT_TIMER
183 bool
184 default n
185
186config HAVE_MAINBOARD_RESOURCES
187 bool
188 default n
189
190config HAVE_MOVNTI
191 bool
192 default y
193
Patrick Georgi0588d192009-08-12 15:00:51 +0000194config HAVE_OPTION_TABLE
195 bool
196 default y
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000197 help
198 This variable specifies whether a given board has a cmos.layout
199 file containing NVRAM/CMOS bit definitions.
200 It defaults to 'y' but can be changed to 'n' in mainboard/*/Kconfig.
Patrick Georgi0588d192009-08-12 15:00:51 +0000201
Patrick Georgi0588d192009-08-12 15:00:51 +0000202config PIRQ_ROUTE
203 bool
204 default n
205
206config HAVE_SMI_HANDLER
207 bool
208 default n
209
210config PCI_IO_CFG_EXT
211 bool
212 default n
213
214config IOAPIC
215 bool
216 default n
217
Uwe Hermann70b0cf22009-10-04 17:15:39 +0000218config VIDEO_MB
219 int
Uwe Hermann70b0cf22009-10-04 17:15:39 +0000220
Myles Watson45bb25f2009-09-22 18:49:08 +0000221config USE_WATCHDOG_ON_BOOT
222 bool
223 default n
224
225config VGA
226 bool
227 default n
228 help
229 Build board-specific VGA code.
230
231config GFXUMA
232 bool
Myles Watson45bb25f2009-09-22 18:49:08 +0000233 help
234 Enable Unified Memory Architecture for graphics.
235
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000236# TODO
237# menu "Drivers"
Uwe Hermann168b11b2009-10-07 16:15:40 +0000238#
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000239# endmenu
Patrick Georgi0588d192009-08-12 15:00:51 +0000240
Myles Watsonb8e20272009-10-15 13:35:47 +0000241config HAVE_ACPI_TABLES
242 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000243 help
244 This variable specifies whether a given board has ACPI table support.
245 It is usually set in mainboard/*/Kconfig.
246 Whether or not the ACPI tables are actually generated by coreboot
247 is configurable by the user via GENERATE_ACPI_TABLES.
Myles Watsonb8e20272009-10-15 13:35:47 +0000248
249config HAVE_MP_TABLE
250 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000251 help
252 This variable specifies whether a given board has MP table support.
253 It is usually set in mainboard/*/Kconfig.
254 Whether or not the MP table is actually generated by coreboot
255 is configurable by the user via GENERATE_MP_TABLE.
Myles Watsonb8e20272009-10-15 13:35:47 +0000256
257config HAVE_PIRQ_TABLE
258 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000259 help
260 This variable specifies whether a given board has PIRQ table support.
261 It is usually set in mainboard/*/Kconfig.
262 Whether or not the PIRQ table is actually generated by coreboot
263 is configurable by the user via GENERATE_PIRQ_TABLE.
Myles Watsonb8e20272009-10-15 13:35:47 +0000264
265config HAVE_HIGH_TABLES
266 bool
267
Uwe Hermann168b11b2009-10-07 16:15:40 +0000268menu "System tables"
Myles Watson45bb25f2009-09-22 18:49:08 +0000269
270config HAVE_LOW_TABLES
271 bool
272 default y
273
Myles Watsonb8e20272009-10-15 13:35:47 +0000274config WRITE_HIGH_TABLES
Myles Watson45bb25f2009-09-22 18:49:08 +0000275 bool "Write 'high' tables to avoid being overwritten in F segment"
Myles Watsonb8e20272009-10-15 13:35:47 +0000276 depends on HAVE_HIGH_TABLES
Myles Watson45bb25f2009-09-22 18:49:08 +0000277 default y
278
279config MULTIBOOT
Uwe Hermann168b11b2009-10-07 16:15:40 +0000280 bool "Generate Multiboot tables (for GRUB2)"
Myles Watson45bb25f2009-09-22 18:49:08 +0000281 default n
282
Myles Watsonb8e20272009-10-15 13:35:47 +0000283config GENERATE_ACPI_TABLES
284 depends on HAVE_ACPI_TABLES
Myles Watson45bb25f2009-09-22 18:49:08 +0000285 bool "Generate ACPI tables"
Myles Watsonb8e20272009-10-15 13:35:47 +0000286 default y
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000287 help
288 Generate ACPI tables for this board.
289
290 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000291
Myles Watsonb8e20272009-10-15 13:35:47 +0000292config GENERATE_MP_TABLE
293 depends on HAVE_MP_TABLE
Myles Watson45bb25f2009-09-22 18:49:08 +0000294 bool "Generate an MP table"
Myles Watsonb8e20272009-10-15 13:35:47 +0000295 default y
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000296 help
297 Generate an MP table (conforming to the Intel MultiProcessor
298 specification 1.4) for this board.
299
300 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000301
Myles Watsonb8e20272009-10-15 13:35:47 +0000302config GENERATE_PIRQ_TABLE
303 depends on HAVE_PIRQ_TABLE
Myles Watson45bb25f2009-09-22 18:49:08 +0000304 bool "Generate a PIRQ table"
Myles Watsonb8e20272009-10-15 13:35:47 +0000305 default y
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000306 help
307 Generate a PIRQ table for this board.
308
309 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000310
311endmenu
312
Patrick Georgi0588d192009-08-12 15:00:51 +0000313menu "Payload"
314
Patrick Georgi0588d192009-08-12 15:00:51 +0000315choice
Uwe Hermann168b11b2009-10-07 16:15:40 +0000316 prompt "Add a payload"
Patrick Georgi0588d192009-08-12 15:00:51 +0000317 default PAYLOAD_NONE
318
Uwe Hermann168b11b2009-10-07 16:15:40 +0000319config PAYLOAD_NONE
320 bool "None"
321 help
322 Select this option if you want to create an "empty" coreboot
323 ROM image for a certain mainboard, i.e. a coreboot ROM image
324 which does not yet contain a payload.
325
326 For such an image to be useful, you have to use 'cbfstool'
327 to add a payload to the ROM image later.
328
Patrick Georgi0588d192009-08-12 15:00:51 +0000329config PAYLOAD_ELF
Uwe Hermann168b11b2009-10-07 16:15:40 +0000330 bool "An ELF executable payload"
Patrick Georgi0588d192009-08-12 15:00:51 +0000331 help
332 Select this option if you have a payload image (an ELF file)
333 which coreboot should run as soon as the basic hardware
334 initialization is completed.
335
336 You will be able to specify the location and file name of the
337 payload image later.
Patrick Georgi0588d192009-08-12 15:00:51 +0000338
339endchoice
340
Patrick Georgi0588d192009-08-12 15:00:51 +0000341config FALLBACK_PAYLOAD_FILE
Cristi Magherusanb5034d42009-08-17 14:47:32 +0000342 string "Payload path and filename"
Patrick Georgi0588d192009-08-12 15:00:51 +0000343 depends on PAYLOAD_ELF
344 default "payload.elf"
345 help
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000346 The path and filename of the ELF executable file to use as payload.
Patrick Georgi0588d192009-08-12 15:00:51 +0000347
Uwe Hermann168b11b2009-10-07 16:15:40 +0000348# TODO: Defined if no payload? Breaks build?
349config COMPRESSED_PAYLOAD_LZMA
350 bool "Use LZMA compression for payloads"
351 default y
352 depends on PAYLOAD_ELF
353 help
354 In order to reduce the size payloads take up in the ROM chip
355 coreboot can compress them using the LZMA algorithm.
356
Myles Watson04000f42009-10-16 19:12:49 +0000357config COMPRESSED_PAYLOAD_NRV2B
Peter Stuged7b37b02009-10-17 03:00:04 +0000358 bool
Myles Watson04000f42009-10-16 19:12:49 +0000359 default n
360
Peter Stugea758ca22009-09-17 16:21:31 +0000361endmenu
362
363menu "VGA BIOS"
364
365config VGA_BIOS
366 bool "Add a VGA BIOS image"
367 help
368 Select this option if you have a VGA BIOS image that you would
369 like to add to your ROM.
370
371 You will be able to specify the location and file name of the
372 image later.
373
Cristi Magherusan488c36c2009-08-17 14:46:13 +0000374config FALLBACK_VGA_BIOS_FILE
375 string "VGA BIOS path and filename"
376 depends on VGA_BIOS
377 default "vgabios.bin"
378 help
379 The path and filename of the file to use as VGA BIOS.
380
381config FALLBACK_VGA_BIOS_ID
382 string "VGA BIOS ID"
383 depends on VGA_BIOS
384 default "1106,3230"
385 help
Uwe Hermann168b11b2009-10-07 16:15:40 +0000386 The comma-separated PCI vendor and device ID that would associate
387 your VGA BIOS to your video card.
388
389 Example: 1106,3230
390
391 In the above example 1106 is the PCI vendor ID (in hex, but without
392 the "0x" prefix) and 3230 specifies the PCI device ID of the
393 video card (also in hex, without "0x" prefix).
Cristi Magherusan488c36c2009-08-17 14:46:13 +0000394
Patrick Georgi0588d192009-08-12 15:00:51 +0000395endmenu
396
Uwe Hermann168b11b2009-10-07 16:15:40 +0000397menu "Debugging"
398
399# TODO: Better help text and detailed instructions.
Patrick Georgi0588d192009-08-12 15:00:51 +0000400config GDB_STUB
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000401 bool "GDB debugging support"
Patrick Georgi0588d192009-08-12 15:00:51 +0000402 default y
403 help
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000404 If enabled, you will be able to set breakpoints for gdb debugging.
405 See src/arch/i386/lib/c_start.S for details.
Patrick Georgi0588d192009-08-12 15:00:51 +0000406
Uwe Hermann168b11b2009-10-07 16:15:40 +0000407endmenu
408
Myles Watson8f74c582009-10-20 16:10:04 +0000409config LIFT_BSP_APIC_ID
410 bool
411 default n