blob: 7b52589a67d4f478f088a186ef728179b9585bcd [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##
Alexandru Gagniuc70c660f2012-08-23 02:32:58 -05004## Copyright (C) 2012 Alexandru Gagniuc <mr.nuke.me@gmail.com>
Stefan Reinauer16f515a2010-01-20 18:44:30 +00005## Copyright (C) 2009-2010 coresystems GmbH
Patrick Georgi0588d192009-08-12 15:00:51 +00006##
Stefan Reinauer16f515a2010-01-20 18:44:30 +00007## This program is free software; you can redistribute it and/or modify
8## it under the terms of the GNU General Public License as published by
9## the Free Software Foundation; version 2 of the License.
10##
11## This program is distributed in the hope that it will be useful,
12## but WITHOUT ANY WARRANTY; without even the implied warranty of
13## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14## GNU General Public License for more details.
15##
16## You should have received a copy of the GNU General Public License
17## along with this program; if not, write to the Free Software
Paul Menzela46a7122013-02-23 18:37:27 +010018## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Patrick Georgi0588d192009-08-12 15:00:51 +000019##
20
Uwe Hermannad8c95f2012-04-12 22:00:03 +020021mainmenu "coreboot configuration"
Patrick Georgi0588d192009-08-12 15:00:51 +000022
Uwe Hermannc04be932009-10-05 13:55:28 +000023menu "General setup"
24
Uwe Hermanna29ad5c2009-10-18 18:35:50 +000025config EXPERT
26 bool "Expert mode"
27 help
28 This allows you to select certain advanced configuration options.
29
30 Warning: Only enable this option if you really know what you are
31 doing! You have been warned!
32
Uwe Hermannc04be932009-10-05 13:55:28 +000033config LOCALVERSION
Uwe Hermann168b11b2009-10-07 16:15:40 +000034 string "Local version string"
Uwe Hermannc04be932009-10-05 13:55:28 +000035 help
36 Append an extra string to the end of the coreboot version.
37
Uwe Hermann168b11b2009-10-07 16:15:40 +000038 This can be useful if, for instance, you want to append the
39 respective board's hostname or some other identifying string to
40 the coreboot version number, so that you can easily distinguish
41 boot logs of different boards from each other.
42
Patrick Georgi4b8a2412010-02-09 19:35:16 +000043config CBFS_PREFIX
44 string "CBFS prefix to use"
45 default "fallback"
46 help
47 Select the prefix to all files put into the image. It's "fallback"
48 by default, "normal" is a common alternative.
49
Patrick Georgi23d89cc2010-03-16 01:17:19 +000050choice
Uwe Hermannad8c95f2012-04-12 22:00:03 +020051 prompt "Compiler to use"
Patrick Georgi23d89cc2010-03-16 01:17:19 +000052 default COMPILER_GCC
53 help
54 This option allows you to select the compiler used for building
55 coreboot.
56
57config COMPILER_GCC
58 bool "GCC"
Uwe Hermannad8c95f2012-04-12 22:00:03 +020059 help
60 Use the GNU Compiler Collection (GCC) to build coreboot.
61
62 For details see http://gcc.gnu.org.
63
Patrick Georgi23d89cc2010-03-16 01:17:19 +000064config COMPILER_LLVM_CLANG
65 bool "LLVM/clang"
Uwe Hermannad8c95f2012-04-12 22:00:03 +020066 help
67 Use LLVM/clang to build coreboot.
68
69 For details see http://clang.llvm.org.
70
Patrick Georgi23d89cc2010-03-16 01:17:19 +000071endchoice
72
Patrick Georgi9b0de712013-12-29 18:45:23 +010073config ANY_TOOLCHAIN
74 bool "Allow building with any toolchain"
75 default n
76 depends on COMPILER_GCC
77 help
78 Many toolchains break when building coreboot since it uses quite
79 unusual linker features. Unless developers explicitely request it,
80 we'll have to assume that they use their distro compiler by mistake.
81 Make sure that using patched compilers is a conscious decision.
82
Patrick Georgi516a2a72010-03-25 21:45:25 +000083config CCACHE
Uwe Hermannad8c95f2012-04-12 22:00:03 +020084 bool "Use ccache to speed up (re)compilation"
Patrick Georgi516a2a72010-03-25 21:45:25 +000085 default n
86 help
87 Enables the use of ccache for faster builds.
Uwe Hermannad8c95f2012-04-12 22:00:03 +020088
89 Requires the ccache utility in your system $PATH.
90
91 For details see https://ccache.samba.org.
Patrick Georgi516a2a72010-03-25 21:45:25 +000092
Stefan Reinauer9bf78102010-08-09 13:28:18 +000093config SCONFIG_GENPARSER
94 bool "Generate SCONFIG parser using flex and bison"
95 default n
96 depends on EXPERT
97 help
Uwe Hermannad8c95f2012-04-12 22:00:03 +020098 Enable this option if you are working on the sconfig device tree
99 parser and made changes to sconfig.l and sconfig.y.
100
Stefan Reinauer9bf78102010-08-09 13:28:18 +0000101 Otherwise, say N.
102
Joe Korty6d772522010-05-19 18:41:15 +0000103config USE_OPTION_TABLE
104 bool "Use CMOS for configuration values"
105 default n
Edwin Beasanteb50c7d2010-07-06 21:05:04 +0000106 depends on HAVE_OPTION_TABLE
Joe Korty6d772522010-05-19 18:41:15 +0000107 help
108 Enable this option if coreboot shall read options from the "CMOS"
Uwe Hermannad8c95f2012-04-12 22:00:03 +0200109 NVRAM instead of using hard-coded values.
Joe Korty6d772522010-05-19 18:41:15 +0000110
Sven Schnelle8eee19d2011-05-02 19:53:04 +0000111config COMPRESS_RAMSTAGE
112 bool "Compress ramstage with LZMA"
113 default y
114 help
115 Compress ramstage to save memory in the flash image. Note
116 that decompression might slow down booting if the boot flash
Uwe Hermannad8c95f2012-04-12 22:00:03 +0200117 is connected through a slow link (i.e. SPI).
Sven Schnelle8eee19d2011-05-02 19:53:04 +0000118
Cristian Măgherușan-Stanciud367b002011-06-19 03:03:28 +0200119config INCLUDE_CONFIG_FILE
Uwe Hermannad8c95f2012-04-12 22:00:03 +0200120 bool "Include the coreboot .config file into the ROM image"
Cristian Măgherușan-Stanciud367b002011-06-19 03:03:28 +0200121 default y
Uwe Hermannad8c95f2012-04-12 22:00:03 +0200122 help
123 Include the .config file that was used to compile coreboot
124 in the (CBFS) ROM image. This is useful if you want to know which
125 options were used to build a specific coreboot.rom image.
126
Daniele Forsi53847a22014-07-22 18:00:56 +0200127 Saying Y here will increase the image size by 2-3KB.
Uwe Hermannad8c95f2012-04-12 22:00:03 +0200128
129 You can use the following command to easily list the options:
130
131 grep -a CONFIG_ coreboot.rom
132
133 Alternatively, you can also use cbfstool to print the image
134 contents (including the raw 'config' item we're looking for).
135
136 Example:
137
138 $ cbfstool coreboot.rom print
139 coreboot.rom: 4096 kB, bootblocksize 1008, romsize 4194304,
140 offset 0x0
141 Alignment: 64 bytes
Steve Goodrichf0269122012-05-18 11:18:47 -0600142
Uwe Hermannad8c95f2012-04-12 22:00:03 +0200143 Name Offset Type Size
144 cmos_layout.bin 0x0 cmos layout 1159
145 fallback/romstage 0x4c0 stage 339756
Daniele Forsi53847a22014-07-22 18:00:56 +0200146 fallback/ramstage 0x53440 stage 186664
Uwe Hermannad8c95f2012-04-12 22:00:03 +0200147 fallback/payload 0x80dc0 payload 51526
148 config 0x8d740 raw 3324
149 (empty) 0x8e480 null 3610440
Cristian Măgherușan-Stanciud367b002011-06-19 03:03:28 +0200150
Kyösti Mälkkif8bf5a12013-10-11 22:08:02 +0300151config EARLY_CBMEM_INIT
152 bool
153 default n
154 help
155 Make coreboot initialize the CBMEM structures while running in ROM
156 stage. This is useful when the ROM stage wants to communicate
157 some, for instance, execution timestamps. It needs support in
158 romstage.c and should be enabled by the board's Kconfig.
159
Kyösti Mälkkideb2cb22014-03-28 23:46:45 +0200160config BROKEN_CAR_MIGRATE
161 bool
162 default y if !EARLY_CBMEM_INIT && HAVE_ACPI_RESUME
163 default n
164 help
165 Many boards use CAR_GLOBAL but have no EARLY_CBMEM_INIT and
166 manage CAR migration on S3 resume path only. Couple boards use
167 CAR_GLOBAL and never do CAR migration.
168
Aaron Durbindf3a1092013-03-13 12:41:44 -0500169config DYNAMIC_CBMEM
Vladimir Serbinenko39bbc8c2014-11-08 21:49:42 +0100170 bool
Aaron Durbindf3a1092013-03-13 12:41:44 -0500171 default n
Kyösti Mälkkif8bf5a12013-10-11 22:08:02 +0300172 select EARLY_CBMEM_INIT
Aaron Durbindf3a1092013-03-13 12:41:44 -0500173 help
174 Instead of reserving a static amount of CBMEM space the CBMEM
175 area grows dynamically. CBMEM can be used both in romstage (after
176 memory initialization) and ramstage.
177
Vadim Bendebury9202473d2011-09-21 14:46:43 -0700178config COLLECT_TIMESTAMPS
179 bool "Create a table of timestamps collected during boot"
Kyösti Mälkki26447932013-10-11 21:14:59 +0300180 default n
Vadim Bendebury9202473d2011-09-21 14:46:43 -0700181 help
Uwe Hermannad8c95f2012-04-12 22:00:03 +0200182 Make coreboot create a table of timer-ID/timer-value pairs to
183 allow measuring time spent at different phases of the boot process.
184
Patrick Georgi7e9b9d82012-04-30 21:06:10 +0200185config USE_BLOBS
186 bool "Allow use of binary-only repository"
187 default n
188 help
189 This draws in the blobs repository, which contains binary files that
190 might be required for some chipsets or boards.
191 This flag ensures that a "Free" option remains available for users.
192
Stefan Reinauerd37ab452012-12-18 16:23:28 -0800193config COVERAGE
194 bool "Code coverage support"
195 depends on COMPILER_GCC
196 default n
197 help
198 Add code coverage support for coreboot. This will store code
199 coverage information in CBMEM for extraction from user space.
200 If unsure, say N.
201
Stefan Reinauer58470e32014-10-17 13:08:36 +0200202config RELOCATABLE_MODULES
203 bool "Relocatable Modules"
204 default n
205 help
206 If RELOCATABLE_MODULES is selected then support is enabled for
207 building relocatable modules in the RAM stage. Those modules can be
208 loaded anywhere and all the relocations are handled automatically.
209
210config RELOCATABLE_RAMSTAGE
211 depends on (RELOCATABLE_MODULES && DYNAMIC_CBMEM)
212 bool "Build the ramstage to be relocatable in 32-bit address space."
213 default n
214 help
215 The reloctable ramstage support allows for the ramstage to be built
216 as a relocatable module. The stage loader can identify a place
217 out of the OS way so that copying memory is unnecessary during an S3
218 wake. When selecting this option the romstage is responsible for
219 determing a stack location to use for loading the ramstage.
220
221config CACHE_RELOCATED_RAMSTAGE_OUTSIDE_CBMEM
222 depends on RELOCATABLE_RAMSTAGE
223 bool "Cache the relocated ramstage outside of cbmem."
224 default n
225 help
226 The relocated ramstage is saved in an area specified by the
227 by the board and/or chipset.
228
229choice
230 prompt "Bootblock behaviour"
231 default BOOTBLOCK_SIMPLE
232
233config BOOTBLOCK_SIMPLE
234 bool "Always load fallback"
235
236config BOOTBLOCK_NORMAL
237 bool "Switch to normal if CMOS says so"
238
239endchoice
240
241config BOOTBLOCK_SOURCE
242 string
243 default "bootblock_simple.c" if BOOTBLOCK_SIMPLE
244 default "bootblock_normal.c" if BOOTBLOCK_NORMAL
245
246config UPDATE_IMAGE
247 bool "Update existing coreboot.rom image"
248 default n
249 help
250 If this option is enabled, no new coreboot.rom file
251 is created. Instead it is expected that there already
252 is a suitable file for further processing.
253 The bootblock will not be modified.
254
Uwe Hermannc04be932009-10-05 13:55:28 +0000255endmenu
256
Patrick Georgi0588d192009-08-12 15:00:51 +0000257source src/mainboard/Kconfig
Stefan Reinauer8aedcbc2010-12-16 23:37:17 +0000258
259# This option is used to set the architecture of a mainboard to X86.
260# It is usually set in mainboard/*/Kconfig.
261config ARCH_X86
262 bool
263 default n
Ronald G. Minnich78a16672012-11-29 16:28:21 -0800264 select PCI
265
Gabe Black51edd542013-09-30 23:00:33 -0700266config ARCH_ARM
David Hendricks5367e472012-11-28 20:16:28 -0800267 bool
268 default n
269
Furquan Shaikh2af76f42014-04-28 16:39:40 -0700270config ARCH_ARM64
271 bool
272 default n
273
Ronald G. Minniche0e784a2014-11-26 19:25:47 +0000274config ARCH_RISCV
275 bool
276 default n
277
Stefan Reinauer8677a232010-12-11 20:33:41 +0000278source src/arch/x86/Kconfig
Gabe Black51edd542013-09-30 23:00:33 -0700279source src/arch/arm/Kconfig
Furquan Shaikh2af76f42014-04-28 16:39:40 -0700280source src/arch/arm64/Kconfig
Ronald G. Minniche0e784a2014-11-26 19:25:47 +0000281source src/arch/riscv/Kconfig
Gabe Black545c0ca2013-07-07 14:04:26 -0700282
Peter Stuge4d77ed92014-02-07 03:58:24 +0100283source src/vendorcode/Kconfig
284
Vladimir Serbinenkoa9db82f2014-10-16 13:21:47 +0200285config SYSTEM_TYPE_LAPTOP
286 default n
287 bool
288
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000289menu "Chipset"
290
291comment "CPU"
Patrick Georgi0588d192009-08-12 15:00:51 +0000292source src/cpu/Kconfig
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000293comment "Northbridge"
294source src/northbridge/Kconfig
295comment "Southbridge"
296source src/southbridge/Kconfig
297comment "Super I/O"
298source src/superio/Kconfig
Sven Schnelle7592e8b2011-01-27 11:43:03 +0000299comment "Embedded Controllers"
300source src/ec/Kconfig
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -0500301comment "SoC"
302source src/soc/Kconfig
Martin Rotha6427162014-04-25 14:12:13 -0600303source src/drivers/intel/fsp/Kconfig
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000304
305endmenu
Patrick Georgi0588d192009-08-12 15:00:51 +0000306
Stefan Reinauer8d711552012-11-30 12:34:04 -0800307source src/device/Kconfig
Stefan Reinauer95a63962012-11-13 17:00:01 -0800308
Rudolf Marekd9c25492010-05-16 15:31:53 +0000309menu "Generic Drivers"
310source src/drivers/Kconfig
311endmenu
312
Stefan Reinauer7cb01e02013-08-29 16:05:02 -0700313config TPM
314 bool
315 default n
316 select LPC_TPM if ARCH_X86
Gabe Black51edd542013-09-30 23:00:33 -0700317 select I2C_TPM if ARCH_ARM
Furquan Shaikh2af76f42014-04-28 16:39:40 -0700318 select I2C_TPM if ARCH_ARM64
Stefan Reinauer7cb01e02013-08-29 16:05:02 -0700319 help
320 Enable this option to enable TPM support in coreboot.
321
322 If unsure, say N.
323
Kyösti Mälkkieaee6e22014-04-30 01:35:29 +0300324config RAMTOP
325 hex
326 default 0x200000
327 depends on ARCH_X86
328
Patrick Georgi0588d192009-08-12 15:00:51 +0000329config HEAP_SIZE
330 hex
Myles Watson04000f42009-10-16 19:12:49 +0000331 default 0x4000
Patrick Georgi0588d192009-08-12 15:00:51 +0000332
Patrick Georgi0588d192009-08-12 15:00:51 +0000333config MAX_CPUS
334 int
335 default 1
336
337config MMCONF_SUPPORT_DEFAULT
338 bool
339 default n
340
341config MMCONF_SUPPORT
342 bool
343 default n
344
Kyösti Mälkki5687fc92013-11-28 18:11:49 +0200345config BOOTMODE_STRAPS
346 bool
347 default n
348
Patrick Georgi0588d192009-08-12 15:00:51 +0000349source src/console/Kconfig
350
351config HAVE_ACPI_RESUME
352 bool
353 default n
354
Stefan Reinauerc4f1a772010-06-05 10:03:08 +0000355config HAVE_ACPI_SLIC
356 bool
357 default n
358
Patrick Georgi0588d192009-08-12 15:00:51 +0000359config HAVE_HARD_RESET
360 bool
Uwe Hermann748475b2009-10-09 11:47:21 +0000361 default n
Patrick Georgi37bdb872010-02-27 08:39:04 +0000362 help
363 This variable specifies whether a given board has a hard_reset
364 function, no matter if it's provided by board code or chipset code.
365
Aaron Durbina4217912013-04-29 22:31:51 -0500366config HAVE_MONOTONIC_TIMER
367 def_bool n
368 help
369 The board/chipset provides a monotonic timer.
370
Aaron Durbin340ca912013-04-30 09:58:12 -0500371config TIMER_QUEUE
372 def_bool n
373 depends on HAVE_MONOTONIC_TIMER
374 help
Kyösti Mälkkiecd84242013-09-13 07:57:49 +0300375 Provide a timer queue for performing time-based callbacks.
Aaron Durbin340ca912013-04-30 09:58:12 -0500376
Aaron Durbin4409a5e2013-05-06 12:20:52 -0500377config COOP_MULTITASKING
378 def_bool n
Aaron Durbin38c326d2013-05-06 12:22:23 -0500379 depends on TIMER_QUEUE && ARCH_X86
Aaron Durbin4409a5e2013-05-06 12:20:52 -0500380 help
381 Cooperative multitasking allows callbacks to be multiplexed on the
382 main thread of ramstage. With this enabled it allows for multiple
383 execution paths to take place when they have udelay() calls within
384 their code.
385
386config NUM_THREADS
387 int
388 default 4
389 depends on COOP_MULTITASKING
390 help
391 How many execution threads to cooperatively multitask with.
392
Patrick Georgi0588d192009-08-12 15:00:51 +0000393config HAVE_OPTION_TABLE
394 bool
Edwin Beasanteb50c7d2010-07-06 21:05:04 +0000395 default n
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000396 help
397 This variable specifies whether a given board has a cmos.layout
398 file containing NVRAM/CMOS bit definitions.
Edwin Beasanteb50c7d2010-07-06 21:05:04 +0000399 It defaults to 'n' but can be selected in mainboard/*/Kconfig.
Patrick Georgi0588d192009-08-12 15:00:51 +0000400
Patrick Georgi0588d192009-08-12 15:00:51 +0000401config PIRQ_ROUTE
402 bool
403 default n
404
405config HAVE_SMI_HANDLER
406 bool
407 default n
408
409config PCI_IO_CFG_EXT
410 bool
411 default n
412
413config IOAPIC
414 bool
415 default n
416
Stefan Reinauer5b635792012-08-16 14:05:42 -0700417config CBFS_SIZE
418 hex
419 default ROM_SIZE
420
Kyösti Mälkki107f72e2014-01-06 11:06:26 +0200421config CACHE_ROM_SIZE_OVERRIDE
Stefan Reinauer5b635792012-08-16 14:05:42 -0700422 hex
Kyösti Mälkki107f72e2014-01-06 11:06:26 +0200423 default 0
Stefan Reinauer5b635792012-08-16 14:05:42 -0700424
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000425# TODO: Can probably be removed once all chipsets have kconfig options for it.
Uwe Hermann70b0cf22009-10-04 17:15:39 +0000426config VIDEO_MB
427 int
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000428 default 0
Uwe Hermann70b0cf22009-10-04 17:15:39 +0000429
Myles Watson45bb25f2009-09-22 18:49:08 +0000430config USE_WATCHDOG_ON_BOOT
431 bool
432 default n
433
434config VGA
435 bool
436 default n
437 help
438 Build board-specific VGA code.
439
440config GFXUMA
441 bool
Myles Watsond73c1b52009-10-26 15:14:07 +0000442 default n
Myles Watson45bb25f2009-09-22 18:49:08 +0000443 help
444 Enable Unified Memory Architecture for graphics.
445
Myles Watsonb8e20272009-10-15 13:35:47 +0000446config HAVE_ACPI_TABLES
447 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000448 help
449 This variable specifies whether a given board has ACPI table support.
450 It is usually set in mainboard/*/Kconfig.
Myles Watsonb8e20272009-10-15 13:35:47 +0000451
452config HAVE_MP_TABLE
453 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000454 help
455 This variable specifies whether a given board has MP table support.
456 It is usually set in mainboard/*/Kconfig.
457 Whether or not the MP table is actually generated by coreboot
458 is configurable by the user via GENERATE_MP_TABLE.
Myles Watsonb8e20272009-10-15 13:35:47 +0000459
460config HAVE_PIRQ_TABLE
461 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000462 help
463 This variable specifies whether a given board has PIRQ table support.
464 It is usually set in mainboard/*/Kconfig.
465 Whether or not the PIRQ table is actually generated by coreboot
466 is configurable by the user via GENERATE_PIRQ_TABLE.
Myles Watsonb8e20272009-10-15 13:35:47 +0000467
Alexandru Gagniuc70c660f2012-08-23 02:32:58 -0500468config MAX_PIRQ_LINKS
469 int
470 default 4
471 help
472 This variable specifies the number of PIRQ interrupt links which are
473 routable. On most chipsets, this is 4, INTA through INTD. Some
474 chipsets offer more than four links, commonly up to INTH. They may
475 also have a separate link for ATA or IOAPIC interrupts. When the PIRQ
476 table specifies links greater than 4, pirq_route_irqs will not
477 function properly, unless this variable is correctly set.
478
Vladimir Serbinenko2d7bd8a2014-08-30 19:28:05 +0200479config PER_DEVICE_ACPI_TABLES
480 bool
481 default n
482
Vladimir Serbinenkoc21e0732014-10-16 12:48:19 +0200483config COMMON_FADT
484 bool
485 default n
486
Myles Watsond73c1b52009-10-26 15:14:07 +0000487#These Options are here to avoid "undefined" warnings.
488#The actual selection and help texts are in the following menu.
489
Uwe Hermann168b11b2009-10-07 16:15:40 +0000490menu "System tables"
Myles Watson45bb25f2009-09-22 18:49:08 +0000491
Myles Watsonb8e20272009-10-15 13:35:47 +0000492config GENERATE_MP_TABLE
Stefan Reinauer56cd70b2012-11-13 17:33:08 -0800493 prompt "Generate an MP table" if HAVE_MP_TABLE || DRIVERS_GENERIC_IOAPIC
494 bool
495 default HAVE_MP_TABLE || DRIVERS_GENERIC_IOAPIC
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000496 help
497 Generate an MP table (conforming to the Intel MultiProcessor
498 specification 1.4) for this board.
499
500 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000501
Myles Watsonb8e20272009-10-15 13:35:47 +0000502config GENERATE_PIRQ_TABLE
Stefan Reinauer56cd70b2012-11-13 17:33:08 -0800503 prompt "Generate a PIRQ table" if HAVE_PIRQ_TABLE
504 bool
505 default HAVE_PIRQ_TABLE
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000506 help
507 Generate a PIRQ table for this board.
508
509 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000510
Sven Schnelle164bcfd2011-08-14 20:56:34 +0200511config GENERATE_SMBIOS_TABLES
512 depends on ARCH_X86
513 bool "Generate SMBIOS tables"
514 default y
515 help
516 Generate SMBIOS tables for this board.
517
518 If unsure, say Y.
519
Stefan Reinauer6023ca42014-10-17 13:28:15 +0200520config MAINBOARD_SERIAL_NUMBER
521 string "SMBIOS Serial Number"
522 depends on GENERATE_SMBIOS_TABLES
523 default "123456789"
524 help
525 The Serial Number to store in SMBIOS structures.
526
527config MAINBOARD_VERSION
528 string "SMBIOS Version Number"
529 depends on GENERATE_SMBIOS_TABLES
530 default "1.0"
531 help
532 The Version Number to store in SMBIOS structures.
533
534config MAINBOARD_SMBIOS_MANUFACTURER
535 string "SMBIOS Manufacturer"
536 depends on GENERATE_SMBIOS_TABLES
537 default MAINBOARD_VENDOR
538 help
539 Override the default Manufacturer stored in SMBIOS structures.
540
541config MAINBOARD_SMBIOS_PRODUCT_NAME
542 string "SMBIOS Product name"
543 depends on GENERATE_SMBIOS_TABLES
544 default MAINBOARD_PART_NUMBER
545 help
546 Override the default Product name stored in SMBIOS structures.
547
Myles Watson45bb25f2009-09-22 18:49:08 +0000548endmenu
549
Patrick Georgi0588d192009-08-12 15:00:51 +0000550menu "Payload"
551
Patrick Georgi0588d192009-08-12 15:00:51 +0000552choice
Uwe Hermann168b11b2009-10-07 16:15:40 +0000553 prompt "Add a payload"
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000554 default PAYLOAD_NONE if !ARCH_X86
555 default PAYLOAD_SEABIOS if ARCH_X86
Patrick Georgi0588d192009-08-12 15:00:51 +0000556
Uwe Hermann168b11b2009-10-07 16:15:40 +0000557config PAYLOAD_NONE
558 bool "None"
559 help
560 Select this option if you want to create an "empty" coreboot
561 ROM image for a certain mainboard, i.e. a coreboot ROM image
562 which does not yet contain a payload.
563
564 For such an image to be useful, you have to use 'cbfstool'
565 to add a payload to the ROM image later.
566
Patrick Georgi0588d192009-08-12 15:00:51 +0000567config PAYLOAD_ELF
Uwe Hermann168b11b2009-10-07 16:15:40 +0000568 bool "An ELF executable payload"
Patrick Georgi0588d192009-08-12 15:00:51 +0000569 help
570 Select this option if you have a payload image (an ELF file)
571 which coreboot should run as soon as the basic hardware
572 initialization is completed.
573
574 You will be able to specify the location and file name of the
575 payload image later.
Patrick Georgi0588d192009-08-12 15:00:51 +0000576
Patrick Georgi16ae95c2013-08-31 08:26:52 +0200577config PAYLOAD_LINUX
578 bool "A Linux payload"
579 help
580 Select this option if you have a Linux bzImage which coreboot
581 should run as soon as the basic hardware initialization
582 is completed.
583
584 You will be able to specify the location and file name of the
585 payload image later.
586
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000587config PAYLOAD_SEABIOS
588 bool "SeaBIOS"
589 depends on ARCH_X86
590 help
591 Select this option if you want to build a coreboot image
592 with a SeaBIOS payload. If you don't know what this is
593 about, just leave it enabled.
594
595 See http://coreboot.org/Payloads for more information.
596
Stefan Reinauere50952f2011-04-15 03:34:05 +0000597config PAYLOAD_FILO
598 bool "FILO"
599 help
600 Select this option if you want to build a coreboot image
601 with a FILO payload. If you don't know what this is
602 about, just leave it enabled.
603
604 See http://coreboot.org/Payloads for more information.
605
Vladimir Serbinenko113a3662013-11-14 12:10:08 +0100606config PAYLOAD_GRUB2
607 bool "GRUB2"
608 help
609 Select this option if you want to build a coreboot image
610 with a GRUB2 payload. If you don't know what this is
611 about, just leave it enabled.
612
613 See http://coreboot.org/Payloads for more information.
614
Stefan Reinauercc5b3442013-01-15 17:02:58 -0800615config PAYLOAD_TIANOCORE
616 bool "Tiano Core"
617 help
618 Select this option if you want to build a coreboot image
619 with a Tiano Core payload. If you don't know what this is
620 about, just leave it enabled.
621
622 See http://coreboot.org/Payloads for more information.
623
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000624endchoice
625
626choice
627 prompt "SeaBIOS version"
628 default SEABIOS_STABLE
629 depends on PAYLOAD_SEABIOS
630
631config SEABIOS_STABLE
Edward O'Callaghanaca67ed2014-09-13 20:43:45 +1000632 bool "1.7.5"
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000633 help
634 Stable SeaBIOS version
635config SEABIOS_MASTER
636 bool "master"
637 help
638 Newest SeaBIOS version
Daniele Forsi53847a22014-07-22 18:00:56 +0200639
Patrick Georgi0588d192009-08-12 15:00:51 +0000640endchoice
641
Peter Stugef0408582013-07-09 19:43:09 +0200642config SEABIOS_PS2_TIMEOUT
643 prompt "PS/2 keyboard controller initialization timeout (milliseconds)" if PAYLOAD_SEABIOS
Patrick Georgi1e44c3f2013-08-16 10:14:38 +0200644 default 0
Peter Stugef0408582013-07-09 19:43:09 +0200645 depends on EXPERT
646 int
647 help
648 Some PS/2 keyboard controllers don't respond to commands immediately
649 after powering on. This specifies how long SeaBIOS will wait for the
650 keyboard controller to become ready before giving up.
651
Idwer Vollering7c1a49b2014-04-01 22:47:33 +0000652config SEABIOS_THREAD_OPTIONROMS
653 prompt "Hardware init during option ROM execution" if PAYLOAD_SEABIOS
654 default n
655 bool
656 help
657 Allow hardware init to run in parallel with optionrom execution.
658
659 This can reduce boot time, but can cause some timing
660 variations during option ROM code execution. It is not
661 known if all option ROMs will behave properly with this option.
662
Martin Roth4d7d25f2014-07-25 14:39:05 -0600663config SEABIOS_MALLOC_UPPERMEMORY
664 bool
665 default y
666 depends on PAYLOAD_SEABIOS
667 help
668 Use the "Upper Memory Block" area (0xc0000-0xf0000) for internal
669 "low memory" allocations. If this is not selected, the memory is
670 instead allocated from the "9-segment" (0x90000-0xa0000).
671 This is not typically needed, but may be required on some platforms
672 to allow USB and SATA buffers to be written correctly by the
673 hardware. In general, if this is desired, the option will be
674 set to 'N' by the chipset Kconfig.
675
Edward O'Callaghana296f9e2014-09-13 03:43:49 +1000676config SEABIOS_VGA_COREBOOT
677 prompt "Include generated option rom that implements legacy VGA BIOS compatibility" if PAYLOAD_SEABIOS
678 default n
679 depends on !VGA_BIOS && MAINBOARD_DO_NATIVE_VGA_INIT
680 bool
681 help
682 Coreboot can initialize the GPU of some mainboards.
683
684 After initializing the GPU, the information about it can be passed to the payload.
685 Provide an option rom that implements this legacy VGA BIOS compatibility requirement.
686
Stefan Reinauere50952f2011-04-15 03:34:05 +0000687choice
Vladimir Serbinenko113a3662013-11-14 12:10:08 +0100688 prompt "GRUB2 version"
689 default GRUB2_MASTER
690 depends on PAYLOAD_GRUB2
691
692config GRUB2_MASTER
693 bool "HEAD"
694 help
695 Newest GRUB2 version
Daniele Forsi53847a22014-07-22 18:00:56 +0200696
Vladimir Serbinenko113a3662013-11-14 12:10:08 +0100697endchoice
698
699choice
Stefan Reinauere50952f2011-04-15 03:34:05 +0000700 prompt "FILO version"
701 default FILO_STABLE
702 depends on PAYLOAD_FILO
703
704config FILO_STABLE
705 bool "0.6.0"
706 help
707 Stable FILO version
Daniele Forsi53847a22014-07-22 18:00:56 +0200708
Stefan Reinauere50952f2011-04-15 03:34:05 +0000709config FILO_MASTER
710 bool "HEAD"
711 help
712 Newest FILO version
Daniele Forsi53847a22014-07-22 18:00:56 +0200713
Stefan Reinauere50952f2011-04-15 03:34:05 +0000714endchoice
715
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000716config PAYLOAD_FILE
Cristi Magherusanb5034d42009-08-17 14:47:32 +0000717 string "Payload path and filename"
Patrick Georgi0588d192009-08-12 15:00:51 +0000718 depends on PAYLOAD_ELF
719 default "payload.elf"
720 help
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000721 The path and filename of the ELF executable file to use as payload.
Patrick Georgi0588d192009-08-12 15:00:51 +0000722
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000723config PAYLOAD_FILE
Patrick Georgi16ae95c2013-08-31 08:26:52 +0200724 string "Linux path and filename"
725 depends on PAYLOAD_LINUX
726 default "bzImage"
727 help
728 The path and filename of the bzImage kernel to use as payload.
729
730config PAYLOAD_FILE
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000731 depends on PAYLOAD_SEABIOS
Idwer Volleringab11a6a92014-08-11 16:09:07 +0200732 default "payloads/external/SeaBIOS/seabios/out/bios.bin.elf"
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000733
Edward O'Callaghana296f9e2014-09-13 03:43:49 +1000734config PAYLOAD_VGABIOS_FILE
735 string
736 depends on PAYLOAD_SEABIOS && SEABIOS_VGA_COREBOOT
737 default "payloads/external/SeaBIOS/seabios/out/vgabios.bin"
738
Stefan Reinauere50952f2011-04-15 03:34:05 +0000739config PAYLOAD_FILE
740 depends on PAYLOAD_FILO
741 default "payloads/external/FILO/filo/build/filo.elf"
742
Stefan Reinauer275fb632013-02-05 13:58:29 -0800743config PAYLOAD_FILE
Vladimir Serbinenko113a3662013-11-14 12:10:08 +0100744 depends on PAYLOAD_GRUB2
745 default "payloads/external/GRUB2/grub2/build/default_payload.elf"
746
747config PAYLOAD_FILE
Stefan Reinauer275fb632013-02-05 13:58:29 -0800748 string "Tianocore firmware volume"
749 depends on PAYLOAD_TIANOCORE
750 default "COREBOOT.fd"
751 help
752 The result of a corebootPkg build
753
Uwe Hermann168b11b2009-10-07 16:15:40 +0000754# TODO: Defined if no payload? Breaks build?
755config COMPRESSED_PAYLOAD_LZMA
756 bool "Use LZMA compression for payloads"
757 default y
Vladimir Serbinenko113a3662013-11-14 12:10:08 +0100758 depends on PAYLOAD_ELF || PAYLOAD_SEABIOS || PAYLOAD_FILO || PAYLOAD_TIANOCORE || PAYLOAD_GRUB2
Uwe Hermann168b11b2009-10-07 16:15:40 +0000759 help
760 In order to reduce the size payloads take up in the ROM chip
761 coreboot can compress them using the LZMA algorithm.
762
Patrick Georgi16ae95c2013-08-31 08:26:52 +0200763config LINUX_COMMAND_LINE
764 string "Linux command line"
765 depends on PAYLOAD_LINUX
766 default ""
767 help
768 A command line to add to the Linux kernel.
769
770config LINUX_INITRD
771 string "Linux initrd"
772 depends on PAYLOAD_LINUX
773 default ""
774 help
775 An initrd image to add to the Linux kernel.
776
Peter Stugea758ca22009-09-17 16:21:31 +0000777endmenu
778
Uwe Hermann168b11b2009-10-07 16:15:40 +0000779menu "Debugging"
780
781# TODO: Better help text and detailed instructions.
Patrick Georgi0588d192009-08-12 15:00:51 +0000782config GDB_STUB
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000783 bool "GDB debugging support"
Rudolf Marek65888022012-03-25 20:51:16 +0200784 default n
Patrick Georgi0588d192009-08-12 15:00:51 +0000785 help
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000786 If enabled, you will be able to set breakpoints for gdb debugging.
Stefan Reinauer8677a232010-12-11 20:33:41 +0000787 See src/arch/x86/lib/c_start.S for details.
Patrick Georgi0588d192009-08-12 15:00:51 +0000788
Denis 'GNUtoo' Cariklie4cece02012-06-22 15:56:37 +0200789config GDB_WAIT
790 bool "Wait for a GDB connection"
791 default n
792 depends on GDB_STUB
793 help
794 If enabled, coreboot will wait for a GDB connection.
795
Stefan Reinauerfe422182012-05-02 16:33:18 -0700796config DEBUG_CBFS
797 bool "Output verbose CBFS debug messages"
798 default n
Stefan Reinauerfe422182012-05-02 16:33:18 -0700799 help
800 This option enables additional CBFS related debug messages.
801
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000802config HAVE_DEBUG_RAM_SETUP
803 def_bool n
804
Uwe Hermann01ce6012010-03-05 10:03:50 +0000805config DEBUG_RAM_SETUP
806 bool "Output verbose RAM init debug messages"
807 default n
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000808 depends on HAVE_DEBUG_RAM_SETUP
Uwe Hermann01ce6012010-03-05 10:03:50 +0000809 help
810 This option enables additional RAM init related debug messages.
811 It is recommended to enable this when debugging issues on your
812 board which might be RAM init related.
813
814 Note: This option will increase the size of the coreboot image.
815
816 If unsure, say N.
817
Patrick Georgie82618d2010-10-01 14:50:12 +0000818config HAVE_DEBUG_CAR
819 def_bool n
820
Peter Stuge5015f792010-11-10 02:00:32 +0000821config DEBUG_CAR
822 def_bool n
823 depends on HAVE_DEBUG_CAR
824
825if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
Uwe Hermanna953f372010-11-10 00:14:32 +0000826# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
827# printk(BIOS_DEBUG, ...) calls.
Patrick Georgie82618d2010-10-01 14:50:12 +0000828config DEBUG_CAR
829 bool "Output verbose Cache-as-RAM debug messages"
830 default n
Peter Stuge5015f792010-11-10 02:00:32 +0000831 depends on HAVE_DEBUG_CAR
Patrick Georgie82618d2010-10-01 14:50:12 +0000832 help
833 This option enables additional CAR related debug messages.
Peter Stuge5015f792010-11-10 02:00:32 +0000834endif
Patrick Georgie82618d2010-10-01 14:50:12 +0000835
Myles Watson80e914ff2010-06-01 19:25:31 +0000836config DEBUG_PIRQ
837 bool "Check PIRQ table consistency"
838 default n
839 depends on GENERATE_PIRQ_TABLE
840 help
841 If unsure, say N.
842
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000843config HAVE_DEBUG_SMBUS
844 def_bool n
845
Uwe Hermann01ce6012010-03-05 10:03:50 +0000846config DEBUG_SMBUS
847 bool "Output verbose SMBus debug messages"
848 default n
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000849 depends on HAVE_DEBUG_SMBUS
Uwe Hermann01ce6012010-03-05 10:03:50 +0000850 help
851 This option enables additional SMBus (and SPD) debug messages.
852
853 Note: This option will increase the size of the coreboot image.
854
855 If unsure, say N.
856
857config DEBUG_SMI
858 bool "Output verbose SMI debug messages"
859 default n
860 depends on HAVE_SMI_HANDLER
861 help
862 This option enables additional SMI related debug messages.
863
864 Note: This option will increase the size of the coreboot image.
865
866 If unsure, say N.
867
Stefan Reinauerbc0f7a62010-08-01 15:41:14 +0000868config DEBUG_SMM_RELOCATION
869 bool "Debug SMM relocation code"
870 default n
871 depends on HAVE_SMI_HANDLER
872 help
873 This option enables additional SMM handler relocation related
874 debug messages.
875
876 Note: This option will increase the size of the coreboot image.
877
878 If unsure, say N.
879
Uwe Hermanna953f372010-11-10 00:14:32 +0000880# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
881# printk(BIOS_DEBUG, ...) calls.
882config DEBUG_MALLOC
Stefan Reinauer95a63962012-11-13 17:00:01 -0800883 prompt "Output verbose malloc debug messages" if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
884 bool
Uwe Hermanna953f372010-11-10 00:14:32 +0000885 default n
Uwe Hermanna953f372010-11-10 00:14:32 +0000886 help
887 This option enables additional malloc related debug messages.
888
889 Note: This option will increase the size of the coreboot image.
890
891 If unsure, say N.
Cristian Măgherușan-Stanciu9f52ea42011-07-02 00:44:39 +0300892
893# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
894# printk(BIOS_DEBUG, ...) calls.
Cristian Măgherușan-Stanciu9f52ea42011-07-02 00:44:39 +0300895config DEBUG_ACPI
Stefan Reinauer95a63962012-11-13 17:00:01 -0800896 prompt "Output verbose ACPI debug messages" if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
897 bool
Cristian Măgherușan-Stanciu9f52ea42011-07-02 00:44:39 +0300898 default n
899 help
900 This option enables additional ACPI related debug messages.
901
902 Note: This option will slightly increase the size of the coreboot image.
903
904 If unsure, say N.
Cristian Măgherușan-Stanciu9f52ea42011-07-02 00:44:39 +0300905
Uwe Hermanna953f372010-11-10 00:14:32 +0000906# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
907# printk(BIOS_DEBUG, ...) calls.
Myles Watson6c9bc012010-09-07 22:30:15 +0000908config REALMODE_DEBUG
Stefan Reinauer95a63962012-11-13 17:00:01 -0800909 prompt "Enable debug messages for option ROM execution" if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
910 bool
Myles Watson6c9bc012010-09-07 22:30:15 +0000911 default n
Peter Stuge5015f792010-11-10 02:00:32 +0000912 depends on PCI_OPTION_ROM_RUN_REALMODE
Myles Watson6c9bc012010-09-07 22:30:15 +0000913 help
914 This option enables additional x86emu related debug messages.
915
916 Note: This option will increase the time to emulate a ROM.
917
918 If unsure, say N.
919
Uwe Hermann01ce6012010-03-05 10:03:50 +0000920config X86EMU_DEBUG
921 bool "Output verbose x86emu debug messages"
922 default n
923 depends on PCI_OPTION_ROM_RUN_YABEL
924 help
925 This option enables additional x86emu related debug messages.
926
927 Note: This option will increase the size of the coreboot image.
928
929 If unsure, say N.
930
931config X86EMU_DEBUG_JMP
932 bool "Trace JMP/RETF"
933 default n
934 depends on X86EMU_DEBUG
935 help
936 Print information about JMP and RETF opcodes from x86emu.
937
938 Note: This option will increase the size of the coreboot image.
939
940 If unsure, say N.
941
942config X86EMU_DEBUG_TRACE
943 bool "Trace all opcodes"
944 default n
945 depends on X86EMU_DEBUG
946 help
947 Print _all_ opcodes that are executed by x86emu.
Stefan Reinauer14e22772010-04-27 06:56:47 +0000948
Uwe Hermann01ce6012010-03-05 10:03:50 +0000949 WARNING: This will produce a LOT of output and take a long time.
950
951 Note: This option will increase the size of the coreboot image.
952
953 If unsure, say N.
954
955config X86EMU_DEBUG_PNP
956 bool "Log Plug&Play accesses"
957 default n
958 depends on X86EMU_DEBUG
959 help
960 Print Plug And Play accesses made by option ROMs.
961
962 Note: This option will increase the size of the coreboot image.
963
964 If unsure, say N.
965
966config X86EMU_DEBUG_DISK
967 bool "Log Disk I/O"
968 default n
969 depends on X86EMU_DEBUG
970 help
971 Print Disk I/O related messages.
972
973 Note: This option will increase the size of the coreboot image.
974
975 If unsure, say N.
976
977config X86EMU_DEBUG_PMM
978 bool "Log PMM"
979 default n
980 depends on X86EMU_DEBUG
981 help
982 Print messages related to POST Memory Manager (PMM).
983
984 Note: This option will increase the size of the coreboot image.
985
986 If unsure, say N.
987
988
989config X86EMU_DEBUG_VBE
990 bool "Debug VESA BIOS Extensions"
991 default n
992 depends on X86EMU_DEBUG
993 help
994 Print messages related to VESA BIOS Extension (VBE) functions.
995
996 Note: This option will increase the size of the coreboot image.
997
998 If unsure, say N.
999
1000config X86EMU_DEBUG_INT10
1001 bool "Redirect INT10 output to console"
1002 default n
1003 depends on X86EMU_DEBUG
1004 help
1005 Let INT10 (i.e. character output) calls print messages to debug output.
1006
1007 Note: This option will increase the size of the coreboot image.
1008
1009 If unsure, say N.
1010
1011config X86EMU_DEBUG_INTERRUPTS
1012 bool "Log intXX calls"
1013 default n
1014 depends on X86EMU_DEBUG
1015 help
1016 Print messages related to interrupt handling.
1017
1018 Note: This option will increase the size of the coreboot image.
1019
1020 If unsure, say N.
1021
1022config X86EMU_DEBUG_CHECK_VMEM_ACCESS
1023 bool "Log special memory accesses"
1024 default n
1025 depends on X86EMU_DEBUG
1026 help
1027 Print messages related to accesses to certain areas of the virtual
1028 memory (e.g. BDA (BIOS Data Area) or interrupt vectors)
1029
1030 Note: This option will increase the size of the coreboot image.
1031
1032 If unsure, say N.
1033
1034config X86EMU_DEBUG_MEM
1035 bool "Log all memory accesses"
1036 default n
1037 depends on X86EMU_DEBUG
1038 help
1039 Print memory accesses made by option ROM.
1040 Note: This also includes accesses to fetch instructions.
1041
1042 Note: This option will increase the size of the coreboot image.
1043
1044 If unsure, say N.
1045
1046config X86EMU_DEBUG_IO
1047 bool "Log IO accesses"
1048 default n
1049 depends on X86EMU_DEBUG
1050 help
1051 Print I/O accesses made by option ROM.
1052
1053 Note: This option will increase the size of the coreboot image.
1054
1055 If unsure, say N.
1056
Denis 'GNUtoo' Carikli4cdc5d62013-05-15 00:19:49 +02001057config X86EMU_DEBUG_TIMINGS
1058 bool "Output timing information"
1059 default n
1060 depends on X86EMU_DEBUG && UDELAY_LAPIC && HAVE_MONOTONIC_TIMER
1061 help
1062 Print timing information needed by i915tool.
1063
1064 If unsure, say N.
1065
Stefan Reinauerdfb098d2011-11-17 12:50:54 -08001066config DEBUG_TPM
1067 bool "Output verbose TPM debug messages"
1068 default n
1069 depends on TPM
1070 help
1071 This option enables additional TPM related debug messages.
1072
Stefan Reinauer1c56d9b2012-05-10 11:27:32 -07001073config DEBUG_SPI_FLASH
1074 bool "Output verbose SPI flash debug messages"
1075 default n
1076 depends on SPI_FLASH
1077 help
1078 This option enables additional SPI flash related debug messages.
1079
Kyösti Mälkki3be80cc2013-06-06 10:46:37 +03001080config DEBUG_USBDEBUG
1081 bool "Output verbose USB 2.0 EHCI debug dongle messages"
1082 default n
1083 depends on USBDEBUG
1084 help
1085 This option enables additional USB 2.0 debug dongle related messages.
1086
1087 Select this to debug the connection of usbdebug dongle. Note that
1088 you need some other working console to receive the messages.
1089
Stefan Reinauer8e073822012-04-04 00:07:22 +02001090if SOUTHBRIDGE_INTEL_BD82X6X && DEFAULT_CONSOLE_LOGLEVEL_8
1091# Only visible with the right southbridge and loglevel.
1092config DEBUG_INTEL_ME
1093 bool "Verbose logging for Intel Management Engine"
1094 default n
1095 help
1096 Enable verbose logging for Intel Management Engine driver that
1097 is present on Intel 6-series chipsets.
1098endif
1099
Rudolf Marek7f0e9302011-09-02 23:23:41 +02001100config TRACE
1101 bool "Trace function calls"
1102 default n
1103 help
1104 If enabled, every function will print information to console once
1105 the function is entered. The syntax is ~0xaaaabbbb(0xccccdddd)
1106 the 0xaaaabbbb is the actual function and 0xccccdddd is EIP
1107 of calling function. Please note some printk releated functions
1108 are omitted from trace to have good looking console dumps.
Stefan Reinauerd37ab452012-12-18 16:23:28 -08001109
1110config DEBUG_COVERAGE
1111 bool "Debug code coverage"
1112 default n
1113 depends on COVERAGE
1114 help
1115 If enabled, the code coverage hooks in coreboot will output some
1116 information about the coverage data that is dumped.
1117
Uwe Hermann168b11b2009-10-07 16:15:40 +00001118endmenu
1119
Myles Watsond73c1b52009-10-26 15:14:07 +00001120# These probably belong somewhere else, but they are needed somewhere.
Myles Watsond73c1b52009-10-26 15:14:07 +00001121config ENABLE_APIC_EXT_ID
1122 bool
1123 default n
Myles Watson2e672732009-11-12 16:38:03 +00001124
Edward O'Callaghan9b63c9b2014-10-29 06:00:15 +11001125# XXX Currently clang/llvm builds are not fully supported,
1126# Let us tone down warns treated as errors until we actually build
1127# the whole treee.
Myles Watson2e672732009-11-12 16:38:03 +00001128config WARNINGS_ARE_ERRORS
1129 bool
Edward O'Callaghan9b63c9b2014-10-29 06:00:15 +11001130 default y if !COMPILER_LLVM_CLANG
1131 default n if COMPILER_LLVM_CLANG
Patrick Georgi436f99b2009-11-27 16:55:13 +00001132
Peter Stuge51eafde2010-10-13 06:23:02 +00001133# The four POWER_BUTTON_DEFAULT_ENABLE, POWER_BUTTON_DEFAULT_DISABLE,
1134# POWER_BUTTON_FORCE_ENABLE and POWER_BUTTON_FORCE_DISABLE options are
1135# mutually exclusive. One of these options must be selected in the
1136# mainboard Kconfig if the chipset supports enabling and disabling of
1137# the power button. Chipset code uses the ENABLE_POWER_BUTTON option set
1138# in mainboard/Kconfig to know if the button should be enabled or not.
1139
1140config POWER_BUTTON_DEFAULT_ENABLE
1141 def_bool n
1142 help
1143 Select when the board has a power button which can optionally be
1144 disabled by the user.
1145
1146config POWER_BUTTON_DEFAULT_DISABLE
1147 def_bool n
1148 help
1149 Select when the board has a power button which can optionally be
1150 enabled by the user, e.g. when the board ships with a jumper over
1151 the power switch contacts.
1152
1153config POWER_BUTTON_FORCE_ENABLE
1154 def_bool n
1155 help
1156 Select when the board requires that the power button is always
1157 enabled.
1158
1159config POWER_BUTTON_FORCE_DISABLE
1160 def_bool n
1161 help
1162 Select when the board requires that the power button is always
1163 disabled, e.g. when it has been hardwired to ground.
1164
1165config POWER_BUTTON_IS_OPTIONAL
1166 bool
1167 default y if POWER_BUTTON_DEFAULT_ENABLE || POWER_BUTTON_DEFAULT_DISABLE
1168 default n if !(POWER_BUTTON_DEFAULT_ENABLE || POWER_BUTTON_DEFAULT_DISABLE)
1169 help
1170 Internal option that controls ENABLE_POWER_BUTTON visibility.
Duncan Laurie72748002013-10-31 08:26:23 -07001171
1172config REG_SCRIPT
1173 bool
Duncan Laurie72748002013-10-31 08:26:23 -07001174 default n
1175 help
1176 Internal option that controls whether we compile in register scripts.
Furquan Shaikh99ac98f2014-04-23 10:18:48 -07001177
1178# Maximum reboot count
1179# TODO: Improve description.
1180config MAX_REBOOT_CNT
1181 int
1182 default 3