blob: 74fd015242a4a25dbdf992a9a9829de14a241771 [file] [log] [blame]
Patrick Georgi0588d192009-08-12 15:00:51 +00001##
Stefan Reinauer16f515a2010-01-20 18:44:30 +00002## This file is part of the coreboot project.
Patrick Georgi0588d192009-08-12 15:00:51 +00003##
Stefan Reinauer16f515a2010-01-20 18:44:30 +00004## Copyright (C) 2009-2010 coresystems GmbH
Patrick Georgi0588d192009-08-12 15:00:51 +00005##
Stefan Reinauer16f515a2010-01-20 18:44:30 +00006## This program is free software; you can redistribute it and/or modify
7## it under the terms of the GNU General Public License as published by
8## the Free Software Foundation; version 2 of the License.
9##
10## This program is distributed in the hope that it will be useful,
11## but WITHOUT ANY WARRANTY; without even the implied warranty of
12## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13## GNU General Public License for more details.
14##
15## You should have received a copy of the GNU General Public License
16## along with this program; if not, write to the Free Software
17## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Patrick Georgi0588d192009-08-12 15:00:51 +000018##
19
20mainmenu "Coreboot Configuration"
21
Uwe Hermannc04be932009-10-05 13:55:28 +000022menu "General setup"
23
Uwe Hermanna29ad5c2009-10-18 18:35:50 +000024config EXPERT
25 bool "Expert mode"
26 help
27 This allows you to select certain advanced configuration options.
28
29 Warning: Only enable this option if you really know what you are
30 doing! You have been warned!
31
Uwe Hermannc04be932009-10-05 13:55:28 +000032config 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
Patrick Georgi4b8a2412010-02-09 19:35:16 +000042config CBFS_PREFIX
43 string "CBFS prefix to use"
44 default "fallback"
45 help
46 Select the prefix to all files put into the image. It's "fallback"
47 by default, "normal" is a common alternative.
48
Patrick Georgi23d89cc2010-03-16 01:17:19 +000049choice
50 prompt "Compiler"
51 default COMPILER_GCC
52 help
53 This option allows you to select the compiler used for building
54 coreboot.
55
56config COMPILER_GCC
57 bool "GCC"
58config COMPILER_LLVM_CLANG
59 bool "LLVM/clang"
60endchoice
61
Patrick Georgi020f51f2010-03-14 21:25:03 +000062config SCANBUILD_ENABLE
Patrick Georgi23d89cc2010-03-16 01:17:19 +000063 bool "Build with scan-build for static analysis"
Patrick Georgi020f51f2010-03-14 21:25:03 +000064 default n
65 help
66 Changes the build process to scan-build is used.
67 Requires scan-build in path.
68
69config SCANBUILD_REPORT_LOCATION
Patrick Georgi23d89cc2010-03-16 01:17:19 +000070 string "Directory to put scan-build report in"
Patrick Georgi020f51f2010-03-14 21:25:03 +000071 default ""
72 depends on SCANBUILD_ENABLE
73 help
74 Where the scan-build report should be stored
75
Patrick Georgi516a2a72010-03-25 21:45:25 +000076config CCACHE
77 bool "ccache"
78 default n
79 help
80 Enables the use of ccache for faster builds.
81 Requires ccache in path.
82
Stefan Reinauer9bf78102010-08-09 13:28:18 +000083config SCONFIG_GENPARSER
84 bool "Generate SCONFIG parser using flex and bison"
85 default n
86 depends on EXPERT
87 help
88 Enable this option if you are working on the sconfig
89 device tree parser and made changes to sconfig.l and
Sven Schnelle164bcfd2011-08-14 20:56:34 +020090 sconfig.y.
Stefan Reinauer9bf78102010-08-09 13:28:18 +000091 Otherwise, say N.
92
Joe Korty6d772522010-05-19 18:41:15 +000093config USE_OPTION_TABLE
94 bool "Use CMOS for configuration values"
95 default n
Edwin Beasanteb50c7d2010-07-06 21:05:04 +000096 depends on HAVE_OPTION_TABLE
Joe Korty6d772522010-05-19 18:41:15 +000097 help
98 Enable this option if coreboot shall read options from the "CMOS"
99 NVRAM instead of using hard coded values.
100
Sven Schnelle8eee19d2011-05-02 19:53:04 +0000101config COMPRESS_RAMSTAGE
102 bool "Compress ramstage with LZMA"
103 default y
104 help
105 Compress ramstage to save memory in the flash image. Note
106 that decompression might slow down booting if the boot flash
107 is connected through a slow Link (i.e. SPI)
108
Cristian Măgherușan-Stanciud367b002011-06-19 03:03:28 +0200109config INCLUDE_CONFIG_FILE
110 bool "Include the coreboot config file into the ROM image"
111 default y
112 help
113 Include in CBFS the coreboot config file that was used to compile the ROM image
114
Vadim Bendeburye6b6aff2011-09-20 16:46:46 -0700115config EARLY_CBMEM_INIT
116 bool "Initialize CBMEM while in ROM stage"
117 default n
118 help
119 Make coreboot initialize the cbmem structures while running in rom
120 stage. This could be useful when the rom stage wants to communicate
121 some, for instance, execution timestamps.
122
Vadim Bendebury9202473d2011-09-21 14:46:43 -0700123config COLLECT_TIMESTAMPS
124 bool "Create a table of timestamps collected during boot"
125 depends on EARLY_CBMEM_INIT
126 help
127 Make coreboot create a table of timer id/timer value pairs to
128 allow measuring time spent at different phases of the boot
129 process.
Uwe Hermannc04be932009-10-05 13:55:28 +0000130endmenu
131
Patrick Georgi0588d192009-08-12 15:00:51 +0000132source src/mainboard/Kconfig
Stefan Reinauer8aedcbc2010-12-16 23:37:17 +0000133
134# This option is used to set the architecture of a mainboard to X86.
135# It is usually set in mainboard/*/Kconfig.
136config ARCH_X86
137 bool
138 default n
139
140if ARCH_X86
Stefan Reinauer8677a232010-12-11 20:33:41 +0000141source src/arch/x86/Kconfig
Stefan Reinauer8aedcbc2010-12-16 23:37:17 +0000142endif
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000143
144menu "Chipset"
145
146comment "CPU"
Patrick Georgi0588d192009-08-12 15:00:51 +0000147source src/cpu/Kconfig
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000148comment "Northbridge"
149source src/northbridge/Kconfig
150comment "Southbridge"
151source src/southbridge/Kconfig
152comment "Super I/O"
153source src/superio/Kconfig
154comment "Devices"
155source src/devices/Kconfig
Sven Schnelle7592e8b2011-01-27 11:43:03 +0000156comment "Embedded Controllers"
157source src/ec/Kconfig
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000158
159endmenu
Patrick Georgi0588d192009-08-12 15:00:51 +0000160
Rudolf Marekd9c25492010-05-16 15:31:53 +0000161menu "Generic Drivers"
162source src/drivers/Kconfig
163endmenu
164
Patrick Georgi0588d192009-08-12 15:00:51 +0000165config PCI_BUS_SEGN_BITS
Myles Watson74fb8f22009-09-24 15:09:11 +0000166 int
167 default 0
Patrick Georgi892b0912009-09-24 09:03:06 +0000168
Patrick Georgi0588d192009-08-12 15:00:51 +0000169config PCI_ROM_RUN
Patrick Georgi698c0e0e2009-08-25 17:38:24 +0000170 bool
171 default n
Patrick Georgi0588d192009-08-12 15:00:51 +0000172
Patrick Georgi0588d192009-08-12 15:00:51 +0000173config HEAP_SIZE
174 hex
Myles Watson04000f42009-10-16 19:12:49 +0000175 default 0x4000
Patrick Georgi0588d192009-08-12 15:00:51 +0000176
Patrick Georgi0588d192009-08-12 15:00:51 +0000177config MAX_CPUS
178 int
179 default 1
180
181config MMCONF_SUPPORT_DEFAULT
182 bool
183 default n
184
185config MMCONF_SUPPORT
186 bool
187 default n
188
Patrick Georgi0588d192009-08-12 15:00:51 +0000189source src/console/Kconfig
190
Stefan Reinauer4885daa2011-04-26 23:47:04 +0000191# This should default to N and be set by SuperI/O drivers that have an UART
192config HAVE_UART_IO_MAPPED
193 bool
194 default y
195
196config HAVE_UART_MEMORY_MAPPED
197 bool
198 default n
199
Patrick Georgi0588d192009-08-12 15:00:51 +0000200config HAVE_ACPI_RESUME
201 bool
202 default n
203
Stefan Reinauerc4f1a772010-06-05 10:03:08 +0000204config HAVE_ACPI_SLIC
205 bool
206 default n
207
Patrick Georgi0588d192009-08-12 15:00:51 +0000208config ACPI_SSDTX_NUM
209 int
210 default 0
211
Patrick Georgi0588d192009-08-12 15:00:51 +0000212config HAVE_HARD_RESET
213 bool
Patrick Georgi37bdb872010-02-27 08:39:04 +0000214 default y if BOARD_HAS_HARD_RESET
Uwe Hermann748475b2009-10-09 11:47:21 +0000215 default n
Patrick Georgi37bdb872010-02-27 08:39:04 +0000216 help
217 This variable specifies whether a given board has a hard_reset
218 function, no matter if it's provided by board code or chipset code.
219
Patrick Georgi0588d192009-08-12 15:00:51 +0000220config HAVE_INIT_TIMER
221 bool
Patrick Georgi1f807fd2010-01-04 20:09:27 +0000222 default n if UDELAY_IO
Myles Watsond73c1b52009-10-26 15:14:07 +0000223 default y
Patrick Georgi0588d192009-08-12 15:00:51 +0000224
225config HAVE_MAINBOARD_RESOURCES
226 bool
227 default n
228
Edwin Beasanteb50c7d2010-07-06 21:05:04 +0000229config USE_OPTION_TABLE
230 bool
231 default n
232
Patrick Georgi0588d192009-08-12 15:00:51 +0000233config HAVE_OPTION_TABLE
234 bool
Edwin Beasanteb50c7d2010-07-06 21:05:04 +0000235 default n
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000236 help
237 This variable specifies whether a given board has a cmos.layout
238 file containing NVRAM/CMOS bit definitions.
Edwin Beasanteb50c7d2010-07-06 21:05:04 +0000239 It defaults to 'n' but can be selected in mainboard/*/Kconfig.
Patrick Georgi0588d192009-08-12 15:00:51 +0000240
Patrick Georgi0588d192009-08-12 15:00:51 +0000241config PIRQ_ROUTE
242 bool
243 default n
244
245config HAVE_SMI_HANDLER
246 bool
247 default n
248
249config PCI_IO_CFG_EXT
250 bool
251 default n
252
253config IOAPIC
254 bool
255 default n
256
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000257# TODO: Can probably be removed once all chipsets have kconfig options for it.
Uwe Hermann70b0cf22009-10-04 17:15:39 +0000258config VIDEO_MB
259 int
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000260 default 0
Uwe Hermann70b0cf22009-10-04 17:15:39 +0000261
Myles Watson45bb25f2009-09-22 18:49:08 +0000262config USE_WATCHDOG_ON_BOOT
263 bool
264 default n
265
266config VGA
267 bool
268 default n
269 help
270 Build board-specific VGA code.
271
272config GFXUMA
273 bool
Myles Watsond73c1b52009-10-26 15:14:07 +0000274 default n
Myles Watson45bb25f2009-09-22 18:49:08 +0000275 help
276 Enable Unified Memory Architecture for graphics.
277
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000278# TODO
279# menu "Drivers"
Uwe Hermann168b11b2009-10-07 16:15:40 +0000280#
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000281# endmenu
Patrick Georgi0588d192009-08-12 15:00:51 +0000282
Myles Watsonb8e20272009-10-15 13:35:47 +0000283config HAVE_ACPI_TABLES
284 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000285 help
286 This variable specifies whether a given board has ACPI table support.
287 It is usually set in mainboard/*/Kconfig.
288 Whether or not the ACPI tables are actually generated by coreboot
289 is configurable by the user via GENERATE_ACPI_TABLES.
Myles Watsonb8e20272009-10-15 13:35:47 +0000290
291config HAVE_MP_TABLE
292 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000293 help
294 This variable specifies whether a given board has MP table support.
295 It is usually set in mainboard/*/Kconfig.
296 Whether or not the MP table is actually generated by coreboot
297 is configurable by the user via GENERATE_MP_TABLE.
Myles Watsonb8e20272009-10-15 13:35:47 +0000298
299config HAVE_PIRQ_TABLE
300 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000301 help
302 This variable specifies whether a given board has PIRQ table support.
303 It is usually set in mainboard/*/Kconfig.
304 Whether or not the PIRQ table is actually generated by coreboot
305 is configurable by the user via GENERATE_PIRQ_TABLE.
Myles Watsonb8e20272009-10-15 13:35:47 +0000306
Myles Watsond73c1b52009-10-26 15:14:07 +0000307#These Options are here to avoid "undefined" warnings.
308#The actual selection and help texts are in the following menu.
309
310config GENERATE_ACPI_TABLES
Myles Watsonb8e20272009-10-15 13:35:47 +0000311 bool
Myles Watsond73c1b52009-10-26 15:14:07 +0000312 default HAVE_ACPI_TABLES
313
314config GENERATE_MP_TABLE
315 bool
316 default HAVE_MP_TABLE
317
318config GENERATE_PIRQ_TABLE
319 bool
320 default HAVE_PIRQ_TABLE
321
Sven Schnelle164bcfd2011-08-14 20:56:34 +0200322config GENERATE_SMBIOS_TABLES
323 bool
324 default y
325
Uwe Hermann168b11b2009-10-07 16:15:40 +0000326menu "System tables"
Myles Watson45bb25f2009-09-22 18:49:08 +0000327
Myles Watsonb8e20272009-10-15 13:35:47 +0000328config WRITE_HIGH_TABLES
Myles Watson45bb25f2009-09-22 18:49:08 +0000329 bool "Write 'high' tables to avoid being overwritten in F segment"
330 default y
331
332config MULTIBOOT
Uwe Hermann168b11b2009-10-07 16:15:40 +0000333 bool "Generate Multiboot tables (for GRUB2)"
Ronald G. Minnich7f91d922009-11-09 17:56:47 +0000334 default y
Myles Watson45bb25f2009-09-22 18:49:08 +0000335
Myles Watsonb8e20272009-10-15 13:35:47 +0000336config GENERATE_ACPI_TABLES
337 depends on HAVE_ACPI_TABLES
Myles Watson45bb25f2009-09-22 18:49:08 +0000338 bool "Generate ACPI tables"
Myles Watsonb8e20272009-10-15 13:35:47 +0000339 default y
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000340 help
341 Generate ACPI tables for this board.
342
343 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000344
Myles Watsonb8e20272009-10-15 13:35:47 +0000345config GENERATE_MP_TABLE
346 depends on HAVE_MP_TABLE
Myles Watson45bb25f2009-09-22 18:49:08 +0000347 bool "Generate an MP table"
Myles Watsonb8e20272009-10-15 13:35:47 +0000348 default y
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000349 help
350 Generate an MP table (conforming to the Intel MultiProcessor
351 specification 1.4) for this board.
352
353 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000354
Myles Watsonb8e20272009-10-15 13:35:47 +0000355config GENERATE_PIRQ_TABLE
356 depends on HAVE_PIRQ_TABLE
Myles Watson45bb25f2009-09-22 18:49:08 +0000357 bool "Generate a PIRQ table"
Myles Watsonb8e20272009-10-15 13:35:47 +0000358 default y
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000359 help
360 Generate a PIRQ table for this board.
361
362 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000363
Sven Schnelle164bcfd2011-08-14 20:56:34 +0200364config GENERATE_SMBIOS_TABLES
365 depends on ARCH_X86
366 bool "Generate SMBIOS tables"
367 default y
368 help
369 Generate SMBIOS tables for this board.
370
371 If unsure, say Y.
372
Myles Watson45bb25f2009-09-22 18:49:08 +0000373endmenu
374
Patrick Georgi0588d192009-08-12 15:00:51 +0000375menu "Payload"
376
Patrick Georgi0588d192009-08-12 15:00:51 +0000377choice
Uwe Hermann168b11b2009-10-07 16:15:40 +0000378 prompt "Add a payload"
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000379 default PAYLOAD_NONE if !ARCH_X86
380 default PAYLOAD_SEABIOS if ARCH_X86
Patrick Georgi0588d192009-08-12 15:00:51 +0000381
Uwe Hermann168b11b2009-10-07 16:15:40 +0000382config PAYLOAD_NONE
383 bool "None"
384 help
385 Select this option if you want to create an "empty" coreboot
386 ROM image for a certain mainboard, i.e. a coreboot ROM image
387 which does not yet contain a payload.
388
389 For such an image to be useful, you have to use 'cbfstool'
390 to add a payload to the ROM image later.
391
Patrick Georgi0588d192009-08-12 15:00:51 +0000392config PAYLOAD_ELF
Uwe Hermann168b11b2009-10-07 16:15:40 +0000393 bool "An ELF executable payload"
Patrick Georgi0588d192009-08-12 15:00:51 +0000394 help
395 Select this option if you have a payload image (an ELF file)
396 which coreboot should run as soon as the basic hardware
397 initialization is completed.
398
399 You will be able to specify the location and file name of the
400 payload image later.
Patrick Georgi0588d192009-08-12 15:00:51 +0000401
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000402config PAYLOAD_SEABIOS
403 bool "SeaBIOS"
404 depends on ARCH_X86
405 help
406 Select this option if you want to build a coreboot image
407 with a SeaBIOS payload. If you don't know what this is
408 about, just leave it enabled.
409
410 See http://coreboot.org/Payloads for more information.
411
Stefan Reinauere50952f2011-04-15 03:34:05 +0000412config PAYLOAD_FILO
413 bool "FILO"
414 help
415 Select this option if you want to build a coreboot image
416 with a FILO payload. If you don't know what this is
417 about, just leave it enabled.
418
419 See http://coreboot.org/Payloads for more information.
420
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000421endchoice
422
423choice
424 prompt "SeaBIOS version"
425 default SEABIOS_STABLE
426 depends on PAYLOAD_SEABIOS
427
428config SEABIOS_STABLE
429 bool "stable"
430 help
431 Stable SeaBIOS version
432config SEABIOS_MASTER
433 bool "master"
434 help
435 Newest SeaBIOS version
Patrick Georgi0588d192009-08-12 15:00:51 +0000436endchoice
437
Stefan Reinauere50952f2011-04-15 03:34:05 +0000438choice
439 prompt "FILO version"
440 default FILO_STABLE
441 depends on PAYLOAD_FILO
442
443config FILO_STABLE
444 bool "0.6.0"
445 help
446 Stable FILO version
447config FILO_MASTER
448 bool "HEAD"
449 help
450 Newest FILO version
451endchoice
452
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000453config PAYLOAD_FILE
Cristi Magherusanb5034d42009-08-17 14:47:32 +0000454 string "Payload path and filename"
Patrick Georgi0588d192009-08-12 15:00:51 +0000455 depends on PAYLOAD_ELF
456 default "payload.elf"
457 help
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000458 The path and filename of the ELF executable file to use as payload.
Patrick Georgi0588d192009-08-12 15:00:51 +0000459
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000460config PAYLOAD_FILE
461 depends on PAYLOAD_SEABIOS
Stefan Reinaueraff6dc22012-01-21 10:34:22 -0800462 default "$(obj)/seabios/out/bios.bin.elf"
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000463
Stefan Reinauere50952f2011-04-15 03:34:05 +0000464config PAYLOAD_FILE
465 depends on PAYLOAD_FILO
466 default "payloads/external/FILO/filo/build/filo.elf"
467
Uwe Hermann168b11b2009-10-07 16:15:40 +0000468# TODO: Defined if no payload? Breaks build?
469config COMPRESSED_PAYLOAD_LZMA
470 bool "Use LZMA compression for payloads"
471 default y
Stefan Reinauere50952f2011-04-15 03:34:05 +0000472 depends on PAYLOAD_ELF || PAYLOAD_SEABIOS || PAYLOAD_FILO
Uwe Hermann168b11b2009-10-07 16:15:40 +0000473 help
474 In order to reduce the size payloads take up in the ROM chip
475 coreboot can compress them using the LZMA algorithm.
476
Myles Watson04000f42009-10-16 19:12:49 +0000477config COMPRESSED_PAYLOAD_NRV2B
Peter Stuged7b37b02009-10-17 03:00:04 +0000478 bool
Myles Watson04000f42009-10-16 19:12:49 +0000479 default n
480
Peter Stugea758ca22009-09-17 16:21:31 +0000481endmenu
482
483menu "VGA BIOS"
484
485config VGA_BIOS
486 bool "Add a VGA BIOS image"
487 help
488 Select this option if you have a VGA BIOS image that you would
489 like to add to your ROM.
490
491 You will be able to specify the location and file name of the
492 image later.
493
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000494config VGA_BIOS_FILE
Cristi Magherusan488c36c2009-08-17 14:46:13 +0000495 string "VGA BIOS path and filename"
496 depends on VGA_BIOS
497 default "vgabios.bin"
498 help
499 The path and filename of the file to use as VGA BIOS.
500
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000501config VGA_BIOS_ID
Uwe Hermann81b3c0a2009-10-30 12:56:59 +0000502 string "VGA device PCI IDs"
Cristi Magherusan488c36c2009-08-17 14:46:13 +0000503 depends on VGA_BIOS
504 default "1106,3230"
505 help
Uwe Hermann168b11b2009-10-07 16:15:40 +0000506 The comma-separated PCI vendor and device ID that would associate
507 your VGA BIOS to your video card.
508
509 Example: 1106,3230
510
511 In the above example 1106 is the PCI vendor ID (in hex, but without
512 the "0x" prefix) and 3230 specifies the PCI device ID of the
513 video card (also in hex, without "0x" prefix).
Cristi Magherusan488c36c2009-08-17 14:46:13 +0000514
Stefan Reinauer800379f2010-03-01 08:34:19 +0000515config INTEL_MBI
516 bool "Add an MBI image"
517 depends on NORTHBRIDGE_INTEL_I82830
518 help
519 Select this option if you have an Intel MBI image that you would
520 like to add to your ROM.
521
522 You will be able to specify the location and file name of the
523 image later.
524
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000525config MBI_FILE
Stefan Reinauer800379f2010-03-01 08:34:19 +0000526 string "Intel MBI path and filename"
527 depends on INTEL_MBI
528 default "mbi.bin"
529 help
530 The path and filename of the file to use as VGA BIOS.
531
532endmenu
533
Stefan Reinauerc1efb902011-10-12 14:30:59 -0700534menu "Display"
535 depends on PCI_OPTION_ROM_RUN_YABEL || PCI_OPTION_ROM_RUN_REALMODE
536
537config FRAMEBUFFER_SET_VESA_MODE
538 prompt "Set VESA framebuffer mode"
539 bool
540 depends on PCI_OPTION_ROM_RUN_YABEL || PCI_OPTION_ROM_RUN_REALMODE
541 help
542 Set VESA framebuffer mode (needed for bootsplash)
543
544# TODO: Turn this into a "choice".
545config FRAMEBUFFER_VESA_MODE
546 prompt "VESA framebuffer video mode"
547 hex
548 default 0x117
549 depends on FRAMEBUFFER_SET_VESA_MODE
550 help
551 This option sets the resolution used for the coreboot framebuffer (and
552 bootsplash screen). Set to 0x117 for 1024x768x16. A diligent soul will
553 some day make this a "choice".
554
555config FRAMEBUFFER_KEEP_VESA_MODE
556 prompt "Keep VESA framebuffer"
557 bool
558 depends on PCI_OPTION_ROM_RUN_YABEL || PCI_OPTION_ROM_RUN_REALMODE
559 help
560 This option keeps the framebuffer mode set after coreboot finishes
561 execution. If this option is enabled, coreboot will pass a
562 framebuffer entry in its coreboot table and the payload will need a
563 framebuffer driver. If this option is disabled, coreboot will switch
564 back to text mode before handing control to a payload.
Stefan Reinauer800379f2010-03-01 08:34:19 +0000565
566config BOOTSPLASH
567 prompt "Show graphical bootsplash"
568 bool
Stefan Reinauerc1efb902011-10-12 14:30:59 -0700569 depends on FRAMEBUFFER_SET_VESA_MODE
Stefan Reinauer800379f2010-03-01 08:34:19 +0000570 help
571 This option shows a graphical bootsplash screen. The grapics are
572 loaded from the CBFS file bootsplash.jpg.
573
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000574config BOOTSPLASH_FILE
Stefan Reinauer800379f2010-03-01 08:34:19 +0000575 string "Bootsplash path and filename"
576 depends on BOOTSPLASH
577 default "bootsplash.jpg"
578 help
Stefan Reinauer14e22772010-04-27 06:56:47 +0000579 The path and filename of the file to use as graphical bootsplash
580 screen. The file format has to be jpg.
Patrick Georgi0588d192009-08-12 15:00:51 +0000581endmenu
582
Uwe Hermann168b11b2009-10-07 16:15:40 +0000583menu "Debugging"
584
585# TODO: Better help text and detailed instructions.
Patrick Georgi0588d192009-08-12 15:00:51 +0000586config GDB_STUB
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000587 bool "GDB debugging support"
Rudolf Marek65888022012-03-25 20:51:16 +0200588 default n
Patrick Georgi0588d192009-08-12 15:00:51 +0000589 help
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000590 If enabled, you will be able to set breakpoints for gdb debugging.
Stefan Reinauer8677a232010-12-11 20:33:41 +0000591 See src/arch/x86/lib/c_start.S for details.
Patrick Georgi0588d192009-08-12 15:00:51 +0000592
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000593config HAVE_DEBUG_RAM_SETUP
594 def_bool n
595
Uwe Hermann01ce6012010-03-05 10:03:50 +0000596config DEBUG_RAM_SETUP
597 bool "Output verbose RAM init debug messages"
598 default n
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000599 depends on HAVE_DEBUG_RAM_SETUP
Uwe Hermann01ce6012010-03-05 10:03:50 +0000600 help
601 This option enables additional RAM init related debug messages.
602 It is recommended to enable this when debugging issues on your
603 board which might be RAM init related.
604
605 Note: This option will increase the size of the coreboot image.
606
607 If unsure, say N.
608
Patrick Georgie82618d2010-10-01 14:50:12 +0000609config HAVE_DEBUG_CAR
610 def_bool n
611
Peter Stuge5015f792010-11-10 02:00:32 +0000612config DEBUG_CAR
613 def_bool n
614 depends on HAVE_DEBUG_CAR
615
616if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
Uwe Hermanna953f372010-11-10 00:14:32 +0000617# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
618# printk(BIOS_DEBUG, ...) calls.
Patrick Georgie82618d2010-10-01 14:50:12 +0000619config DEBUG_CAR
620 bool "Output verbose Cache-as-RAM debug messages"
621 default n
Peter Stuge5015f792010-11-10 02:00:32 +0000622 depends on HAVE_DEBUG_CAR
Patrick Georgie82618d2010-10-01 14:50:12 +0000623 help
624 This option enables additional CAR related debug messages.
Peter Stuge5015f792010-11-10 02:00:32 +0000625endif
Patrick Georgie82618d2010-10-01 14:50:12 +0000626
Myles Watson80e914ff2010-06-01 19:25:31 +0000627config DEBUG_PIRQ
628 bool "Check PIRQ table consistency"
629 default n
630 depends on GENERATE_PIRQ_TABLE
631 help
632 If unsure, say N.
633
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000634config HAVE_DEBUG_SMBUS
635 def_bool n
636
Uwe Hermann01ce6012010-03-05 10:03:50 +0000637config DEBUG_SMBUS
638 bool "Output verbose SMBus debug messages"
639 default n
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000640 depends on HAVE_DEBUG_SMBUS
Uwe Hermann01ce6012010-03-05 10:03:50 +0000641 help
642 This option enables additional SMBus (and SPD) debug messages.
643
644 Note: This option will increase the size of the coreboot image.
645
646 If unsure, say N.
647
648config DEBUG_SMI
649 bool "Output verbose SMI debug messages"
650 default n
651 depends on HAVE_SMI_HANDLER
652 help
653 This option enables additional SMI related debug messages.
654
655 Note: This option will increase the size of the coreboot image.
656
657 If unsure, say N.
658
Stefan Reinauerbc0f7a62010-08-01 15:41:14 +0000659config DEBUG_SMM_RELOCATION
660 bool "Debug SMM relocation code"
661 default n
662 depends on HAVE_SMI_HANDLER
663 help
664 This option enables additional SMM handler relocation related
665 debug messages.
666
667 Note: This option will increase the size of the coreboot image.
668
669 If unsure, say N.
670
Peter Stuge5015f792010-11-10 02:00:32 +0000671config DEBUG_MALLOC
672 def_bool n
673
Uwe Hermanna953f372010-11-10 00:14:32 +0000674# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
675# printk(BIOS_DEBUG, ...) calls.
Peter Stuge5015f792010-11-10 02:00:32 +0000676if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
Uwe Hermanna953f372010-11-10 00:14:32 +0000677config DEBUG_MALLOC
678 bool "Output verbose malloc debug messages"
679 default n
Uwe Hermanna953f372010-11-10 00:14:32 +0000680 help
681 This option enables additional malloc related debug messages.
682
683 Note: This option will increase the size of the coreboot image.
684
685 If unsure, say N.
Peter Stuge5015f792010-11-10 02:00:32 +0000686endif
Uwe Hermanna953f372010-11-10 00:14:32 +0000687
Cristian Măgherușan-Stanciu9f52ea42011-07-02 00:44:39 +0300688config DEBUG_ACPI
689 def_bool n
690
691# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
692# printk(BIOS_DEBUG, ...) calls.
693if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
694config DEBUG_ACPI
695 bool "Output verbose ACPI debug messages"
696 default n
697 help
698 This option enables additional ACPI related debug messages.
699
700 Note: This option will slightly increase the size of the coreboot image.
701
702 If unsure, say N.
703endif
704
Peter Stuge5015f792010-11-10 02:00:32 +0000705config REALMODE_DEBUG
706 def_bool n
707 depends on PCI_OPTION_ROM_RUN_REALMODE
708
709if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
Uwe Hermanna953f372010-11-10 00:14:32 +0000710# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
711# printk(BIOS_DEBUG, ...) calls.
Myles Watson6c9bc012010-09-07 22:30:15 +0000712config REALMODE_DEBUG
713 bool "Enable debug messages for option ROM execution"
714 default n
Peter Stuge5015f792010-11-10 02:00:32 +0000715 depends on PCI_OPTION_ROM_RUN_REALMODE
Myles Watson6c9bc012010-09-07 22:30:15 +0000716 help
717 This option enables additional x86emu related debug messages.
718
719 Note: This option will increase the time to emulate a ROM.
720
721 If unsure, say N.
Peter Stuge5015f792010-11-10 02:00:32 +0000722endif
Myles Watson6c9bc012010-09-07 22:30:15 +0000723
Uwe Hermann01ce6012010-03-05 10:03:50 +0000724config X86EMU_DEBUG
725 bool "Output verbose x86emu debug messages"
726 default n
727 depends on PCI_OPTION_ROM_RUN_YABEL
728 help
729 This option enables additional x86emu related debug messages.
730
731 Note: This option will increase the size of the coreboot image.
732
733 If unsure, say N.
734
735config X86EMU_DEBUG_JMP
736 bool "Trace JMP/RETF"
737 default n
738 depends on X86EMU_DEBUG
739 help
740 Print information about JMP and RETF opcodes from x86emu.
741
742 Note: This option will increase the size of the coreboot image.
743
744 If unsure, say N.
745
746config X86EMU_DEBUG_TRACE
747 bool "Trace all opcodes"
748 default n
749 depends on X86EMU_DEBUG
750 help
751 Print _all_ opcodes that are executed by x86emu.
Stefan Reinauer14e22772010-04-27 06:56:47 +0000752
Uwe Hermann01ce6012010-03-05 10:03:50 +0000753 WARNING: This will produce a LOT of output and take a long time.
754
755 Note: This option will increase the size of the coreboot image.
756
757 If unsure, say N.
758
759config X86EMU_DEBUG_PNP
760 bool "Log Plug&Play accesses"
761 default n
762 depends on X86EMU_DEBUG
763 help
764 Print Plug And Play accesses made by option ROMs.
765
766 Note: This option will increase the size of the coreboot image.
767
768 If unsure, say N.
769
770config X86EMU_DEBUG_DISK
771 bool "Log Disk I/O"
772 default n
773 depends on X86EMU_DEBUG
774 help
775 Print Disk I/O related messages.
776
777 Note: This option will increase the size of the coreboot image.
778
779 If unsure, say N.
780
781config X86EMU_DEBUG_PMM
782 bool "Log PMM"
783 default n
784 depends on X86EMU_DEBUG
785 help
786 Print messages related to POST Memory Manager (PMM).
787
788 Note: This option will increase the size of the coreboot image.
789
790 If unsure, say N.
791
792
793config X86EMU_DEBUG_VBE
794 bool "Debug VESA BIOS Extensions"
795 default n
796 depends on X86EMU_DEBUG
797 help
798 Print messages related to VESA BIOS Extension (VBE) functions.
799
800 Note: This option will increase the size of the coreboot image.
801
802 If unsure, say N.
803
804config X86EMU_DEBUG_INT10
805 bool "Redirect INT10 output to console"
806 default n
807 depends on X86EMU_DEBUG
808 help
809 Let INT10 (i.e. character output) calls print messages to debug output.
810
811 Note: This option will increase the size of the coreboot image.
812
813 If unsure, say N.
814
815config X86EMU_DEBUG_INTERRUPTS
816 bool "Log intXX calls"
817 default n
818 depends on X86EMU_DEBUG
819 help
820 Print messages related to interrupt handling.
821
822 Note: This option will increase the size of the coreboot image.
823
824 If unsure, say N.
825
826config X86EMU_DEBUG_CHECK_VMEM_ACCESS
827 bool "Log special memory accesses"
828 default n
829 depends on X86EMU_DEBUG
830 help
831 Print messages related to accesses to certain areas of the virtual
832 memory (e.g. BDA (BIOS Data Area) or interrupt vectors)
833
834 Note: This option will increase the size of the coreboot image.
835
836 If unsure, say N.
837
838config X86EMU_DEBUG_MEM
839 bool "Log all memory accesses"
840 default n
841 depends on X86EMU_DEBUG
842 help
843 Print memory accesses made by option ROM.
844 Note: This also includes accesses to fetch instructions.
845
846 Note: This option will increase the size of the coreboot image.
847
848 If unsure, say N.
849
850config X86EMU_DEBUG_IO
851 bool "Log IO accesses"
852 default n
853 depends on X86EMU_DEBUG
854 help
855 Print I/O accesses made by option ROM.
856
857 Note: This option will increase the size of the coreboot image.
858
859 If unsure, say N.
860
Stefan Reinauer5c503922010-03-13 22:07:15 +0000861config LLSHELL
862 bool "Built-in low-level shell"
863 default n
864 help
865 If enabled, you will have a low level shell to examine your machine.
866 Put llshell() in your (romstage) code to start the shell.
Stefan Reinauer8677a232010-12-11 20:33:41 +0000867 See src/arch/x86/llshell/llshell.inc for details.
Stefan Reinauer5c503922010-03-13 22:07:15 +0000868
Rudolf Marek7f0e9302011-09-02 23:23:41 +0200869config TRACE
870 bool "Trace function calls"
871 default n
872 help
873 If enabled, every function will print information to console once
874 the function is entered. The syntax is ~0xaaaabbbb(0xccccdddd)
875 the 0xaaaabbbb is the actual function and 0xccccdddd is EIP
876 of calling function. Please note some printk releated functions
877 are omitted from trace to have good looking console dumps.
Uwe Hermann168b11b2009-10-07 16:15:40 +0000878endmenu
879
Myles Watson8f74c582009-10-20 16:10:04 +0000880config LIFT_BSP_APIC_ID
881 bool
882 default n
Myles Watsond73c1b52009-10-26 15:14:07 +0000883
884# These probably belong somewhere else, but they are needed somewhere.
885config AP_CODE_IN_CAR
886 bool
887 default n
888
Jonathan Kollasche5b75072010-10-07 23:02:06 +0000889config RAMINIT_SYSINFO
890 bool
891 default n
892
Myles Watsond73c1b52009-10-26 15:14:07 +0000893config ENABLE_APIC_EXT_ID
894 bool
895 default n
Myles Watson2e672732009-11-12 16:38:03 +0000896
897config WARNINGS_ARE_ERRORS
898 bool
Stefan Reinauer6f57b512010-07-08 16:41:05 +0000899 default y
Patrick Georgi436f99b2009-11-27 16:55:13 +0000900
Peter Stuge51eafde2010-10-13 06:23:02 +0000901# The four POWER_BUTTON_DEFAULT_ENABLE, POWER_BUTTON_DEFAULT_DISABLE,
902# POWER_BUTTON_FORCE_ENABLE and POWER_BUTTON_FORCE_DISABLE options are
903# mutually exclusive. One of these options must be selected in the
904# mainboard Kconfig if the chipset supports enabling and disabling of
905# the power button. Chipset code uses the ENABLE_POWER_BUTTON option set
906# in mainboard/Kconfig to know if the button should be enabled or not.
907
908config POWER_BUTTON_DEFAULT_ENABLE
909 def_bool n
910 help
911 Select when the board has a power button which can optionally be
912 disabled by the user.
913
914config POWER_BUTTON_DEFAULT_DISABLE
915 def_bool n
916 help
917 Select when the board has a power button which can optionally be
918 enabled by the user, e.g. when the board ships with a jumper over
919 the power switch contacts.
920
921config POWER_BUTTON_FORCE_ENABLE
922 def_bool n
923 help
924 Select when the board requires that the power button is always
925 enabled.
926
927config POWER_BUTTON_FORCE_DISABLE
928 def_bool n
929 help
930 Select when the board requires that the power button is always
931 disabled, e.g. when it has been hardwired to ground.
932
933config POWER_BUTTON_IS_OPTIONAL
934 bool
935 default y if POWER_BUTTON_DEFAULT_ENABLE || POWER_BUTTON_DEFAULT_DISABLE
936 default n if !(POWER_BUTTON_DEFAULT_ENABLE || POWER_BUTTON_DEFAULT_DISABLE)
937 help
938 Internal option that controls ENABLE_POWER_BUTTON visibility.
939
Patrick Georgicc669262010-03-14 21:31:05 +0000940source src/Kconfig.deprecated_options