blob: 1379beef80fe518ddbc7a01209a5e77493cfd142 [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
32config LOCALVERSION
Uwe Hermann168b11b2009-10-07 16:15:40 +000033 string "Local version string"
Uwe Hermannc04be932009-10-05 13:55:28 +000034 help
35 Append an extra string to the end of the coreboot version.
36
Uwe Hermann168b11b2009-10-07 16:15:40 +000037 This can be useful if, for instance, you want to append the
38 respective board's hostname or some other identifying string to
39 the coreboot version number, so that you can easily distinguish
40 boot logs of different boards from each other.
41
Uwe Hermannc04be932009-10-05 13:55:28 +000042endmenu
43
Patrick Georgi0588d192009-08-12 15:00:51 +000044source src/mainboard/Kconfig
45source src/arch/i386/Kconfig
46source src/arch/ppc/Kconfig
Patrick Georgi0588d192009-08-12 15:00:51 +000047source src/northbridge/Kconfig
Myles Watson74fb8f22009-09-24 15:09:11 +000048source src/devices/Kconfig
Patrick Georgi0588d192009-08-12 15:00:51 +000049source src/southbridge/Kconfig
50source src/superio/Kconfig
51source src/cpu/Kconfig
52
Patrick Georgi0588d192009-08-12 15:00:51 +000053config PCI_BUS_SEGN_BITS
Myles Watson74fb8f22009-09-24 15:09:11 +000054 int
55 default 0
Patrick Georgi892b0912009-09-24 09:03:06 +000056
Patrick Georgi0588d192009-08-12 15:00:51 +000057config MAINBOARD_PCI_SUBSYSTEM_VENDOR_ID
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +000058 hex
Uwe Hermann748475b2009-10-09 11:47:21 +000059 default 0x0
Patrick Georgi0588d192009-08-12 15:00:51 +000060
61config MAINBOARD_PCI_SUBSYSTEM_DEVICE_ID
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +000062 hex
Uwe Hermann748475b2009-10-09 11:47:21 +000063 default 0x0
Patrick Georgi0588d192009-08-12 15:00:51 +000064
65config CPU_ADDR_BITS
66 int
67 default 36
68
Patrick Georgi0e9a9252009-10-06 20:48:07 +000069config AGP_APERTURE_SIZE
70 hex
Uwe Hermann748475b2009-10-09 11:47:21 +000071 default 0x0
Patrick Georgi0e9a9252009-10-06 20:48:07 +000072
Patrick Georgi0588d192009-08-12 15:00:51 +000073config XIP_ROM_BASE
74 hex
75 default 0xfffe0000
76
77config XIP_ROM_SIZE
78 hex
79 default 0x20000
80
81config LB_CKS_RANGE_START
82 int
83 default 49
84
85config LB_CKS_RANGE_END
86 int
87 default 125
88
89config LB_CKS_LOC
90 int
91 default 126
92
93config LOGICAL_CPUS
Myles Watson45bb25f2009-09-22 18:49:08 +000094 bool
95 default y
Patrick Georgi0588d192009-08-12 15:00:51 +000096
97config PCI_ROM_RUN
Patrick Georgi698c0e0e2009-08-25 17:38:24 +000098 bool
99 default n
Patrick Georgi0588d192009-08-12 15:00:51 +0000100
Patrick Georgi0588d192009-08-12 15:00:51 +0000101config HEAP_SIZE
102 hex
Myles Watson04000f42009-10-16 19:12:49 +0000103 default 0x4000
Patrick Georgi0588d192009-08-12 15:00:51 +0000104
105config COREBOOT_V2
106 bool
107 default y
108
109config COREBOOT_V4
110 bool
111 default y
112
113config DEBUG
114 bool
115 default n
116
117config USE_PRINTK_IN_CAR
118 bool
119 default n
120
121config USE_OPTION_TABLE
122 bool
123 default n
124
125config MAX_CPUS
126 int
127 default 1
128
129config MMCONF_SUPPORT_DEFAULT
130 bool
131 default n
132
133config MMCONF_SUPPORT
134 bool
135 default n
136
Myles Watson0f61a4f2009-10-16 16:32:57 +0000137config RAMTOP
Myles Watson3db199c2009-10-12 22:39:08 +0000138 hex
Myles Watson0f61a4f2009-10-16 16:32:57 +0000139 default 0x200000
Patrick Georgi0588d192009-08-12 15:00:51 +0000140
Patrick Georgi91ff0df2009-10-09 12:32:52 +0000141config ATI_RAGE_XL
142 bool
Patrick Georgi91ff0df2009-10-09 12:32:52 +0000143
Patrick Georgi0588d192009-08-12 15:00:51 +0000144source src/console/Kconfig
145
146config HAVE_ACPI_RESUME
147 bool
148 default n
149
150config ACPI_SSDTX_NUM
151 int
152 default 0
153
Patrick Georgi0588d192009-08-12 15:00:51 +0000154config HAVE_FALLBACK_BOOT
155 bool
156 default y
157
158config USE_FALLBACK_IMAGE
159 bool
160 default y
161
Patrick Georgi37ea3412009-10-03 21:04:13 +0000162config HAVE_FAILOVER_BOOT
163 bool
164 default n
165
166config USE_FAILOVER_IMAGE
167 bool
168 default n
169
Patrick Georgi0588d192009-08-12 15:00:51 +0000170config HAVE_HARD_RESET
171 bool
Uwe Hermann748475b2009-10-09 11:47:21 +0000172 default n
Patrick Georgi0588d192009-08-12 15:00:51 +0000173
174config HAVE_INIT_TIMER
175 bool
176 default n
177
178config HAVE_MAINBOARD_RESOURCES
179 bool
180 default n
181
182config HAVE_MOVNTI
183 bool
184 default y
185
Patrick Georgi0588d192009-08-12 15:00:51 +0000186config HAVE_OPTION_TABLE
187 bool
188 default y
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000189 help
190 This variable specifies whether a given board has a cmos.layout
191 file containing NVRAM/CMOS bit definitions.
192 It defaults to 'y' but can be changed to 'n' in mainboard/*/Kconfig.
Patrick Georgi0588d192009-08-12 15:00:51 +0000193
Patrick Georgi0588d192009-08-12 15:00:51 +0000194config PIRQ_ROUTE
195 bool
196 default n
197
198config HAVE_SMI_HANDLER
199 bool
200 default n
201
202config PCI_IO_CFG_EXT
203 bool
204 default n
205
206config IOAPIC
207 bool
208 default n
209
Uwe Hermann70b0cf22009-10-04 17:15:39 +0000210config VIDEO_MB
211 int
Uwe Hermann70b0cf22009-10-04 17:15:39 +0000212
Myles Watson45bb25f2009-09-22 18:49:08 +0000213config USE_WATCHDOG_ON_BOOT
214 bool
215 default n
216
217config VGA
218 bool
219 default n
220 help
221 Build board-specific VGA code.
222
223config GFXUMA
224 bool
Myles Watson45bb25f2009-09-22 18:49:08 +0000225 help
226 Enable Unified Memory Architecture for graphics.
227
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000228# TODO
229# menu "Drivers"
Uwe Hermann168b11b2009-10-07 16:15:40 +0000230#
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000231# endmenu
Patrick Georgi0588d192009-08-12 15:00:51 +0000232
Myles Watsonb8e20272009-10-15 13:35:47 +0000233config HAVE_ACPI_TABLES
234 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000235 help
236 This variable specifies whether a given board has ACPI table support.
237 It is usually set in mainboard/*/Kconfig.
238 Whether or not the ACPI tables are actually generated by coreboot
239 is configurable by the user via GENERATE_ACPI_TABLES.
Myles Watsonb8e20272009-10-15 13:35:47 +0000240
241config HAVE_MP_TABLE
242 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000243 help
244 This variable specifies whether a given board has MP table support.
245 It is usually set in mainboard/*/Kconfig.
246 Whether or not the MP table is actually generated by coreboot
247 is configurable by the user via GENERATE_MP_TABLE.
Myles Watsonb8e20272009-10-15 13:35:47 +0000248
249config HAVE_PIRQ_TABLE
250 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000251 help
252 This variable specifies whether a given board has PIRQ table support.
253 It is usually set in mainboard/*/Kconfig.
254 Whether or not the PIRQ table is actually generated by coreboot
255 is configurable by the user via GENERATE_PIRQ_TABLE.
Myles Watsonb8e20272009-10-15 13:35:47 +0000256
257config HAVE_HIGH_TABLES
258 bool
259
Uwe Hermann168b11b2009-10-07 16:15:40 +0000260menu "System tables"
Myles Watson45bb25f2009-09-22 18:49:08 +0000261
262config HAVE_LOW_TABLES
263 bool
264 default y
265
Myles Watsonb8e20272009-10-15 13:35:47 +0000266config WRITE_HIGH_TABLES
Myles Watson45bb25f2009-09-22 18:49:08 +0000267 bool "Write 'high' tables to avoid being overwritten in F segment"
Myles Watsonb8e20272009-10-15 13:35:47 +0000268 depends on HAVE_HIGH_TABLES
Myles Watson45bb25f2009-09-22 18:49:08 +0000269 default y
270
271config MULTIBOOT
Uwe Hermann168b11b2009-10-07 16:15:40 +0000272 bool "Generate Multiboot tables (for GRUB2)"
Myles Watson45bb25f2009-09-22 18:49:08 +0000273 default n
274
Myles Watsonb8e20272009-10-15 13:35:47 +0000275config GENERATE_ACPI_TABLES
276 depends on HAVE_ACPI_TABLES
Myles Watson45bb25f2009-09-22 18:49:08 +0000277 bool "Generate ACPI tables"
Myles Watsonb8e20272009-10-15 13:35:47 +0000278 default y
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000279 help
280 Generate ACPI tables for this board.
281
282 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000283
Myles Watsonb8e20272009-10-15 13:35:47 +0000284config GENERATE_MP_TABLE
285 depends on HAVE_MP_TABLE
Myles Watson45bb25f2009-09-22 18:49:08 +0000286 bool "Generate an MP table"
Myles Watsonb8e20272009-10-15 13:35:47 +0000287 default y
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000288 help
289 Generate an MP table (conforming to the Intel MultiProcessor
290 specification 1.4) for this board.
291
292 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000293
Myles Watsonb8e20272009-10-15 13:35:47 +0000294config GENERATE_PIRQ_TABLE
295 depends on HAVE_PIRQ_TABLE
Myles Watson45bb25f2009-09-22 18:49:08 +0000296 bool "Generate a PIRQ table"
Myles Watsonb8e20272009-10-15 13:35:47 +0000297 default y
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000298 help
299 Generate a PIRQ table for this board.
300
301 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000302
303endmenu
304
Patrick Georgi0588d192009-08-12 15:00:51 +0000305menu "Payload"
306
Patrick Georgi0588d192009-08-12 15:00:51 +0000307choice
Uwe Hermann168b11b2009-10-07 16:15:40 +0000308 prompt "Add a payload"
Patrick Georgi0588d192009-08-12 15:00:51 +0000309 default PAYLOAD_NONE
310
Uwe Hermann168b11b2009-10-07 16:15:40 +0000311config PAYLOAD_NONE
312 bool "None"
313 help
314 Select this option if you want to create an "empty" coreboot
315 ROM image for a certain mainboard, i.e. a coreboot ROM image
316 which does not yet contain a payload.
317
318 For such an image to be useful, you have to use 'cbfstool'
319 to add a payload to the ROM image later.
320
Patrick Georgi0588d192009-08-12 15:00:51 +0000321config PAYLOAD_ELF
Uwe Hermann168b11b2009-10-07 16:15:40 +0000322 bool "An ELF executable payload"
Patrick Georgi0588d192009-08-12 15:00:51 +0000323 help
324 Select this option if you have a payload image (an ELF file)
325 which coreboot should run as soon as the basic hardware
326 initialization is completed.
327
328 You will be able to specify the location and file name of the
329 payload image later.
Patrick Georgi0588d192009-08-12 15:00:51 +0000330
331endchoice
332
Patrick Georgi0588d192009-08-12 15:00:51 +0000333config FALLBACK_PAYLOAD_FILE
Cristi Magherusanb5034d42009-08-17 14:47:32 +0000334 string "Payload path and filename"
Patrick Georgi0588d192009-08-12 15:00:51 +0000335 depends on PAYLOAD_ELF
336 default "payload.elf"
337 help
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000338 The path and filename of the ELF executable file to use as payload.
Patrick Georgi0588d192009-08-12 15:00:51 +0000339
Uwe Hermann168b11b2009-10-07 16:15:40 +0000340# TODO: Defined if no payload? Breaks build?
341config COMPRESSED_PAYLOAD_LZMA
342 bool "Use LZMA compression for payloads"
343 default y
344 depends on PAYLOAD_ELF
345 help
346 In order to reduce the size payloads take up in the ROM chip
347 coreboot can compress them using the LZMA algorithm.
348
Myles Watson04000f42009-10-16 19:12:49 +0000349config COMPRESSED_PAYLOAD_NRV2B
350 default n
351
Peter Stugea758ca22009-09-17 16:21:31 +0000352endmenu
353
354menu "VGA BIOS"
355
356config VGA_BIOS
357 bool "Add a VGA BIOS image"
358 help
359 Select this option if you have a VGA BIOS image that you would
360 like to add to your ROM.
361
362 You will be able to specify the location and file name of the
363 image later.
364
Cristi Magherusan488c36c2009-08-17 14:46:13 +0000365config FALLBACK_VGA_BIOS_FILE
366 string "VGA BIOS path and filename"
367 depends on VGA_BIOS
368 default "vgabios.bin"
369 help
370 The path and filename of the file to use as VGA BIOS.
371
372config FALLBACK_VGA_BIOS_ID
373 string "VGA BIOS ID"
374 depends on VGA_BIOS
375 default "1106,3230"
376 help
Uwe Hermann168b11b2009-10-07 16:15:40 +0000377 The comma-separated PCI vendor and device ID that would associate
378 your VGA BIOS to your video card.
379
380 Example: 1106,3230
381
382 In the above example 1106 is the PCI vendor ID (in hex, but without
383 the "0x" prefix) and 3230 specifies the PCI device ID of the
384 video card (also in hex, without "0x" prefix).
Cristi Magherusan488c36c2009-08-17 14:46:13 +0000385
Patrick Georgi0588d192009-08-12 15:00:51 +0000386endmenu
387
Uwe Hermann168b11b2009-10-07 16:15:40 +0000388menu "Debugging"
389
390# TODO: Better help text and detailed instructions.
Patrick Georgi0588d192009-08-12 15:00:51 +0000391config GDB_STUB
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000392 bool "GDB debugging support"
Patrick Georgi0588d192009-08-12 15:00:51 +0000393 default y
394 help
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000395 If enabled, you will be able to set breakpoints for gdb debugging.
396 See src/arch/i386/lib/c_start.S for details.
Patrick Georgi0588d192009-08-12 15:00:51 +0000397
Uwe Hermann168b11b2009-10-07 16:15:40 +0000398endmenu
399