blob: 6894a6a9257400264a59f141bab24219fc31fcf0 [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
Uwe Hermannc04be932009-10-05 13:55:28 +0000101endmenu
102
Patrick Georgi0588d192009-08-12 15:00:51 +0000103source src/mainboard/Kconfig
Stefan Reinauer8aedcbc2010-12-16 23:37:17 +0000104
105# This option is used to set the architecture of a mainboard to X86.
106# It is usually set in mainboard/*/Kconfig.
107config ARCH_X86
108 bool
109 default n
110
111if ARCH_X86
Stefan Reinauer8677a232010-12-11 20:33:41 +0000112source src/arch/x86/Kconfig
Stefan Reinauer8aedcbc2010-12-16 23:37:17 +0000113endif
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000114
115menu "Chipset"
116
117comment "CPU"
Patrick Georgi0588d192009-08-12 15:00:51 +0000118source src/cpu/Kconfig
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000119comment "Northbridge"
120source src/northbridge/Kconfig
121comment "Southbridge"
122source src/southbridge/Kconfig
123comment "Super I/O"
124source src/superio/Kconfig
125comment "Devices"
126source src/devices/Kconfig
127
128endmenu
Patrick Georgi0588d192009-08-12 15:00:51 +0000129
Rudolf Marekd9c25492010-05-16 15:31:53 +0000130menu "Generic Drivers"
131source src/drivers/Kconfig
132endmenu
133
Patrick Georgi0588d192009-08-12 15:00:51 +0000134config PCI_BUS_SEGN_BITS
Myles Watson74fb8f22009-09-24 15:09:11 +0000135 int
136 default 0
Patrick Georgi892b0912009-09-24 09:03:06 +0000137
Patrick Georgi0588d192009-08-12 15:00:51 +0000138config MAINBOARD_PCI_SUBSYSTEM_VENDOR_ID
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000139 hex
Uwe Hermann748475b2009-10-09 11:47:21 +0000140 default 0x0
Patrick Georgi0588d192009-08-12 15:00:51 +0000141
142config MAINBOARD_PCI_SUBSYSTEM_DEVICE_ID
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000143 hex
Uwe Hermann748475b2009-10-09 11:47:21 +0000144 default 0x0
Patrick Georgi0588d192009-08-12 15:00:51 +0000145config PCI_ROM_RUN
Patrick Georgi698c0e0e2009-08-25 17:38:24 +0000146 bool
147 default n
Patrick Georgi0588d192009-08-12 15:00:51 +0000148
Patrick Georgi0588d192009-08-12 15:00:51 +0000149config HEAP_SIZE
150 hex
Myles Watson04000f42009-10-16 19:12:49 +0000151 default 0x4000
Patrick Georgi0588d192009-08-12 15:00:51 +0000152
Patrick Georgi0588d192009-08-12 15:00:51 +0000153config MAX_CPUS
154 int
155 default 1
156
157config MMCONF_SUPPORT_DEFAULT
158 bool
159 default n
160
161config MMCONF_SUPPORT
162 bool
163 default n
164
Patrick Georgi91ff0df2009-10-09 12:32:52 +0000165config ATI_RAGE_XL
166 bool
Patrick Georgi91ff0df2009-10-09 12:32:52 +0000167
Patrick Georgi0588d192009-08-12 15:00:51 +0000168source src/console/Kconfig
169
170config HAVE_ACPI_RESUME
171 bool
172 default n
173
Stefan Reinauerc4f1a772010-06-05 10:03:08 +0000174config HAVE_ACPI_SLIC
175 bool
176 default n
177
Patrick Georgi0588d192009-08-12 15:00:51 +0000178config ACPI_SSDTX_NUM
179 int
180 default 0
181
Patrick Georgi0588d192009-08-12 15:00:51 +0000182config HAVE_HARD_RESET
183 bool
Patrick Georgi37bdb872010-02-27 08:39:04 +0000184 default y if BOARD_HAS_HARD_RESET
Uwe Hermann748475b2009-10-09 11:47:21 +0000185 default n
Patrick Georgi37bdb872010-02-27 08:39:04 +0000186 help
187 This variable specifies whether a given board has a hard_reset
188 function, no matter if it's provided by board code or chipset code.
189
Patrick Georgi0588d192009-08-12 15:00:51 +0000190config HAVE_INIT_TIMER
191 bool
Patrick Georgi1f807fd2010-01-04 20:09:27 +0000192 default n if UDELAY_IO
Myles Watsond73c1b52009-10-26 15:14:07 +0000193 default y
Patrick Georgi0588d192009-08-12 15:00:51 +0000194
195config HAVE_MAINBOARD_RESOURCES
196 bool
197 default n
198
Edwin Beasanteb50c7d2010-07-06 21:05:04 +0000199config USE_OPTION_TABLE
200 bool
201 default n
202
Patrick Georgi0588d192009-08-12 15:00:51 +0000203config HAVE_OPTION_TABLE
204 bool
Edwin Beasanteb50c7d2010-07-06 21:05:04 +0000205 default n
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000206 help
207 This variable specifies whether a given board has a cmos.layout
208 file containing NVRAM/CMOS bit definitions.
Edwin Beasanteb50c7d2010-07-06 21:05:04 +0000209 It defaults to 'n' but can be selected in mainboard/*/Kconfig.
Patrick Georgi0588d192009-08-12 15:00:51 +0000210
Patrick Georgi0588d192009-08-12 15:00:51 +0000211config PIRQ_ROUTE
212 bool
213 default n
214
215config HAVE_SMI_HANDLER
216 bool
217 default n
218
219config PCI_IO_CFG_EXT
220 bool
221 default n
222
223config IOAPIC
224 bool
225 default n
226
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000227# TODO: Can probably be removed once all chipsets have kconfig options for it.
Uwe Hermann70b0cf22009-10-04 17:15:39 +0000228config VIDEO_MB
229 int
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000230 default 0
Uwe Hermann70b0cf22009-10-04 17:15:39 +0000231
Myles Watson45bb25f2009-09-22 18:49:08 +0000232config USE_WATCHDOG_ON_BOOT
233 bool
234 default n
235
236config VGA
237 bool
238 default n
239 help
240 Build board-specific VGA code.
241
242config GFXUMA
243 bool
Myles Watsond73c1b52009-10-26 15:14:07 +0000244 default n
Myles Watson45bb25f2009-09-22 18:49:08 +0000245 help
246 Enable Unified Memory Architecture for graphics.
247
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000248# TODO
249# menu "Drivers"
Uwe Hermann168b11b2009-10-07 16:15:40 +0000250#
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000251# endmenu
Patrick Georgi0588d192009-08-12 15:00:51 +0000252
Myles Watsonb8e20272009-10-15 13:35:47 +0000253config HAVE_ACPI_TABLES
254 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000255 help
256 This variable specifies whether a given board has ACPI table support.
257 It is usually set in mainboard/*/Kconfig.
258 Whether or not the ACPI tables are actually generated by coreboot
259 is configurable by the user via GENERATE_ACPI_TABLES.
Myles Watsonb8e20272009-10-15 13:35:47 +0000260
261config HAVE_MP_TABLE
262 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000263 help
264 This variable specifies whether a given board has MP table support.
265 It is usually set in mainboard/*/Kconfig.
266 Whether or not the MP table is actually generated by coreboot
267 is configurable by the user via GENERATE_MP_TABLE.
Myles Watsonb8e20272009-10-15 13:35:47 +0000268
269config HAVE_PIRQ_TABLE
270 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000271 help
272 This variable specifies whether a given board has PIRQ table support.
273 It is usually set in mainboard/*/Kconfig.
274 Whether or not the PIRQ table is actually generated by coreboot
275 is configurable by the user via GENERATE_PIRQ_TABLE.
Myles Watsonb8e20272009-10-15 13:35:47 +0000276
Myles Watsond73c1b52009-10-26 15:14:07 +0000277#These Options are here to avoid "undefined" warnings.
278#The actual selection and help texts are in the following menu.
279
280config GENERATE_ACPI_TABLES
Myles Watsonb8e20272009-10-15 13:35:47 +0000281 bool
Myles Watsond73c1b52009-10-26 15:14:07 +0000282 default HAVE_ACPI_TABLES
283
284config GENERATE_MP_TABLE
285 bool
286 default HAVE_MP_TABLE
287
288config GENERATE_PIRQ_TABLE
289 bool
290 default HAVE_PIRQ_TABLE
291
Uwe Hermann168b11b2009-10-07 16:15:40 +0000292menu "System tables"
Myles Watson45bb25f2009-09-22 18:49:08 +0000293
Myles Watsonb8e20272009-10-15 13:35:47 +0000294config WRITE_HIGH_TABLES
Myles Watson45bb25f2009-09-22 18:49:08 +0000295 bool "Write 'high' tables to avoid being overwritten in F segment"
296 default y
297
298config MULTIBOOT
Uwe Hermann168b11b2009-10-07 16:15:40 +0000299 bool "Generate Multiboot tables (for GRUB2)"
Ronald G. Minnich7f91d922009-11-09 17:56:47 +0000300 default y
Myles Watson45bb25f2009-09-22 18:49:08 +0000301
Myles Watsonb8e20272009-10-15 13:35:47 +0000302config GENERATE_ACPI_TABLES
303 depends on HAVE_ACPI_TABLES
Myles Watson45bb25f2009-09-22 18:49:08 +0000304 bool "Generate ACPI tables"
Myles Watsonb8e20272009-10-15 13:35:47 +0000305 default y
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000306 help
307 Generate ACPI tables for this board.
308
309 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000310
Myles Watsonb8e20272009-10-15 13:35:47 +0000311config GENERATE_MP_TABLE
312 depends on HAVE_MP_TABLE
Myles Watson45bb25f2009-09-22 18:49:08 +0000313 bool "Generate an MP table"
Myles Watsonb8e20272009-10-15 13:35:47 +0000314 default y
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000315 help
316 Generate an MP table (conforming to the Intel MultiProcessor
317 specification 1.4) for this board.
318
319 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000320
Myles Watsonb8e20272009-10-15 13:35:47 +0000321config GENERATE_PIRQ_TABLE
322 depends on HAVE_PIRQ_TABLE
Myles Watson45bb25f2009-09-22 18:49:08 +0000323 bool "Generate a PIRQ table"
Myles Watsonb8e20272009-10-15 13:35:47 +0000324 default y
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000325 help
326 Generate a PIRQ table for this board.
327
328 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000329
330endmenu
331
Patrick Georgi0588d192009-08-12 15:00:51 +0000332menu "Payload"
333
Patrick Georgi0588d192009-08-12 15:00:51 +0000334choice
Uwe Hermann168b11b2009-10-07 16:15:40 +0000335 prompt "Add a payload"
Patrick Georgi0588d192009-08-12 15:00:51 +0000336 default PAYLOAD_NONE
337
Uwe Hermann168b11b2009-10-07 16:15:40 +0000338config PAYLOAD_NONE
339 bool "None"
340 help
341 Select this option if you want to create an "empty" coreboot
342 ROM image for a certain mainboard, i.e. a coreboot ROM image
343 which does not yet contain a payload.
344
345 For such an image to be useful, you have to use 'cbfstool'
346 to add a payload to the ROM image later.
347
Patrick Georgi0588d192009-08-12 15:00:51 +0000348config PAYLOAD_ELF
Uwe Hermann168b11b2009-10-07 16:15:40 +0000349 bool "An ELF executable payload"
Patrick Georgi0588d192009-08-12 15:00:51 +0000350 help
351 Select this option if you have a payload image (an ELF file)
352 which coreboot should run as soon as the basic hardware
353 initialization is completed.
354
355 You will be able to specify the location and file name of the
356 payload image later.
Patrick Georgi0588d192009-08-12 15:00:51 +0000357
358endchoice
359
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000360config PAYLOAD_FILE
Cristi Magherusanb5034d42009-08-17 14:47:32 +0000361 string "Payload path and filename"
Patrick Georgi0588d192009-08-12 15:00:51 +0000362 depends on PAYLOAD_ELF
363 default "payload.elf"
364 help
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000365 The path and filename of the ELF executable file to use as payload.
Patrick Georgi0588d192009-08-12 15:00:51 +0000366
Uwe Hermann168b11b2009-10-07 16:15:40 +0000367# TODO: Defined if no payload? Breaks build?
368config COMPRESSED_PAYLOAD_LZMA
369 bool "Use LZMA compression for payloads"
370 default y
371 depends on PAYLOAD_ELF
372 help
373 In order to reduce the size payloads take up in the ROM chip
374 coreboot can compress them using the LZMA algorithm.
375
Myles Watson04000f42009-10-16 19:12:49 +0000376config COMPRESSED_PAYLOAD_NRV2B
Peter Stuged7b37b02009-10-17 03:00:04 +0000377 bool
Myles Watson04000f42009-10-16 19:12:49 +0000378 default n
379
Peter Stugea758ca22009-09-17 16:21:31 +0000380endmenu
381
382menu "VGA BIOS"
383
384config VGA_BIOS
385 bool "Add a VGA BIOS image"
386 help
387 Select this option if you have a VGA BIOS image that you would
388 like to add to your ROM.
389
390 You will be able to specify the location and file name of the
391 image later.
392
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000393config VGA_BIOS_FILE
Cristi Magherusan488c36c2009-08-17 14:46:13 +0000394 string "VGA BIOS path and filename"
395 depends on VGA_BIOS
396 default "vgabios.bin"
397 help
398 The path and filename of the file to use as VGA BIOS.
399
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000400config VGA_BIOS_ID
Uwe Hermann81b3c0a2009-10-30 12:56:59 +0000401 string "VGA device PCI IDs"
Cristi Magherusan488c36c2009-08-17 14:46:13 +0000402 depends on VGA_BIOS
403 default "1106,3230"
404 help
Uwe Hermann168b11b2009-10-07 16:15:40 +0000405 The comma-separated PCI vendor and device ID that would associate
406 your VGA BIOS to your video card.
407
408 Example: 1106,3230
409
410 In the above example 1106 is the PCI vendor ID (in hex, but without
411 the "0x" prefix) and 3230 specifies the PCI device ID of the
412 video card (also in hex, without "0x" prefix).
Cristi Magherusan488c36c2009-08-17 14:46:13 +0000413
Stefan Reinauer800379f2010-03-01 08:34:19 +0000414config INTEL_MBI
415 bool "Add an MBI image"
416 depends on NORTHBRIDGE_INTEL_I82830
417 help
418 Select this option if you have an Intel MBI image that you would
419 like to add to your ROM.
420
421 You will be able to specify the location and file name of the
422 image later.
423
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000424config MBI_FILE
Stefan Reinauer800379f2010-03-01 08:34:19 +0000425 string "Intel MBI path and filename"
426 depends on INTEL_MBI
427 default "mbi.bin"
428 help
429 The path and filename of the file to use as VGA BIOS.
430
431endmenu
432
433menu "Bootsplash"
434 depends on PCI_OPTION_ROM_RUN_YABEL
435
436config BOOTSPLASH
437 prompt "Show graphical bootsplash"
438 bool
439 depends on PCI_OPTION_ROM_RUN_YABEL
440 help
441 This option shows a graphical bootsplash screen. The grapics are
442 loaded from the CBFS file bootsplash.jpg.
443
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000444config BOOTSPLASH_FILE
Stefan Reinauer800379f2010-03-01 08:34:19 +0000445 string "Bootsplash path and filename"
446 depends on BOOTSPLASH
447 default "bootsplash.jpg"
448 help
Stefan Reinauer14e22772010-04-27 06:56:47 +0000449 The path and filename of the file to use as graphical bootsplash
450 screen. The file format has to be jpg.
Stefan Reinauer800379f2010-03-01 08:34:19 +0000451
452# TODO: Turn this into a "choice".
453config FRAMEBUFFER_VESA_MODE
454 prompt "VESA framebuffer video mode"
455 hex
456 default 0x117
457 depends on BOOTSPLASH
458 help
459 This option sets the resolution used for the coreboot framebuffer and
460 bootsplash screen. Set to 0x117 for 1024x768x16. A diligent soul will
461 some day make this a "choice".
462
463config COREBOOT_KEEP_FRAMEBUFFER
464 prompt "Keep VESA framebuffer"
465 bool
466 depends on BOOTSPLASH
467 help
468 This option keeps the framebuffer mode set after coreboot finishes
469 execution. If this option is enabled, coreboot will pass a
470 framebuffer entry in its coreboot table and the payload will need a
471 framebuffer driver. If this option is disabled, coreboot will switch
472 back to text mode before handing control to a payload.
473
Patrick Georgi0588d192009-08-12 15:00:51 +0000474endmenu
475
Uwe Hermann168b11b2009-10-07 16:15:40 +0000476menu "Debugging"
477
478# TODO: Better help text and detailed instructions.
Patrick Georgi0588d192009-08-12 15:00:51 +0000479config GDB_STUB
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000480 bool "GDB debugging support"
Patrick Georgi0588d192009-08-12 15:00:51 +0000481 default y
482 help
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000483 If enabled, you will be able to set breakpoints for gdb debugging.
Stefan Reinauer8677a232010-12-11 20:33:41 +0000484 See src/arch/x86/lib/c_start.S for details.
Patrick Georgi0588d192009-08-12 15:00:51 +0000485
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000486config HAVE_DEBUG_RAM_SETUP
487 def_bool n
488
Uwe Hermann01ce6012010-03-05 10:03:50 +0000489config DEBUG_RAM_SETUP
490 bool "Output verbose RAM init debug messages"
491 default n
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000492 depends on HAVE_DEBUG_RAM_SETUP
Uwe Hermann01ce6012010-03-05 10:03:50 +0000493 help
494 This option enables additional RAM init related debug messages.
495 It is recommended to enable this when debugging issues on your
496 board which might be RAM init related.
497
498 Note: This option will increase the size of the coreboot image.
499
500 If unsure, say N.
501
Patrick Georgie82618d2010-10-01 14:50:12 +0000502config HAVE_DEBUG_CAR
503 def_bool n
504
Peter Stuge5015f792010-11-10 02:00:32 +0000505config DEBUG_CAR
506 def_bool n
507 depends on HAVE_DEBUG_CAR
508
509if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
Uwe Hermanna953f372010-11-10 00:14:32 +0000510# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
511# printk(BIOS_DEBUG, ...) calls.
Patrick Georgie82618d2010-10-01 14:50:12 +0000512config DEBUG_CAR
513 bool "Output verbose Cache-as-RAM debug messages"
514 default n
Peter Stuge5015f792010-11-10 02:00:32 +0000515 depends on HAVE_DEBUG_CAR
Patrick Georgie82618d2010-10-01 14:50:12 +0000516 help
517 This option enables additional CAR related debug messages.
Peter Stuge5015f792010-11-10 02:00:32 +0000518endif
Patrick Georgie82618d2010-10-01 14:50:12 +0000519
Myles Watson80e914ff2010-06-01 19:25:31 +0000520config DEBUG_PIRQ
521 bool "Check PIRQ table consistency"
522 default n
523 depends on GENERATE_PIRQ_TABLE
524 help
525 If unsure, say N.
526
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000527config HAVE_DEBUG_SMBUS
528 def_bool n
529
Uwe Hermann01ce6012010-03-05 10:03:50 +0000530config DEBUG_SMBUS
531 bool "Output verbose SMBus debug messages"
532 default n
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000533 depends on HAVE_DEBUG_SMBUS
Uwe Hermann01ce6012010-03-05 10:03:50 +0000534 help
535 This option enables additional SMBus (and SPD) debug messages.
536
537 Note: This option will increase the size of the coreboot image.
538
539 If unsure, say N.
540
541config DEBUG_SMI
542 bool "Output verbose SMI debug messages"
543 default n
544 depends on HAVE_SMI_HANDLER
545 help
546 This option enables additional SMI related debug messages.
547
548 Note: This option will increase the size of the coreboot image.
549
550 If unsure, say N.
551
Stefan Reinauerbc0f7a62010-08-01 15:41:14 +0000552config DEBUG_SMM_RELOCATION
553 bool "Debug SMM relocation code"
554 default n
555 depends on HAVE_SMI_HANDLER
556 help
557 This option enables additional SMM handler relocation related
558 debug messages.
559
560 Note: This option will increase the size of the coreboot image.
561
562 If unsure, say N.
563
Peter Stuge5015f792010-11-10 02:00:32 +0000564config DEBUG_MALLOC
565 def_bool n
566
Uwe Hermanna953f372010-11-10 00:14:32 +0000567# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
568# printk(BIOS_DEBUG, ...) calls.
Peter Stuge5015f792010-11-10 02:00:32 +0000569if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
Uwe Hermanna953f372010-11-10 00:14:32 +0000570config DEBUG_MALLOC
571 bool "Output verbose malloc debug messages"
572 default n
Uwe Hermanna953f372010-11-10 00:14:32 +0000573 help
574 This option enables additional malloc related debug messages.
575
576 Note: This option will increase the size of the coreboot image.
577
578 If unsure, say N.
Peter Stuge5015f792010-11-10 02:00:32 +0000579endif
Uwe Hermanna953f372010-11-10 00:14:32 +0000580
Peter Stuge5015f792010-11-10 02:00:32 +0000581config REALMODE_DEBUG
582 def_bool n
583 depends on PCI_OPTION_ROM_RUN_REALMODE
584
585if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
Uwe Hermanna953f372010-11-10 00:14:32 +0000586# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
587# printk(BIOS_DEBUG, ...) calls.
Myles Watson6c9bc012010-09-07 22:30:15 +0000588config REALMODE_DEBUG
589 bool "Enable debug messages for option ROM execution"
590 default n
Peter Stuge5015f792010-11-10 02:00:32 +0000591 depends on PCI_OPTION_ROM_RUN_REALMODE
Myles Watson6c9bc012010-09-07 22:30:15 +0000592 help
593 This option enables additional x86emu related debug messages.
594
595 Note: This option will increase the time to emulate a ROM.
596
597 If unsure, say N.
Peter Stuge5015f792010-11-10 02:00:32 +0000598endif
Myles Watson6c9bc012010-09-07 22:30:15 +0000599
Uwe Hermann01ce6012010-03-05 10:03:50 +0000600config X86EMU_DEBUG
601 bool "Output verbose x86emu debug messages"
602 default n
603 depends on PCI_OPTION_ROM_RUN_YABEL
604 help
605 This option enables additional x86emu related debug messages.
606
607 Note: This option will increase the size of the coreboot image.
608
609 If unsure, say N.
610
611config X86EMU_DEBUG_JMP
612 bool "Trace JMP/RETF"
613 default n
614 depends on X86EMU_DEBUG
615 help
616 Print information about JMP and RETF opcodes from x86emu.
617
618 Note: This option will increase the size of the coreboot image.
619
620 If unsure, say N.
621
622config X86EMU_DEBUG_TRACE
623 bool "Trace all opcodes"
624 default n
625 depends on X86EMU_DEBUG
626 help
627 Print _all_ opcodes that are executed by x86emu.
Stefan Reinauer14e22772010-04-27 06:56:47 +0000628
Uwe Hermann01ce6012010-03-05 10:03:50 +0000629 WARNING: This will produce a LOT of output and take a long time.
630
631 Note: This option will increase the size of the coreboot image.
632
633 If unsure, say N.
634
635config X86EMU_DEBUG_PNP
636 bool "Log Plug&Play accesses"
637 default n
638 depends on X86EMU_DEBUG
639 help
640 Print Plug And Play accesses made by option ROMs.
641
642 Note: This option will increase the size of the coreboot image.
643
644 If unsure, say N.
645
646config X86EMU_DEBUG_DISK
647 bool "Log Disk I/O"
648 default n
649 depends on X86EMU_DEBUG
650 help
651 Print Disk I/O related messages.
652
653 Note: This option will increase the size of the coreboot image.
654
655 If unsure, say N.
656
657config X86EMU_DEBUG_PMM
658 bool "Log PMM"
659 default n
660 depends on X86EMU_DEBUG
661 help
662 Print messages related to POST Memory Manager (PMM).
663
664 Note: This option will increase the size of the coreboot image.
665
666 If unsure, say N.
667
668
669config X86EMU_DEBUG_VBE
670 bool "Debug VESA BIOS Extensions"
671 default n
672 depends on X86EMU_DEBUG
673 help
674 Print messages related to VESA BIOS Extension (VBE) functions.
675
676 Note: This option will increase the size of the coreboot image.
677
678 If unsure, say N.
679
680config X86EMU_DEBUG_INT10
681 bool "Redirect INT10 output to console"
682 default n
683 depends on X86EMU_DEBUG
684 help
685 Let INT10 (i.e. character output) calls print messages to debug output.
686
687 Note: This option will increase the size of the coreboot image.
688
689 If unsure, say N.
690
691config X86EMU_DEBUG_INTERRUPTS
692 bool "Log intXX calls"
693 default n
694 depends on X86EMU_DEBUG
695 help
696 Print messages related to interrupt handling.
697
698 Note: This option will increase the size of the coreboot image.
699
700 If unsure, say N.
701
702config X86EMU_DEBUG_CHECK_VMEM_ACCESS
703 bool "Log special memory accesses"
704 default n
705 depends on X86EMU_DEBUG
706 help
707 Print messages related to accesses to certain areas of the virtual
708 memory (e.g. BDA (BIOS Data Area) or interrupt vectors)
709
710 Note: This option will increase the size of the coreboot image.
711
712 If unsure, say N.
713
714config X86EMU_DEBUG_MEM
715 bool "Log all memory accesses"
716 default n
717 depends on X86EMU_DEBUG
718 help
719 Print memory accesses made by option ROM.
720 Note: This also includes accesses to fetch instructions.
721
722 Note: This option will increase the size of the coreboot image.
723
724 If unsure, say N.
725
726config X86EMU_DEBUG_IO
727 bool "Log IO accesses"
728 default n
729 depends on X86EMU_DEBUG
730 help
731 Print I/O accesses made by option ROM.
732
733 Note: This option will increase the size of the coreboot image.
734
735 If unsure, say N.
736
Stefan Reinauer5c503922010-03-13 22:07:15 +0000737config LLSHELL
738 bool "Built-in low-level shell"
739 default n
740 help
741 If enabled, you will have a low level shell to examine your machine.
742 Put llshell() in your (romstage) code to start the shell.
Stefan Reinauer8677a232010-12-11 20:33:41 +0000743 See src/arch/x86/llshell/llshell.inc for details.
Stefan Reinauer5c503922010-03-13 22:07:15 +0000744
Uwe Hermann168b11b2009-10-07 16:15:40 +0000745endmenu
746
Myles Watson8f74c582009-10-20 16:10:04 +0000747config LIFT_BSP_APIC_ID
748 bool
749 default n
Myles Watsond73c1b52009-10-26 15:14:07 +0000750
751# These probably belong somewhere else, but they are needed somewhere.
752config AP_CODE_IN_CAR
753 bool
754 default n
755
Jonathan Kollasche5b75072010-10-07 23:02:06 +0000756config RAMINIT_SYSINFO
757 bool
758 default n
759
Myles Watsond73c1b52009-10-26 15:14:07 +0000760config ENABLE_APIC_EXT_ID
761 bool
762 default n
Myles Watson2e672732009-11-12 16:38:03 +0000763
764config WARNINGS_ARE_ERRORS
765 bool
Stefan Reinauer6f57b512010-07-08 16:41:05 +0000766 default y
Patrick Georgi436f99b2009-11-27 16:55:13 +0000767
768config ID_SECTION_OFFSET
769 hex
770 default 0x10
Patrick Georgicc669262010-03-14 21:31:05 +0000771
Peter Stuge51eafde2010-10-13 06:23:02 +0000772# The four POWER_BUTTON_DEFAULT_ENABLE, POWER_BUTTON_DEFAULT_DISABLE,
773# POWER_BUTTON_FORCE_ENABLE and POWER_BUTTON_FORCE_DISABLE options are
774# mutually exclusive. One of these options must be selected in the
775# mainboard Kconfig if the chipset supports enabling and disabling of
776# the power button. Chipset code uses the ENABLE_POWER_BUTTON option set
777# in mainboard/Kconfig to know if the button should be enabled or not.
778
779config POWER_BUTTON_DEFAULT_ENABLE
780 def_bool n
781 help
782 Select when the board has a power button which can optionally be
783 disabled by the user.
784
785config POWER_BUTTON_DEFAULT_DISABLE
786 def_bool n
787 help
788 Select when the board has a power button which can optionally be
789 enabled by the user, e.g. when the board ships with a jumper over
790 the power switch contacts.
791
792config POWER_BUTTON_FORCE_ENABLE
793 def_bool n
794 help
795 Select when the board requires that the power button is always
796 enabled.
797
798config POWER_BUTTON_FORCE_DISABLE
799 def_bool n
800 help
801 Select when the board requires that the power button is always
802 disabled, e.g. when it has been hardwired to ground.
803
804config POWER_BUTTON_IS_OPTIONAL
805 bool
806 default y if POWER_BUTTON_DEFAULT_ENABLE || POWER_BUTTON_DEFAULT_DISABLE
807 default n if !(POWER_BUTTON_DEFAULT_ENABLE || POWER_BUTTON_DEFAULT_DISABLE)
808 help
809 Internal option that controls ENABLE_POWER_BUTTON visibility.
810
Patrick Georgicc669262010-03-14 21:31:05 +0000811source src/Kconfig.deprecated_options