blob: 9abbc2169da546a56dbd0830961875dbfd77ad85 [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
90 sconfig.y.
91 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
Uwe Hermannc04be932009-10-05 13:55:28 +0000109endmenu
110
Patrick Georgi0588d192009-08-12 15:00:51 +0000111source src/mainboard/Kconfig
Stefan Reinauer8aedcbc2010-12-16 23:37:17 +0000112
113# This option is used to set the architecture of a mainboard to X86.
114# It is usually set in mainboard/*/Kconfig.
115config ARCH_X86
116 bool
117 default n
118
119if ARCH_X86
Stefan Reinauer8677a232010-12-11 20:33:41 +0000120source src/arch/x86/Kconfig
Stefan Reinauer8aedcbc2010-12-16 23:37:17 +0000121endif
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000122
123menu "Chipset"
124
125comment "CPU"
Patrick Georgi0588d192009-08-12 15:00:51 +0000126source src/cpu/Kconfig
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000127comment "Northbridge"
128source src/northbridge/Kconfig
129comment "Southbridge"
130source src/southbridge/Kconfig
131comment "Super I/O"
132source src/superio/Kconfig
133comment "Devices"
134source src/devices/Kconfig
Sven Schnelle7592e8b2011-01-27 11:43:03 +0000135comment "Embedded Controllers"
136source src/ec/Kconfig
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000137
138endmenu
Patrick Georgi0588d192009-08-12 15:00:51 +0000139
Rudolf Marekd9c25492010-05-16 15:31:53 +0000140menu "Generic Drivers"
141source src/drivers/Kconfig
142endmenu
143
Patrick Georgi0588d192009-08-12 15:00:51 +0000144config PCI_BUS_SEGN_BITS
Myles Watson74fb8f22009-09-24 15:09:11 +0000145 int
146 default 0
Patrick Georgi892b0912009-09-24 09:03:06 +0000147
Patrick Georgi0588d192009-08-12 15:00:51 +0000148config PCI_ROM_RUN
Patrick Georgi698c0e0e2009-08-25 17:38:24 +0000149 bool
150 default n
Patrick Georgi0588d192009-08-12 15:00:51 +0000151
Patrick Georgi0588d192009-08-12 15:00:51 +0000152config HEAP_SIZE
153 hex
Myles Watson04000f42009-10-16 19:12:49 +0000154 default 0x4000
Patrick Georgi0588d192009-08-12 15:00:51 +0000155
Patrick Georgi0588d192009-08-12 15:00:51 +0000156config MAX_CPUS
157 int
158 default 1
159
160config MMCONF_SUPPORT_DEFAULT
161 bool
162 default n
163
164config MMCONF_SUPPORT
165 bool
166 default n
167
Patrick Georgi0588d192009-08-12 15:00:51 +0000168source src/console/Kconfig
169
Stefan Reinauer4885daa2011-04-26 23:47:04 +0000170# This should default to N and be set by SuperI/O drivers that have an UART
171config HAVE_UART_IO_MAPPED
172 bool
173 default y
174
175config HAVE_UART_MEMORY_MAPPED
176 bool
177 default n
178
Patrick Georgi0588d192009-08-12 15:00:51 +0000179config HAVE_ACPI_RESUME
180 bool
181 default n
182
Stefan Reinauerc4f1a772010-06-05 10:03:08 +0000183config HAVE_ACPI_SLIC
184 bool
185 default n
186
Patrick Georgi0588d192009-08-12 15:00:51 +0000187config ACPI_SSDTX_NUM
188 int
189 default 0
190
Patrick Georgi0588d192009-08-12 15:00:51 +0000191config HAVE_HARD_RESET
192 bool
Patrick Georgi37bdb872010-02-27 08:39:04 +0000193 default y if BOARD_HAS_HARD_RESET
Uwe Hermann748475b2009-10-09 11:47:21 +0000194 default n
Patrick Georgi37bdb872010-02-27 08:39:04 +0000195 help
196 This variable specifies whether a given board has a hard_reset
197 function, no matter if it's provided by board code or chipset code.
198
Patrick Georgi0588d192009-08-12 15:00:51 +0000199config HAVE_INIT_TIMER
200 bool
Patrick Georgi1f807fd2010-01-04 20:09:27 +0000201 default n if UDELAY_IO
Myles Watsond73c1b52009-10-26 15:14:07 +0000202 default y
Patrick Georgi0588d192009-08-12 15:00:51 +0000203
204config HAVE_MAINBOARD_RESOURCES
205 bool
206 default n
207
Edwin Beasanteb50c7d2010-07-06 21:05:04 +0000208config USE_OPTION_TABLE
209 bool
210 default n
211
Patrick Georgi0588d192009-08-12 15:00:51 +0000212config HAVE_OPTION_TABLE
213 bool
Edwin Beasanteb50c7d2010-07-06 21:05:04 +0000214 default n
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000215 help
216 This variable specifies whether a given board has a cmos.layout
217 file containing NVRAM/CMOS bit definitions.
Edwin Beasanteb50c7d2010-07-06 21:05:04 +0000218 It defaults to 'n' but can be selected in mainboard/*/Kconfig.
Patrick Georgi0588d192009-08-12 15:00:51 +0000219
Patrick Georgi0588d192009-08-12 15:00:51 +0000220config PIRQ_ROUTE
221 bool
222 default n
223
224config HAVE_SMI_HANDLER
225 bool
226 default n
227
228config PCI_IO_CFG_EXT
229 bool
230 default n
231
232config IOAPIC
233 bool
234 default n
235
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000236# TODO: Can probably be removed once all chipsets have kconfig options for it.
Uwe Hermann70b0cf22009-10-04 17:15:39 +0000237config VIDEO_MB
238 int
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000239 default 0
Uwe Hermann70b0cf22009-10-04 17:15:39 +0000240
Myles Watson45bb25f2009-09-22 18:49:08 +0000241config USE_WATCHDOG_ON_BOOT
242 bool
243 default n
244
245config VGA
246 bool
247 default n
248 help
249 Build board-specific VGA code.
250
251config GFXUMA
252 bool
Myles Watsond73c1b52009-10-26 15:14:07 +0000253 default n
Myles Watson45bb25f2009-09-22 18:49:08 +0000254 help
255 Enable Unified Memory Architecture for graphics.
256
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000257# TODO
258# menu "Drivers"
Uwe Hermann168b11b2009-10-07 16:15:40 +0000259#
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000260# endmenu
Patrick Georgi0588d192009-08-12 15:00:51 +0000261
Myles Watsonb8e20272009-10-15 13:35:47 +0000262config HAVE_ACPI_TABLES
263 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000264 help
265 This variable specifies whether a given board has ACPI table support.
266 It is usually set in mainboard/*/Kconfig.
267 Whether or not the ACPI tables are actually generated by coreboot
268 is configurable by the user via GENERATE_ACPI_TABLES.
Myles Watsonb8e20272009-10-15 13:35:47 +0000269
270config HAVE_MP_TABLE
271 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000272 help
273 This variable specifies whether a given board has MP table support.
274 It is usually set in mainboard/*/Kconfig.
275 Whether or not the MP table is actually generated by coreboot
276 is configurable by the user via GENERATE_MP_TABLE.
Myles Watsonb8e20272009-10-15 13:35:47 +0000277
278config HAVE_PIRQ_TABLE
279 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000280 help
281 This variable specifies whether a given board has PIRQ table support.
282 It is usually set in mainboard/*/Kconfig.
283 Whether or not the PIRQ table is actually generated by coreboot
284 is configurable by the user via GENERATE_PIRQ_TABLE.
Myles Watsonb8e20272009-10-15 13:35:47 +0000285
Myles Watsond73c1b52009-10-26 15:14:07 +0000286#These Options are here to avoid "undefined" warnings.
287#The actual selection and help texts are in the following menu.
288
289config GENERATE_ACPI_TABLES
Myles Watsonb8e20272009-10-15 13:35:47 +0000290 bool
Myles Watsond73c1b52009-10-26 15:14:07 +0000291 default HAVE_ACPI_TABLES
292
293config GENERATE_MP_TABLE
294 bool
295 default HAVE_MP_TABLE
296
297config GENERATE_PIRQ_TABLE
298 bool
299 default HAVE_PIRQ_TABLE
300
Uwe Hermann168b11b2009-10-07 16:15:40 +0000301menu "System tables"
Myles Watson45bb25f2009-09-22 18:49:08 +0000302
Myles Watsonb8e20272009-10-15 13:35:47 +0000303config WRITE_HIGH_TABLES
Myles Watson45bb25f2009-09-22 18:49:08 +0000304 bool "Write 'high' tables to avoid being overwritten in F segment"
305 default y
306
307config MULTIBOOT
Uwe Hermann168b11b2009-10-07 16:15:40 +0000308 bool "Generate Multiboot tables (for GRUB2)"
Ronald G. Minnich7f91d922009-11-09 17:56:47 +0000309 default y
Myles Watson45bb25f2009-09-22 18:49:08 +0000310
Myles Watsonb8e20272009-10-15 13:35:47 +0000311config GENERATE_ACPI_TABLES
312 depends on HAVE_ACPI_TABLES
Myles Watson45bb25f2009-09-22 18:49:08 +0000313 bool "Generate ACPI tables"
Myles Watsonb8e20272009-10-15 13:35:47 +0000314 default y
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000315 help
316 Generate ACPI tables for this board.
317
318 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000319
Myles Watsonb8e20272009-10-15 13:35:47 +0000320config GENERATE_MP_TABLE
321 depends on HAVE_MP_TABLE
Myles Watson45bb25f2009-09-22 18:49:08 +0000322 bool "Generate an MP table"
Myles Watsonb8e20272009-10-15 13:35:47 +0000323 default y
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000324 help
325 Generate an MP table (conforming to the Intel MultiProcessor
326 specification 1.4) for this board.
327
328 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000329
Myles Watsonb8e20272009-10-15 13:35:47 +0000330config GENERATE_PIRQ_TABLE
331 depends on HAVE_PIRQ_TABLE
Myles Watson45bb25f2009-09-22 18:49:08 +0000332 bool "Generate a PIRQ table"
Myles Watsonb8e20272009-10-15 13:35:47 +0000333 default y
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000334 help
335 Generate a PIRQ table for this board.
336
337 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000338
339endmenu
340
Patrick Georgi0588d192009-08-12 15:00:51 +0000341menu "Payload"
342
Patrick Georgi0588d192009-08-12 15:00:51 +0000343choice
Uwe Hermann168b11b2009-10-07 16:15:40 +0000344 prompt "Add a payload"
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000345 default PAYLOAD_NONE if !ARCH_X86
346 default PAYLOAD_SEABIOS if ARCH_X86
Patrick Georgi0588d192009-08-12 15:00:51 +0000347
Uwe Hermann168b11b2009-10-07 16:15:40 +0000348config PAYLOAD_NONE
349 bool "None"
350 help
351 Select this option if you want to create an "empty" coreboot
352 ROM image for a certain mainboard, i.e. a coreboot ROM image
353 which does not yet contain a payload.
354
355 For such an image to be useful, you have to use 'cbfstool'
356 to add a payload to the ROM image later.
357
Patrick Georgi0588d192009-08-12 15:00:51 +0000358config PAYLOAD_ELF
Uwe Hermann168b11b2009-10-07 16:15:40 +0000359 bool "An ELF executable payload"
Patrick Georgi0588d192009-08-12 15:00:51 +0000360 help
361 Select this option if you have a payload image (an ELF file)
362 which coreboot should run as soon as the basic hardware
363 initialization is completed.
364
365 You will be able to specify the location and file name of the
366 payload image later.
Patrick Georgi0588d192009-08-12 15:00:51 +0000367
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000368config PAYLOAD_SEABIOS
369 bool "SeaBIOS"
370 depends on ARCH_X86
371 help
372 Select this option if you want to build a coreboot image
373 with a SeaBIOS payload. If you don't know what this is
374 about, just leave it enabled.
375
376 See http://coreboot.org/Payloads for more information.
377
Stefan Reinauere50952f2011-04-15 03:34:05 +0000378config PAYLOAD_FILO
379 bool "FILO"
380 help
381 Select this option if you want to build a coreboot image
382 with a FILO payload. If you don't know what this is
383 about, just leave it enabled.
384
385 See http://coreboot.org/Payloads for more information.
386
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000387endchoice
388
389choice
390 prompt "SeaBIOS version"
391 default SEABIOS_STABLE
392 depends on PAYLOAD_SEABIOS
393
394config SEABIOS_STABLE
395 bool "stable"
396 help
397 Stable SeaBIOS version
398config SEABIOS_MASTER
399 bool "master"
400 help
401 Newest SeaBIOS version
Patrick Georgi0588d192009-08-12 15:00:51 +0000402endchoice
403
Stefan Reinauere50952f2011-04-15 03:34:05 +0000404choice
405 prompt "FILO version"
406 default FILO_STABLE
407 depends on PAYLOAD_FILO
408
409config FILO_STABLE
410 bool "0.6.0"
411 help
412 Stable FILO version
413config FILO_MASTER
414 bool "HEAD"
415 help
416 Newest FILO version
417endchoice
418
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000419config PAYLOAD_FILE
Cristi Magherusanb5034d42009-08-17 14:47:32 +0000420 string "Payload path and filename"
Patrick Georgi0588d192009-08-12 15:00:51 +0000421 depends on PAYLOAD_ELF
422 default "payload.elf"
423 help
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000424 The path and filename of the ELF executable file to use as payload.
Patrick Georgi0588d192009-08-12 15:00:51 +0000425
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000426config PAYLOAD_FILE
427 depends on PAYLOAD_SEABIOS
428 default "payloads/external/SeaBIOS/seabios/out/bios.bin.elf"
429
Stefan Reinauere50952f2011-04-15 03:34:05 +0000430config PAYLOAD_FILE
431 depends on PAYLOAD_FILO
432 default "payloads/external/FILO/filo/build/filo.elf"
433
Uwe Hermann168b11b2009-10-07 16:15:40 +0000434# TODO: Defined if no payload? Breaks build?
435config COMPRESSED_PAYLOAD_LZMA
436 bool "Use LZMA compression for payloads"
437 default y
Stefan Reinauere50952f2011-04-15 03:34:05 +0000438 depends on PAYLOAD_ELF || PAYLOAD_SEABIOS || PAYLOAD_FILO
Uwe Hermann168b11b2009-10-07 16:15:40 +0000439 help
440 In order to reduce the size payloads take up in the ROM chip
441 coreboot can compress them using the LZMA algorithm.
442
Myles Watson04000f42009-10-16 19:12:49 +0000443config COMPRESSED_PAYLOAD_NRV2B
Peter Stuged7b37b02009-10-17 03:00:04 +0000444 bool
Myles Watson04000f42009-10-16 19:12:49 +0000445 default n
446
Peter Stugea758ca22009-09-17 16:21:31 +0000447endmenu
448
449menu "VGA BIOS"
450
451config VGA_BIOS
452 bool "Add a VGA BIOS image"
453 help
454 Select this option if you have a VGA BIOS image that you would
455 like to add to your ROM.
456
457 You will be able to specify the location and file name of the
458 image later.
459
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000460config VGA_BIOS_FILE
Cristi Magherusan488c36c2009-08-17 14:46:13 +0000461 string "VGA BIOS path and filename"
462 depends on VGA_BIOS
463 default "vgabios.bin"
464 help
465 The path and filename of the file to use as VGA BIOS.
466
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000467config VGA_BIOS_ID
Uwe Hermann81b3c0a2009-10-30 12:56:59 +0000468 string "VGA device PCI IDs"
Cristi Magherusan488c36c2009-08-17 14:46:13 +0000469 depends on VGA_BIOS
470 default "1106,3230"
471 help
Uwe Hermann168b11b2009-10-07 16:15:40 +0000472 The comma-separated PCI vendor and device ID that would associate
473 your VGA BIOS to your video card.
474
475 Example: 1106,3230
476
477 In the above example 1106 is the PCI vendor ID (in hex, but without
478 the "0x" prefix) and 3230 specifies the PCI device ID of the
479 video card (also in hex, without "0x" prefix).
Cristi Magherusan488c36c2009-08-17 14:46:13 +0000480
Stefan Reinauer800379f2010-03-01 08:34:19 +0000481config INTEL_MBI
482 bool "Add an MBI image"
483 depends on NORTHBRIDGE_INTEL_I82830
484 help
485 Select this option if you have an Intel MBI image that you would
486 like to add to your ROM.
487
488 You will be able to specify the location and file name of the
489 image later.
490
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000491config MBI_FILE
Stefan Reinauer800379f2010-03-01 08:34:19 +0000492 string "Intel MBI path and filename"
493 depends on INTEL_MBI
494 default "mbi.bin"
495 help
496 The path and filename of the file to use as VGA BIOS.
497
498endmenu
499
500menu "Bootsplash"
501 depends on PCI_OPTION_ROM_RUN_YABEL
502
503config BOOTSPLASH
504 prompt "Show graphical bootsplash"
505 bool
506 depends on PCI_OPTION_ROM_RUN_YABEL
507 help
508 This option shows a graphical bootsplash screen. The grapics are
509 loaded from the CBFS file bootsplash.jpg.
510
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000511config BOOTSPLASH_FILE
Stefan Reinauer800379f2010-03-01 08:34:19 +0000512 string "Bootsplash path and filename"
513 depends on BOOTSPLASH
514 default "bootsplash.jpg"
515 help
Stefan Reinauer14e22772010-04-27 06:56:47 +0000516 The path and filename of the file to use as graphical bootsplash
517 screen. The file format has to be jpg.
Stefan Reinauer800379f2010-03-01 08:34:19 +0000518
519# TODO: Turn this into a "choice".
520config FRAMEBUFFER_VESA_MODE
521 prompt "VESA framebuffer video mode"
522 hex
523 default 0x117
524 depends on BOOTSPLASH
525 help
526 This option sets the resolution used for the coreboot framebuffer and
527 bootsplash screen. Set to 0x117 for 1024x768x16. A diligent soul will
528 some day make this a "choice".
529
530config COREBOOT_KEEP_FRAMEBUFFER
531 prompt "Keep VESA framebuffer"
532 bool
533 depends on BOOTSPLASH
534 help
535 This option keeps the framebuffer mode set after coreboot finishes
536 execution. If this option is enabled, coreboot will pass a
537 framebuffer entry in its coreboot table and the payload will need a
538 framebuffer driver. If this option is disabled, coreboot will switch
539 back to text mode before handing control to a payload.
540
Patrick Georgi0588d192009-08-12 15:00:51 +0000541endmenu
542
Uwe Hermann168b11b2009-10-07 16:15:40 +0000543menu "Debugging"
544
545# TODO: Better help text and detailed instructions.
Patrick Georgi0588d192009-08-12 15:00:51 +0000546config GDB_STUB
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000547 bool "GDB debugging support"
Patrick Georgi0588d192009-08-12 15:00:51 +0000548 default y
549 help
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000550 If enabled, you will be able to set breakpoints for gdb debugging.
Stefan Reinauer8677a232010-12-11 20:33:41 +0000551 See src/arch/x86/lib/c_start.S for details.
Patrick Georgi0588d192009-08-12 15:00:51 +0000552
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000553config HAVE_DEBUG_RAM_SETUP
554 def_bool n
555
Uwe Hermann01ce6012010-03-05 10:03:50 +0000556config DEBUG_RAM_SETUP
557 bool "Output verbose RAM init debug messages"
558 default n
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000559 depends on HAVE_DEBUG_RAM_SETUP
Uwe Hermann01ce6012010-03-05 10:03:50 +0000560 help
561 This option enables additional RAM init related debug messages.
562 It is recommended to enable this when debugging issues on your
563 board which might be RAM init related.
564
565 Note: This option will increase the size of the coreboot image.
566
567 If unsure, say N.
568
Patrick Georgie82618d2010-10-01 14:50:12 +0000569config HAVE_DEBUG_CAR
570 def_bool n
571
Peter Stuge5015f792010-11-10 02:00:32 +0000572config DEBUG_CAR
573 def_bool n
574 depends on HAVE_DEBUG_CAR
575
576if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
Uwe Hermanna953f372010-11-10 00:14:32 +0000577# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
578# printk(BIOS_DEBUG, ...) calls.
Patrick Georgie82618d2010-10-01 14:50:12 +0000579config DEBUG_CAR
580 bool "Output verbose Cache-as-RAM debug messages"
581 default n
Peter Stuge5015f792010-11-10 02:00:32 +0000582 depends on HAVE_DEBUG_CAR
Patrick Georgie82618d2010-10-01 14:50:12 +0000583 help
584 This option enables additional CAR related debug messages.
Peter Stuge5015f792010-11-10 02:00:32 +0000585endif
Patrick Georgie82618d2010-10-01 14:50:12 +0000586
Myles Watson80e914ff2010-06-01 19:25:31 +0000587config DEBUG_PIRQ
588 bool "Check PIRQ table consistency"
589 default n
590 depends on GENERATE_PIRQ_TABLE
591 help
592 If unsure, say N.
593
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000594config HAVE_DEBUG_SMBUS
595 def_bool n
596
Uwe Hermann01ce6012010-03-05 10:03:50 +0000597config DEBUG_SMBUS
598 bool "Output verbose SMBus debug messages"
599 default n
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000600 depends on HAVE_DEBUG_SMBUS
Uwe Hermann01ce6012010-03-05 10:03:50 +0000601 help
602 This option enables additional SMBus (and SPD) debug messages.
603
604 Note: This option will increase the size of the coreboot image.
605
606 If unsure, say N.
607
608config DEBUG_SMI
609 bool "Output verbose SMI debug messages"
610 default n
611 depends on HAVE_SMI_HANDLER
612 help
613 This option enables additional SMI related debug messages.
614
615 Note: This option will increase the size of the coreboot image.
616
617 If unsure, say N.
618
Stefan Reinauerbc0f7a62010-08-01 15:41:14 +0000619config DEBUG_SMM_RELOCATION
620 bool "Debug SMM relocation code"
621 default n
622 depends on HAVE_SMI_HANDLER
623 help
624 This option enables additional SMM handler relocation related
625 debug messages.
626
627 Note: This option will increase the size of the coreboot image.
628
629 If unsure, say N.
630
Peter Stuge5015f792010-11-10 02:00:32 +0000631config DEBUG_MALLOC
632 def_bool n
633
Uwe Hermanna953f372010-11-10 00:14:32 +0000634# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
635# printk(BIOS_DEBUG, ...) calls.
Peter Stuge5015f792010-11-10 02:00:32 +0000636if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
Uwe Hermanna953f372010-11-10 00:14:32 +0000637config DEBUG_MALLOC
638 bool "Output verbose malloc debug messages"
639 default n
Uwe Hermanna953f372010-11-10 00:14:32 +0000640 help
641 This option enables additional malloc related debug messages.
642
643 Note: This option will increase the size of the coreboot image.
644
645 If unsure, say N.
Peter Stuge5015f792010-11-10 02:00:32 +0000646endif
Uwe Hermanna953f372010-11-10 00:14:32 +0000647
Peter Stuge5015f792010-11-10 02:00:32 +0000648config REALMODE_DEBUG
649 def_bool n
650 depends on PCI_OPTION_ROM_RUN_REALMODE
651
652if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
Uwe Hermanna953f372010-11-10 00:14:32 +0000653# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
654# printk(BIOS_DEBUG, ...) calls.
Myles Watson6c9bc012010-09-07 22:30:15 +0000655config REALMODE_DEBUG
656 bool "Enable debug messages for option ROM execution"
657 default n
Peter Stuge5015f792010-11-10 02:00:32 +0000658 depends on PCI_OPTION_ROM_RUN_REALMODE
Myles Watson6c9bc012010-09-07 22:30:15 +0000659 help
660 This option enables additional x86emu related debug messages.
661
662 Note: This option will increase the time to emulate a ROM.
663
664 If unsure, say N.
Peter Stuge5015f792010-11-10 02:00:32 +0000665endif
Myles Watson6c9bc012010-09-07 22:30:15 +0000666
Uwe Hermann01ce6012010-03-05 10:03:50 +0000667config X86EMU_DEBUG
668 bool "Output verbose x86emu debug messages"
669 default n
670 depends on PCI_OPTION_ROM_RUN_YABEL
671 help
672 This option enables additional x86emu related debug messages.
673
674 Note: This option will increase the size of the coreboot image.
675
676 If unsure, say N.
677
678config X86EMU_DEBUG_JMP
679 bool "Trace JMP/RETF"
680 default n
681 depends on X86EMU_DEBUG
682 help
683 Print information about JMP and RETF opcodes from x86emu.
684
685 Note: This option will increase the size of the coreboot image.
686
687 If unsure, say N.
688
689config X86EMU_DEBUG_TRACE
690 bool "Trace all opcodes"
691 default n
692 depends on X86EMU_DEBUG
693 help
694 Print _all_ opcodes that are executed by x86emu.
Stefan Reinauer14e22772010-04-27 06:56:47 +0000695
Uwe Hermann01ce6012010-03-05 10:03:50 +0000696 WARNING: This will produce a LOT of output and take a long time.
697
698 Note: This option will increase the size of the coreboot image.
699
700 If unsure, say N.
701
702config X86EMU_DEBUG_PNP
703 bool "Log Plug&Play accesses"
704 default n
705 depends on X86EMU_DEBUG
706 help
707 Print Plug And Play accesses made by option ROMs.
708
709 Note: This option will increase the size of the coreboot image.
710
711 If unsure, say N.
712
713config X86EMU_DEBUG_DISK
714 bool "Log Disk I/O"
715 default n
716 depends on X86EMU_DEBUG
717 help
718 Print Disk I/O related messages.
719
720 Note: This option will increase the size of the coreboot image.
721
722 If unsure, say N.
723
724config X86EMU_DEBUG_PMM
725 bool "Log PMM"
726 default n
727 depends on X86EMU_DEBUG
728 help
729 Print messages related to POST Memory Manager (PMM).
730
731 Note: This option will increase the size of the coreboot image.
732
733 If unsure, say N.
734
735
736config X86EMU_DEBUG_VBE
737 bool "Debug VESA BIOS Extensions"
738 default n
739 depends on X86EMU_DEBUG
740 help
741 Print messages related to VESA BIOS Extension (VBE) functions.
742
743 Note: This option will increase the size of the coreboot image.
744
745 If unsure, say N.
746
747config X86EMU_DEBUG_INT10
748 bool "Redirect INT10 output to console"
749 default n
750 depends on X86EMU_DEBUG
751 help
752 Let INT10 (i.e. character output) calls print messages to debug output.
753
754 Note: This option will increase the size of the coreboot image.
755
756 If unsure, say N.
757
758config X86EMU_DEBUG_INTERRUPTS
759 bool "Log intXX calls"
760 default n
761 depends on X86EMU_DEBUG
762 help
763 Print messages related to interrupt handling.
764
765 Note: This option will increase the size of the coreboot image.
766
767 If unsure, say N.
768
769config X86EMU_DEBUG_CHECK_VMEM_ACCESS
770 bool "Log special memory accesses"
771 default n
772 depends on X86EMU_DEBUG
773 help
774 Print messages related to accesses to certain areas of the virtual
775 memory (e.g. BDA (BIOS Data Area) or interrupt vectors)
776
777 Note: This option will increase the size of the coreboot image.
778
779 If unsure, say N.
780
781config X86EMU_DEBUG_MEM
782 bool "Log all memory accesses"
783 default n
784 depends on X86EMU_DEBUG
785 help
786 Print memory accesses made by option ROM.
787 Note: This also includes accesses to fetch instructions.
788
789 Note: This option will increase the size of the coreboot image.
790
791 If unsure, say N.
792
793config X86EMU_DEBUG_IO
794 bool "Log IO accesses"
795 default n
796 depends on X86EMU_DEBUG
797 help
798 Print I/O accesses made by option ROM.
799
800 Note: This option will increase the size of the coreboot image.
801
802 If unsure, say N.
803
Stefan Reinauer5c503922010-03-13 22:07:15 +0000804config LLSHELL
805 bool "Built-in low-level shell"
806 default n
807 help
808 If enabled, you will have a low level shell to examine your machine.
809 Put llshell() in your (romstage) code to start the shell.
Stefan Reinauer8677a232010-12-11 20:33:41 +0000810 See src/arch/x86/llshell/llshell.inc for details.
Stefan Reinauer5c503922010-03-13 22:07:15 +0000811
Uwe Hermann168b11b2009-10-07 16:15:40 +0000812endmenu
813
Myles Watson8f74c582009-10-20 16:10:04 +0000814config LIFT_BSP_APIC_ID
815 bool
816 default n
Myles Watsond73c1b52009-10-26 15:14:07 +0000817
818# These probably belong somewhere else, but they are needed somewhere.
819config AP_CODE_IN_CAR
820 bool
821 default n
822
Jonathan Kollasche5b75072010-10-07 23:02:06 +0000823config RAMINIT_SYSINFO
824 bool
825 default n
826
Myles Watsond73c1b52009-10-26 15:14:07 +0000827config ENABLE_APIC_EXT_ID
828 bool
829 default n
Myles Watson2e672732009-11-12 16:38:03 +0000830
831config WARNINGS_ARE_ERRORS
832 bool
Stefan Reinauer6f57b512010-07-08 16:41:05 +0000833 default y
Patrick Georgi436f99b2009-11-27 16:55:13 +0000834
835config ID_SECTION_OFFSET
836 hex
837 default 0x10
Patrick Georgicc669262010-03-14 21:31:05 +0000838
Peter Stuge51eafde2010-10-13 06:23:02 +0000839# The four POWER_BUTTON_DEFAULT_ENABLE, POWER_BUTTON_DEFAULT_DISABLE,
840# POWER_BUTTON_FORCE_ENABLE and POWER_BUTTON_FORCE_DISABLE options are
841# mutually exclusive. One of these options must be selected in the
842# mainboard Kconfig if the chipset supports enabling and disabling of
843# the power button. Chipset code uses the ENABLE_POWER_BUTTON option set
844# in mainboard/Kconfig to know if the button should be enabled or not.
845
846config POWER_BUTTON_DEFAULT_ENABLE
847 def_bool n
848 help
849 Select when the board has a power button which can optionally be
850 disabled by the user.
851
852config POWER_BUTTON_DEFAULT_DISABLE
853 def_bool n
854 help
855 Select when the board has a power button which can optionally be
856 enabled by the user, e.g. when the board ships with a jumper over
857 the power switch contacts.
858
859config POWER_BUTTON_FORCE_ENABLE
860 def_bool n
861 help
862 Select when the board requires that the power button is always
863 enabled.
864
865config POWER_BUTTON_FORCE_DISABLE
866 def_bool n
867 help
868 Select when the board requires that the power button is always
869 disabled, e.g. when it has been hardwired to ground.
870
871config POWER_BUTTON_IS_OPTIONAL
872 bool
873 default y if POWER_BUTTON_DEFAULT_ENABLE || POWER_BUTTON_DEFAULT_DISABLE
874 default n if !(POWER_BUTTON_DEFAULT_ENABLE || POWER_BUTTON_DEFAULT_DISABLE)
875 help
876 Internal option that controls ENABLE_POWER_BUTTON visibility.
877
Patrick Georgicc669262010-03-14 21:31:05 +0000878source src/Kconfig.deprecated_options