blob: 614b95f9760f5d88863b237d12727116efc013a6 [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
Aaron Durbin81108b92013-01-22 13:22:02 -060050config ALT_CBFS_LOAD_PAYLOAD
51 bool "Use alternative cbfs_load_payload() implementation."
52 default n
53 help
54 Either board or southbridge provide an alternative cbfs_load_payload()
55 implementation. This may be used, for example, if accessing the ROM
56 through memory-mapped I/O is slow and a faster alternative can be
57 provided.
58
Patrick Georgi23d89cc2010-03-16 01:17:19 +000059choice
Uwe Hermannad8c95f2012-04-12 22:00:03 +020060 prompt "Compiler to use"
Patrick Georgi23d89cc2010-03-16 01:17:19 +000061 default COMPILER_GCC
62 help
63 This option allows you to select the compiler used for building
64 coreboot.
65
66config COMPILER_GCC
67 bool "GCC"
Uwe Hermannad8c95f2012-04-12 22:00:03 +020068 help
69 Use the GNU Compiler Collection (GCC) to build coreboot.
70
71 For details see http://gcc.gnu.org.
72
Patrick Georgi23d89cc2010-03-16 01:17:19 +000073config COMPILER_LLVM_CLANG
74 bool "LLVM/clang"
Uwe Hermannad8c95f2012-04-12 22:00:03 +020075 help
76 Use LLVM/clang to build coreboot.
77
78 For details see http://clang.llvm.org.
79
Patrick Georgi23d89cc2010-03-16 01:17:19 +000080endchoice
81
Patrick Georgi020f51f2010-03-14 21:25:03 +000082config SCANBUILD_ENABLE
Uwe Hermannad8c95f2012-04-12 22:00:03 +020083 bool "Build with scan-build for static code analysis"
Patrick Georgi020f51f2010-03-14 21:25:03 +000084 default n
85 help
Uwe Hermannad8c95f2012-04-12 22:00:03 +020086 Changes the build process to use scan-build (a utility for
87 running the clang static code analyzer from the command line).
88
89 Requires the scan-build utility in your system $PATH.
90
91 For details see http://clang-analyzer.llvm.org/scan-build.html.
Patrick Georgi020f51f2010-03-14 21:25:03 +000092
93config SCANBUILD_REPORT_LOCATION
Uwe Hermannad8c95f2012-04-12 22:00:03 +020094 string "Directory for the scan-build report(s)"
Patrick Georgi020f51f2010-03-14 21:25:03 +000095 default ""
96 depends on SCANBUILD_ENABLE
97 help
Uwe Hermannad8c95f2012-04-12 22:00:03 +020098 Directory where the scan-build reports should be stored in. The
99 reports are stored in subdirectories of the form 'yyyy-mm-dd-*'
100 in the specified directory.
101
102 If this setting is left empty, the coreboot top-level directory
103 will be used to store the report subdirectories.
Patrick Georgi020f51f2010-03-14 21:25:03 +0000104
Patrick Georgi516a2a72010-03-25 21:45:25 +0000105config CCACHE
Uwe Hermannad8c95f2012-04-12 22:00:03 +0200106 bool "Use ccache to speed up (re)compilation"
Patrick Georgi516a2a72010-03-25 21:45:25 +0000107 default n
108 help
109 Enables the use of ccache for faster builds.
Uwe Hermannad8c95f2012-04-12 22:00:03 +0200110
111 Requires the ccache utility in your system $PATH.
112
113 For details see https://ccache.samba.org.
Patrick Georgi516a2a72010-03-25 21:45:25 +0000114
Stefan Reinauer9bf78102010-08-09 13:28:18 +0000115config SCONFIG_GENPARSER
116 bool "Generate SCONFIG parser using flex and bison"
117 default n
118 depends on EXPERT
119 help
Uwe Hermannad8c95f2012-04-12 22:00:03 +0200120 Enable this option if you are working on the sconfig device tree
121 parser and made changes to sconfig.l and sconfig.y.
122
Stefan Reinauer9bf78102010-08-09 13:28:18 +0000123 Otherwise, say N.
124
Joe Korty6d772522010-05-19 18:41:15 +0000125config USE_OPTION_TABLE
126 bool "Use CMOS for configuration values"
127 default n
Edwin Beasanteb50c7d2010-07-06 21:05:04 +0000128 depends on HAVE_OPTION_TABLE
Joe Korty6d772522010-05-19 18:41:15 +0000129 help
130 Enable this option if coreboot shall read options from the "CMOS"
Uwe Hermannad8c95f2012-04-12 22:00:03 +0200131 NVRAM instead of using hard-coded values.
Joe Korty6d772522010-05-19 18:41:15 +0000132
Sven Schnelle8eee19d2011-05-02 19:53:04 +0000133config COMPRESS_RAMSTAGE
134 bool "Compress ramstage with LZMA"
135 default y
136 help
137 Compress ramstage to save memory in the flash image. Note
138 that decompression might slow down booting if the boot flash
Uwe Hermannad8c95f2012-04-12 22:00:03 +0200139 is connected through a slow link (i.e. SPI).
Sven Schnelle8eee19d2011-05-02 19:53:04 +0000140
Cristian Măgherușan-Stanciud367b002011-06-19 03:03:28 +0200141config INCLUDE_CONFIG_FILE
Uwe Hermannad8c95f2012-04-12 22:00:03 +0200142 bool "Include the coreboot .config file into the ROM image"
Cristian Măgherușan-Stanciud367b002011-06-19 03:03:28 +0200143 default y
Uwe Hermannad8c95f2012-04-12 22:00:03 +0200144 help
145 Include the .config file that was used to compile coreboot
146 in the (CBFS) ROM image. This is useful if you want to know which
147 options were used to build a specific coreboot.rom image.
148
149 Saying Y here will increase the image size by 2-3kB.
150
151 You can use the following command to easily list the options:
152
153 grep -a CONFIG_ coreboot.rom
154
155 Alternatively, you can also use cbfstool to print the image
156 contents (including the raw 'config' item we're looking for).
157
158 Example:
159
160 $ cbfstool coreboot.rom print
161 coreboot.rom: 4096 kB, bootblocksize 1008, romsize 4194304,
162 offset 0x0
163 Alignment: 64 bytes
Steve Goodrichf0269122012-05-18 11:18:47 -0600164
Uwe Hermannad8c95f2012-04-12 22:00:03 +0200165 Name Offset Type Size
166 cmos_layout.bin 0x0 cmos layout 1159
167 fallback/romstage 0x4c0 stage 339756
168 fallback/coreboot_ram 0x53440 stage 186664
169 fallback/payload 0x80dc0 payload 51526
170 config 0x8d740 raw 3324
171 (empty) 0x8e480 null 3610440
Cristian Măgherușan-Stanciud367b002011-06-19 03:03:28 +0200172
Kyösti Mälkkif8bf5a12013-10-11 22:08:02 +0300173config EARLY_CBMEM_INIT
174 bool
175 default n
176 help
177 Make coreboot initialize the CBMEM structures while running in ROM
178 stage. This is useful when the ROM stage wants to communicate
179 some, for instance, execution timestamps. It needs support in
180 romstage.c and should be enabled by the board's Kconfig.
181
Aaron Durbindf3a1092013-03-13 12:41:44 -0500182config DYNAMIC_CBMEM
183 bool "The CBMEM space is dynamically grown."
184 default n
Kyösti Mälkkif8bf5a12013-10-11 22:08:02 +0300185 select EARLY_CBMEM_INIT
Aaron Durbindf3a1092013-03-13 12:41:44 -0500186 help
187 Instead of reserving a static amount of CBMEM space the CBMEM
188 area grows dynamically. CBMEM can be used both in romstage (after
189 memory initialization) and ramstage.
190
Vadim Bendebury9202473d2011-09-21 14:46:43 -0700191config COLLECT_TIMESTAMPS
192 bool "Create a table of timestamps collected during boot"
Kyösti Mälkki26447932013-10-11 21:14:59 +0300193 default n
Vadim Bendebury9202473d2011-09-21 14:46:43 -0700194 help
Uwe Hermannad8c95f2012-04-12 22:00:03 +0200195 Make coreboot create a table of timer-ID/timer-value pairs to
196 allow measuring time spent at different phases of the boot process.
197
Patrick Georgi7e9b9d82012-04-30 21:06:10 +0200198config USE_BLOBS
199 bool "Allow use of binary-only repository"
200 default n
201 help
202 This draws in the blobs repository, which contains binary files that
203 might be required for some chipsets or boards.
204 This flag ensures that a "Free" option remains available for users.
205
Stefan Reinauerd37ab452012-12-18 16:23:28 -0800206config COVERAGE
207 bool "Code coverage support"
208 depends on COMPILER_GCC
209 default n
210 help
211 Add code coverage support for coreboot. This will store code
212 coverage information in CBMEM for extraction from user space.
213 If unsure, say N.
214
Uwe Hermannc04be932009-10-05 13:55:28 +0000215endmenu
216
Patrick Georgi0588d192009-08-12 15:00:51 +0000217source src/mainboard/Kconfig
Stefan Reinauer8aedcbc2010-12-16 23:37:17 +0000218
219# This option is used to set the architecture of a mainboard to X86.
220# It is usually set in mainboard/*/Kconfig.
221config ARCH_X86
222 bool
223 default n
Ronald G. Minnich78a16672012-11-29 16:28:21 -0800224 select PCI
225
David Hendricks5367e472012-11-28 20:16:28 -0800226config ARCH_ARMV7
227 bool
228 default n
229
Ronald G. Minnich6e3728b2012-11-27 10:36:06 -0800230# Warning: The file is included whether or not the if is here.
231# but the if controls how the evaluation occurs.
Stefan Reinauer8aedcbc2010-12-16 23:37:17 +0000232if ARCH_X86
Stefan Reinauer8677a232010-12-11 20:33:41 +0000233source src/arch/x86/Kconfig
Stefan Reinauer8aedcbc2010-12-16 23:37:17 +0000234endif
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000235
David Hendricks5367e472012-11-28 20:16:28 -0800236if ARCH_ARMV7
237source src/arch/armv7/Kconfig
238endif
239
Gabe Black5fbfc912013-07-07 13:52:37 -0700240config HAVE_ARCH_MEMSET
241 bool
242 default n
243
244config HAVE_ARCH_MEMCPY
245 bool
246 default n
247
Gabe Black545c0ca2013-07-07 14:04:26 -0700248config HAVE_ARCH_MEMMOVE
249 bool
250 default n
251
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000252menu "Chipset"
253
254comment "CPU"
Patrick Georgi0588d192009-08-12 15:00:51 +0000255source src/cpu/Kconfig
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000256comment "Northbridge"
257source src/northbridge/Kconfig
258comment "Southbridge"
259source src/southbridge/Kconfig
260comment "Super I/O"
261source src/superio/Kconfig
Sven Schnelle7592e8b2011-01-27 11:43:03 +0000262comment "Embedded Controllers"
263source src/ec/Kconfig
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000264
265endmenu
Patrick Georgi0588d192009-08-12 15:00:51 +0000266
Stefan Reinauer8d711552012-11-30 12:34:04 -0800267source src/device/Kconfig
Stefan Reinauer95a63962012-11-13 17:00:01 -0800268
Rudolf Marekd9c25492010-05-16 15:31:53 +0000269menu "Generic Drivers"
270source src/drivers/Kconfig
271endmenu
272
Patrick Georgi0588d192009-08-12 15:00:51 +0000273config HEAP_SIZE
274 hex
Myles Watson04000f42009-10-16 19:12:49 +0000275 default 0x4000
Patrick Georgi0588d192009-08-12 15:00:51 +0000276
Patrick Georgi0588d192009-08-12 15:00:51 +0000277config MAX_CPUS
278 int
279 default 1
280
281config MMCONF_SUPPORT_DEFAULT
282 bool
283 default n
284
285config MMCONF_SUPPORT
286 bool
287 default n
288
Patrick Georgi0588d192009-08-12 15:00:51 +0000289source src/console/Kconfig
290
Stefan Reinauer4885daa2011-04-26 23:47:04 +0000291# This should default to N and be set by SuperI/O drivers that have an UART
292config HAVE_UART_IO_MAPPED
293 bool
Stefan Reinauer3600e962012-12-11 12:49:32 -0800294 default y if ARCH_X86
295 default n if ARCH_ARMV7
Stefan Reinauer4885daa2011-04-26 23:47:04 +0000296
297config HAVE_UART_MEMORY_MAPPED
298 bool
299 default n
300
Hung-Te Linad173ea2013-02-06 21:24:12 +0800301config HAVE_UART_SPECIAL
302 bool
303 default n
304
Patrick Georgi0588d192009-08-12 15:00:51 +0000305config HAVE_ACPI_RESUME
306 bool
307 default n
308
Stefan Reinauerc4f1a772010-06-05 10:03:08 +0000309config HAVE_ACPI_SLIC
310 bool
311 default n
312
Patrick Georgi0588d192009-08-12 15:00:51 +0000313config ACPI_SSDTX_NUM
314 int
315 default 0
316
Patrick Georgi0588d192009-08-12 15:00:51 +0000317config HAVE_HARD_RESET
318 bool
Uwe Hermann748475b2009-10-09 11:47:21 +0000319 default n
Patrick Georgi37bdb872010-02-27 08:39:04 +0000320 help
321 This variable specifies whether a given board has a hard_reset
322 function, no matter if it's provided by board code or chipset code.
323
Patrick Georgi0588d192009-08-12 15:00:51 +0000324config HAVE_INIT_TIMER
325 bool
Patrick Georgi1f807fd2010-01-04 20:09:27 +0000326 default n if UDELAY_IO
Myles Watsond73c1b52009-10-26 15:14:07 +0000327 default y
Patrick Georgi0588d192009-08-12 15:00:51 +0000328
Aaron Durbina4217912013-04-29 22:31:51 -0500329config HAVE_MONOTONIC_TIMER
330 def_bool n
331 help
332 The board/chipset provides a monotonic timer.
333
Aaron Durbin340ca912013-04-30 09:58:12 -0500334config TIMER_QUEUE
335 def_bool n
336 depends on HAVE_MONOTONIC_TIMER
337 help
Kyösti Mälkkiecd84242013-09-13 07:57:49 +0300338 Provide a timer queue for performing time-based callbacks.
Aaron Durbin340ca912013-04-30 09:58:12 -0500339
Aaron Durbin4409a5e2013-05-06 12:20:52 -0500340config COOP_MULTITASKING
341 def_bool n
Aaron Durbin38c326d2013-05-06 12:22:23 -0500342 depends on TIMER_QUEUE && ARCH_X86
Aaron Durbin4409a5e2013-05-06 12:20:52 -0500343 help
344 Cooperative multitasking allows callbacks to be multiplexed on the
345 main thread of ramstage. With this enabled it allows for multiple
346 execution paths to take place when they have udelay() calls within
347 their code.
348
349config NUM_THREADS
350 int
351 default 4
352 depends on COOP_MULTITASKING
353 help
354 How many execution threads to cooperatively multitask with.
355
zbaof7223732012-04-13 13:42:15 +0800356config HIGH_SCRATCH_MEMORY_SIZE
357 hex
358 default 0x0
359
Patrick Georgi0588d192009-08-12 15:00:51 +0000360config HAVE_OPTION_TABLE
361 bool
Edwin Beasanteb50c7d2010-07-06 21:05:04 +0000362 default n
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000363 help
364 This variable specifies whether a given board has a cmos.layout
365 file containing NVRAM/CMOS bit definitions.
Edwin Beasanteb50c7d2010-07-06 21:05:04 +0000366 It defaults to 'n' but can be selected in mainboard/*/Kconfig.
Patrick Georgi0588d192009-08-12 15:00:51 +0000367
Patrick Georgi0588d192009-08-12 15:00:51 +0000368config PIRQ_ROUTE
369 bool
370 default n
371
372config HAVE_SMI_HANDLER
373 bool
374 default n
375
376config PCI_IO_CFG_EXT
377 bool
378 default n
379
380config IOAPIC
381 bool
382 default n
383
Stefan Reinauer5b635792012-08-16 14:05:42 -0700384config CBFS_SIZE
385 hex
386 default ROM_SIZE
387
Kyösti Mälkki107f72e2014-01-06 11:06:26 +0200388config CACHE_ROM_SIZE_OVERRIDE
Stefan Reinauer5b635792012-08-16 14:05:42 -0700389 hex
Kyösti Mälkki107f72e2014-01-06 11:06:26 +0200390 default 0
Stefan Reinauer5b635792012-08-16 14:05:42 -0700391
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000392# TODO: Can probably be removed once all chipsets have kconfig options for it.
Uwe Hermann70b0cf22009-10-04 17:15:39 +0000393config VIDEO_MB
394 int
Uwe Hermann63a8f2a2009-10-26 21:42:13 +0000395 default 0
Uwe Hermann70b0cf22009-10-04 17:15:39 +0000396
Myles Watson45bb25f2009-09-22 18:49:08 +0000397config USE_WATCHDOG_ON_BOOT
398 bool
399 default n
400
401config VGA
402 bool
403 default n
404 help
405 Build board-specific VGA code.
406
407config GFXUMA
408 bool
Myles Watsond73c1b52009-10-26 15:14:07 +0000409 default n
Myles Watson45bb25f2009-09-22 18:49:08 +0000410 help
411 Enable Unified Memory Architecture for graphics.
412
Aaron Durbinad935522012-12-24 14:28:37 -0600413config RELOCATABLE_MODULES
414 bool "Relocatable Modules"
415 default n
416 help
417 If RELOCATABLE_MODULES is selected then support is enabled for
418 building relocatable modules in the ram stage. Those modules can be
419 loaded anywhere and all the relocations are handled automatically.
420
Aaron Durbin8e4a3552013-02-08 17:28:04 -0600421config RELOCATABLE_RAMSTAGE
Aaron Durbindd4a6d22013-02-27 22:50:12 -0600422 depends on (RELOCATABLE_MODULES && DYNAMIC_CBMEM)
Aaron Durbin8e4a3552013-02-08 17:28:04 -0600423 bool "Build the ramstage to be relocatable in 32-bit address space."
424 default n
425 help
426 The reloctable ramstage support allows for the ramstage to be built
427 as a relocatable module. The stage loader can identify a place
428 out of the OS way so that copying memory is unnecessary during an S3
429 wake. When selecting this option the romstage is responsible for
430 determing a stack location to use for loading the ramstage.
431
Aaron Durbin6ac34052013-10-24 08:55:51 -0500432config HAVE_REFCODE_BLOB
433 depends on ARCH_X86
434 bool "An external reference code blob should be put into cbfs."
435 default n
436 help
437 The reference code blob will be placed into cbfs.
438
439if HAVE_REFCODE_BLOB
440
441config REFCODE_BLOB_FILE
442 string "Path and filename to reference code blob."
443 default "refcode.elf"
444 help
445 The path and filename to the file to be added to cbfs.
446
447endif # HAVE_REFCODE_BLOB
448
Myles Watsonb8e20272009-10-15 13:35:47 +0000449config HAVE_ACPI_TABLES
450 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000451 help
452 This variable specifies whether a given board has ACPI table support.
453 It is usually set in mainboard/*/Kconfig.
454 Whether or not the ACPI tables are actually generated by coreboot
455 is configurable by the user via GENERATE_ACPI_TABLES.
Myles Watsonb8e20272009-10-15 13:35:47 +0000456
457config HAVE_MP_TABLE
458 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000459 help
460 This variable specifies whether a given board has MP table support.
461 It is usually set in mainboard/*/Kconfig.
462 Whether or not the MP table is actually generated by coreboot
463 is configurable by the user via GENERATE_MP_TABLE.
Myles Watsonb8e20272009-10-15 13:35:47 +0000464
465config HAVE_PIRQ_TABLE
466 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000467 help
468 This variable specifies whether a given board has PIRQ table support.
469 It is usually set in mainboard/*/Kconfig.
470 Whether or not the PIRQ table is actually generated by coreboot
471 is configurable by the user via GENERATE_PIRQ_TABLE.
Myles Watsonb8e20272009-10-15 13:35:47 +0000472
Alexandru Gagniuc70c660f2012-08-23 02:32:58 -0500473config MAX_PIRQ_LINKS
474 int
475 default 4
476 help
477 This variable specifies the number of PIRQ interrupt links which are
478 routable. On most chipsets, this is 4, INTA through INTD. Some
479 chipsets offer more than four links, commonly up to INTH. They may
480 also have a separate link for ATA or IOAPIC interrupts. When the PIRQ
481 table specifies links greater than 4, pirq_route_irqs will not
482 function properly, unless this variable is correctly set.
483
Myles Watsond73c1b52009-10-26 15:14:07 +0000484#These Options are here to avoid "undefined" warnings.
485#The actual selection and help texts are in the following menu.
486
Uwe Hermann168b11b2009-10-07 16:15:40 +0000487menu "System tables"
Myles Watson45bb25f2009-09-22 18:49:08 +0000488
Myles Watsonb8e20272009-10-15 13:35:47 +0000489config GENERATE_ACPI_TABLES
Stefan Reinauer56cd70b2012-11-13 17:33:08 -0800490 prompt "Generate ACPI tables" if HAVE_ACPI_TABLES
491 bool
492 default HAVE_ACPI_TABLES
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000493 help
494 Generate ACPI tables for this board.
495
496 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000497
Myles Watsonb8e20272009-10-15 13:35:47 +0000498config GENERATE_MP_TABLE
Stefan Reinauer56cd70b2012-11-13 17:33:08 -0800499 prompt "Generate an MP table" if HAVE_MP_TABLE || DRIVERS_GENERIC_IOAPIC
500 bool
501 default HAVE_MP_TABLE || DRIVERS_GENERIC_IOAPIC
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000502 help
503 Generate an MP table (conforming to the Intel MultiProcessor
504 specification 1.4) for this board.
505
506 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000507
Myles Watsonb8e20272009-10-15 13:35:47 +0000508config GENERATE_PIRQ_TABLE
Stefan Reinauer56cd70b2012-11-13 17:33:08 -0800509 prompt "Generate a PIRQ table" if HAVE_PIRQ_TABLE
510 bool
511 default HAVE_PIRQ_TABLE
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000512 help
513 Generate a PIRQ table for this board.
514
515 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000516
Sven Schnelle164bcfd2011-08-14 20:56:34 +0200517config GENERATE_SMBIOS_TABLES
518 depends on ARCH_X86
519 bool "Generate SMBIOS tables"
520 default y
521 help
522 Generate SMBIOS tables for this board.
523
524 If unsure, say Y.
525
Myles Watson45bb25f2009-09-22 18:49:08 +0000526endmenu
527
Patrick Georgi0588d192009-08-12 15:00:51 +0000528menu "Payload"
529
Patrick Georgi0588d192009-08-12 15:00:51 +0000530choice
Uwe Hermann168b11b2009-10-07 16:15:40 +0000531 prompt "Add a payload"
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000532 default PAYLOAD_NONE if !ARCH_X86
533 default PAYLOAD_SEABIOS if ARCH_X86
Patrick Georgi0588d192009-08-12 15:00:51 +0000534
Uwe Hermann168b11b2009-10-07 16:15:40 +0000535config PAYLOAD_NONE
536 bool "None"
537 help
538 Select this option if you want to create an "empty" coreboot
539 ROM image for a certain mainboard, i.e. a coreboot ROM image
540 which does not yet contain a payload.
541
542 For such an image to be useful, you have to use 'cbfstool'
543 to add a payload to the ROM image later.
544
Patrick Georgi0588d192009-08-12 15:00:51 +0000545config PAYLOAD_ELF
Uwe Hermann168b11b2009-10-07 16:15:40 +0000546 bool "An ELF executable payload"
Patrick Georgi0588d192009-08-12 15:00:51 +0000547 help
548 Select this option if you have a payload image (an ELF file)
549 which coreboot should run as soon as the basic hardware
550 initialization is completed.
551
552 You will be able to specify the location and file name of the
553 payload image later.
Patrick Georgi0588d192009-08-12 15:00:51 +0000554
Patrick Georgi16ae95c2013-08-31 08:26:52 +0200555config PAYLOAD_LINUX
556 bool "A Linux payload"
557 help
558 Select this option if you have a Linux bzImage which coreboot
559 should run as soon as the basic hardware initialization
560 is completed.
561
562 You will be able to specify the location and file name of the
563 payload image later.
564
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000565config PAYLOAD_SEABIOS
566 bool "SeaBIOS"
567 depends on ARCH_X86
568 help
569 Select this option if you want to build a coreboot image
570 with a SeaBIOS payload. If you don't know what this is
571 about, just leave it enabled.
572
573 See http://coreboot.org/Payloads for more information.
574
Stefan Reinauere50952f2011-04-15 03:34:05 +0000575config PAYLOAD_FILO
576 bool "FILO"
577 help
578 Select this option if you want to build a coreboot image
579 with a FILO payload. If you don't know what this is
580 about, just leave it enabled.
581
582 See http://coreboot.org/Payloads for more information.
583
Vladimir Serbinenko113a3662013-11-14 12:10:08 +0100584config PAYLOAD_GRUB2
585 bool "GRUB2"
586 help
587 Select this option if you want to build a coreboot image
588 with a GRUB2 payload. If you don't know what this is
589 about, just leave it enabled.
590
591 See http://coreboot.org/Payloads for more information.
592
Stefan Reinauercc5b3442013-01-15 17:02:58 -0800593config PAYLOAD_TIANOCORE
594 bool "Tiano Core"
595 help
596 Select this option if you want to build a coreboot image
597 with a Tiano Core payload. If you don't know what this is
598 about, just leave it enabled.
599
600 See http://coreboot.org/Payloads for more information.
601
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000602endchoice
603
604choice
605 prompt "SeaBIOS version"
606 default SEABIOS_STABLE
607 depends on PAYLOAD_SEABIOS
608
609config SEABIOS_STABLE
Idwer Vollering1a433092013-03-02 18:27:05 +0100610 bool "1.7.2.1"
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000611 help
612 Stable SeaBIOS version
613config SEABIOS_MASTER
614 bool "master"
615 help
616 Newest SeaBIOS version
Patrick Georgi0588d192009-08-12 15:00:51 +0000617endchoice
618
Peter Stugef0408582013-07-09 19:43:09 +0200619config SEABIOS_PS2_TIMEOUT
620 prompt "PS/2 keyboard controller initialization timeout (milliseconds)" if PAYLOAD_SEABIOS
Patrick Georgi1e44c3f2013-08-16 10:14:38 +0200621 default 0
Peter Stugef0408582013-07-09 19:43:09 +0200622 depends on EXPERT
623 int
624 help
625 Some PS/2 keyboard controllers don't respond to commands immediately
626 after powering on. This specifies how long SeaBIOS will wait for the
627 keyboard controller to become ready before giving up.
628
Stefan Reinauere50952f2011-04-15 03:34:05 +0000629choice
Vladimir Serbinenko113a3662013-11-14 12:10:08 +0100630 prompt "GRUB2 version"
631 default GRUB2_MASTER
632 depends on PAYLOAD_GRUB2
633
634config GRUB2_MASTER
635 bool "HEAD"
636 help
637 Newest GRUB2 version
638endchoice
639
640choice
Stefan Reinauere50952f2011-04-15 03:34:05 +0000641 prompt "FILO version"
642 default FILO_STABLE
643 depends on PAYLOAD_FILO
644
645config FILO_STABLE
646 bool "0.6.0"
647 help
648 Stable FILO version
649config FILO_MASTER
650 bool "HEAD"
651 help
652 Newest FILO version
653endchoice
654
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000655config PAYLOAD_FILE
Cristi Magherusanb5034d42009-08-17 14:47:32 +0000656 string "Payload path and filename"
Patrick Georgi0588d192009-08-12 15:00:51 +0000657 depends on PAYLOAD_ELF
658 default "payload.elf"
659 help
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000660 The path and filename of the ELF executable file to use as payload.
Patrick Georgi0588d192009-08-12 15:00:51 +0000661
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000662config PAYLOAD_FILE
Patrick Georgi16ae95c2013-08-31 08:26:52 +0200663 string "Linux path and filename"
664 depends on PAYLOAD_LINUX
665 default "bzImage"
666 help
667 The path and filename of the bzImage kernel to use as payload.
668
669config PAYLOAD_FILE
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000670 depends on PAYLOAD_SEABIOS
Stefan Reinaueraff6dc22012-01-21 10:34:22 -0800671 default "$(obj)/seabios/out/bios.bin.elf"
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000672
Stefan Reinauere50952f2011-04-15 03:34:05 +0000673config PAYLOAD_FILE
674 depends on PAYLOAD_FILO
675 default "payloads/external/FILO/filo/build/filo.elf"
676
Stefan Reinauer275fb632013-02-05 13:58:29 -0800677config PAYLOAD_FILE
Vladimir Serbinenko113a3662013-11-14 12:10:08 +0100678 depends on PAYLOAD_GRUB2
679 default "payloads/external/GRUB2/grub2/build/default_payload.elf"
680
681config PAYLOAD_FILE
Stefan Reinauer275fb632013-02-05 13:58:29 -0800682 string "Tianocore firmware volume"
683 depends on PAYLOAD_TIANOCORE
684 default "COREBOOT.fd"
685 help
686 The result of a corebootPkg build
687
Uwe Hermann168b11b2009-10-07 16:15:40 +0000688# TODO: Defined if no payload? Breaks build?
689config COMPRESSED_PAYLOAD_LZMA
690 bool "Use LZMA compression for payloads"
691 default y
Vladimir Serbinenko113a3662013-11-14 12:10:08 +0100692 depends on PAYLOAD_ELF || PAYLOAD_SEABIOS || PAYLOAD_FILO || PAYLOAD_TIANOCORE || PAYLOAD_GRUB2
Uwe Hermann168b11b2009-10-07 16:15:40 +0000693 help
694 In order to reduce the size payloads take up in the ROM chip
695 coreboot can compress them using the LZMA algorithm.
696
Patrick Georgi16ae95c2013-08-31 08:26:52 +0200697config LINUX_COMMAND_LINE
698 string "Linux command line"
699 depends on PAYLOAD_LINUX
700 default ""
701 help
702 A command line to add to the Linux kernel.
703
704config LINUX_INITRD
705 string "Linux initrd"
706 depends on PAYLOAD_LINUX
707 default ""
708 help
709 An initrd image to add to the Linux kernel.
710
Peter Stugea758ca22009-09-17 16:21:31 +0000711endmenu
712
Uwe Hermann168b11b2009-10-07 16:15:40 +0000713menu "Debugging"
714
715# TODO: Better help text and detailed instructions.
Patrick Georgi0588d192009-08-12 15:00:51 +0000716config GDB_STUB
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000717 bool "GDB debugging support"
Rudolf Marek65888022012-03-25 20:51:16 +0200718 default n
Patrick Georgi0588d192009-08-12 15:00:51 +0000719 help
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000720 If enabled, you will be able to set breakpoints for gdb debugging.
Stefan Reinauer8677a232010-12-11 20:33:41 +0000721 See src/arch/x86/lib/c_start.S for details.
Patrick Georgi0588d192009-08-12 15:00:51 +0000722
Denis 'GNUtoo' Cariklie4cece02012-06-22 15:56:37 +0200723config GDB_WAIT
724 bool "Wait for a GDB connection"
725 default n
726 depends on GDB_STUB
727 help
728 If enabled, coreboot will wait for a GDB connection.
729
Stefan Reinauerfe422182012-05-02 16:33:18 -0700730config DEBUG_CBFS
731 bool "Output verbose CBFS debug messages"
732 default n
Stefan Reinauerfe422182012-05-02 16:33:18 -0700733 help
734 This option enables additional CBFS related debug messages.
735
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000736config HAVE_DEBUG_RAM_SETUP
737 def_bool n
738
Uwe Hermann01ce6012010-03-05 10:03:50 +0000739config DEBUG_RAM_SETUP
740 bool "Output verbose RAM init debug messages"
741 default n
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000742 depends on HAVE_DEBUG_RAM_SETUP
Uwe Hermann01ce6012010-03-05 10:03:50 +0000743 help
744 This option enables additional RAM init related debug messages.
745 It is recommended to enable this when debugging issues on your
746 board which might be RAM init related.
747
748 Note: This option will increase the size of the coreboot image.
749
750 If unsure, say N.
751
Patrick Georgie82618d2010-10-01 14:50:12 +0000752config HAVE_DEBUG_CAR
753 def_bool n
754
Peter Stuge5015f792010-11-10 02:00:32 +0000755config DEBUG_CAR
756 def_bool n
757 depends on HAVE_DEBUG_CAR
758
759if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
Uwe Hermanna953f372010-11-10 00:14:32 +0000760# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
761# printk(BIOS_DEBUG, ...) calls.
Patrick Georgie82618d2010-10-01 14:50:12 +0000762config DEBUG_CAR
763 bool "Output verbose Cache-as-RAM debug messages"
764 default n
Peter Stuge5015f792010-11-10 02:00:32 +0000765 depends on HAVE_DEBUG_CAR
Patrick Georgie82618d2010-10-01 14:50:12 +0000766 help
767 This option enables additional CAR related debug messages.
Peter Stuge5015f792010-11-10 02:00:32 +0000768endif
Patrick Georgie82618d2010-10-01 14:50:12 +0000769
Myles Watson80e914ff2010-06-01 19:25:31 +0000770config DEBUG_PIRQ
771 bool "Check PIRQ table consistency"
772 default n
773 depends on GENERATE_PIRQ_TABLE
774 help
775 If unsure, say N.
776
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000777config HAVE_DEBUG_SMBUS
778 def_bool n
779
Uwe Hermann01ce6012010-03-05 10:03:50 +0000780config DEBUG_SMBUS
781 bool "Output verbose SMBus debug messages"
782 default n
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000783 depends on HAVE_DEBUG_SMBUS
Uwe Hermann01ce6012010-03-05 10:03:50 +0000784 help
785 This option enables additional SMBus (and SPD) debug messages.
786
787 Note: This option will increase the size of the coreboot image.
788
789 If unsure, say N.
790
791config DEBUG_SMI
792 bool "Output verbose SMI debug messages"
793 default n
794 depends on HAVE_SMI_HANDLER
795 help
796 This option enables additional SMI related debug messages.
797
798 Note: This option will increase the size of the coreboot image.
799
800 If unsure, say N.
801
Stefan Reinauerbc0f7a62010-08-01 15:41:14 +0000802config DEBUG_SMM_RELOCATION
803 bool "Debug SMM relocation code"
804 default n
805 depends on HAVE_SMI_HANDLER
806 help
807 This option enables additional SMM handler relocation related
808 debug messages.
809
810 Note: This option will increase the size of the coreboot image.
811
812 If unsure, say N.
813
Uwe Hermanna953f372010-11-10 00:14:32 +0000814# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
815# printk(BIOS_DEBUG, ...) calls.
816config DEBUG_MALLOC
Stefan Reinauer95a63962012-11-13 17:00:01 -0800817 prompt "Output verbose malloc debug messages" if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
818 bool
Uwe Hermanna953f372010-11-10 00:14:32 +0000819 default n
Uwe Hermanna953f372010-11-10 00:14:32 +0000820 help
821 This option enables additional malloc related debug messages.
822
823 Note: This option will increase the size of the coreboot image.
824
825 If unsure, say N.
Cristian Măgherușan-Stanciu9f52ea42011-07-02 00:44:39 +0300826
827# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
828# printk(BIOS_DEBUG, ...) calls.
Cristian Măgherușan-Stanciu9f52ea42011-07-02 00:44:39 +0300829config DEBUG_ACPI
Stefan Reinauer95a63962012-11-13 17:00:01 -0800830 prompt "Output verbose ACPI debug messages" if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
831 bool
Cristian Măgherușan-Stanciu9f52ea42011-07-02 00:44:39 +0300832 default n
833 help
834 This option enables additional ACPI related debug messages.
835
836 Note: This option will slightly increase the size of the coreboot image.
837
838 If unsure, say N.
Cristian Măgherușan-Stanciu9f52ea42011-07-02 00:44:39 +0300839
Uwe Hermanna953f372010-11-10 00:14:32 +0000840# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
841# printk(BIOS_DEBUG, ...) calls.
Myles Watson6c9bc012010-09-07 22:30:15 +0000842config REALMODE_DEBUG
Stefan Reinauer95a63962012-11-13 17:00:01 -0800843 prompt "Enable debug messages for option ROM execution" if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
844 bool
Myles Watson6c9bc012010-09-07 22:30:15 +0000845 default n
Peter Stuge5015f792010-11-10 02:00:32 +0000846 depends on PCI_OPTION_ROM_RUN_REALMODE
Myles Watson6c9bc012010-09-07 22:30:15 +0000847 help
848 This option enables additional x86emu related debug messages.
849
850 Note: This option will increase the time to emulate a ROM.
851
852 If unsure, say N.
853
Uwe Hermann01ce6012010-03-05 10:03:50 +0000854config X86EMU_DEBUG
855 bool "Output verbose x86emu debug messages"
856 default n
857 depends on PCI_OPTION_ROM_RUN_YABEL
858 help
859 This option enables additional x86emu related debug messages.
860
861 Note: This option will increase the size of the coreboot image.
862
863 If unsure, say N.
864
865config X86EMU_DEBUG_JMP
866 bool "Trace JMP/RETF"
867 default n
868 depends on X86EMU_DEBUG
869 help
870 Print information about JMP and RETF opcodes from x86emu.
871
872 Note: This option will increase the size of the coreboot image.
873
874 If unsure, say N.
875
876config X86EMU_DEBUG_TRACE
877 bool "Trace all opcodes"
878 default n
879 depends on X86EMU_DEBUG
880 help
881 Print _all_ opcodes that are executed by x86emu.
Stefan Reinauer14e22772010-04-27 06:56:47 +0000882
Uwe Hermann01ce6012010-03-05 10:03:50 +0000883 WARNING: This will produce a LOT of output and take a long time.
884
885 Note: This option will increase the size of the coreboot image.
886
887 If unsure, say N.
888
889config X86EMU_DEBUG_PNP
890 bool "Log Plug&Play accesses"
891 default n
892 depends on X86EMU_DEBUG
893 help
894 Print Plug And Play accesses made by option ROMs.
895
896 Note: This option will increase the size of the coreboot image.
897
898 If unsure, say N.
899
900config X86EMU_DEBUG_DISK
901 bool "Log Disk I/O"
902 default n
903 depends on X86EMU_DEBUG
904 help
905 Print Disk I/O related messages.
906
907 Note: This option will increase the size of the coreboot image.
908
909 If unsure, say N.
910
911config X86EMU_DEBUG_PMM
912 bool "Log PMM"
913 default n
914 depends on X86EMU_DEBUG
915 help
916 Print messages related to POST Memory Manager (PMM).
917
918 Note: This option will increase the size of the coreboot image.
919
920 If unsure, say N.
921
922
923config X86EMU_DEBUG_VBE
924 bool "Debug VESA BIOS Extensions"
925 default n
926 depends on X86EMU_DEBUG
927 help
928 Print messages related to VESA BIOS Extension (VBE) functions.
929
930 Note: This option will increase the size of the coreboot image.
931
932 If unsure, say N.
933
934config X86EMU_DEBUG_INT10
935 bool "Redirect INT10 output to console"
936 default n
937 depends on X86EMU_DEBUG
938 help
939 Let INT10 (i.e. character output) calls print messages to debug output.
940
941 Note: This option will increase the size of the coreboot image.
942
943 If unsure, say N.
944
945config X86EMU_DEBUG_INTERRUPTS
946 bool "Log intXX calls"
947 default n
948 depends on X86EMU_DEBUG
949 help
950 Print messages related to interrupt handling.
951
952 Note: This option will increase the size of the coreboot image.
953
954 If unsure, say N.
955
956config X86EMU_DEBUG_CHECK_VMEM_ACCESS
957 bool "Log special memory accesses"
958 default n
959 depends on X86EMU_DEBUG
960 help
961 Print messages related to accesses to certain areas of the virtual
962 memory (e.g. BDA (BIOS Data Area) or interrupt vectors)
963
964 Note: This option will increase the size of the coreboot image.
965
966 If unsure, say N.
967
968config X86EMU_DEBUG_MEM
969 bool "Log all memory accesses"
970 default n
971 depends on X86EMU_DEBUG
972 help
973 Print memory accesses made by option ROM.
974 Note: This also includes accesses to fetch instructions.
975
976 Note: This option will increase the size of the coreboot image.
977
978 If unsure, say N.
979
980config X86EMU_DEBUG_IO
981 bool "Log IO accesses"
982 default n
983 depends on X86EMU_DEBUG
984 help
985 Print I/O accesses made by option ROM.
986
987 Note: This option will increase the size of the coreboot image.
988
989 If unsure, say N.
990
Denis 'GNUtoo' Carikli4cdc5d62013-05-15 00:19:49 +0200991config X86EMU_DEBUG_TIMINGS
992 bool "Output timing information"
993 default n
994 depends on X86EMU_DEBUG && UDELAY_LAPIC && HAVE_MONOTONIC_TIMER
995 help
996 Print timing information needed by i915tool.
997
998 If unsure, say N.
999
Stefan Reinauerdfb098d2011-11-17 12:50:54 -08001000config DEBUG_TPM
1001 bool "Output verbose TPM debug messages"
1002 default n
1003 depends on TPM
1004 help
1005 This option enables additional TPM related debug messages.
1006
Stefan Reinauer1c56d9b2012-05-10 11:27:32 -07001007config DEBUG_SPI_FLASH
1008 bool "Output verbose SPI flash debug messages"
1009 default n
1010 depends on SPI_FLASH
1011 help
1012 This option enables additional SPI flash related debug messages.
1013
Kyösti Mälkki3be80cc2013-06-06 10:46:37 +03001014config DEBUG_USBDEBUG
1015 bool "Output verbose USB 2.0 EHCI debug dongle messages"
1016 default n
1017 depends on USBDEBUG
1018 help
1019 This option enables additional USB 2.0 debug dongle related messages.
1020
1021 Select this to debug the connection of usbdebug dongle. Note that
1022 you need some other working console to receive the messages.
1023
Stefan Reinauer8e073822012-04-04 00:07:22 +02001024if SOUTHBRIDGE_INTEL_BD82X6X && DEFAULT_CONSOLE_LOGLEVEL_8
1025# Only visible with the right southbridge and loglevel.
1026config DEBUG_INTEL_ME
1027 bool "Verbose logging for Intel Management Engine"
1028 default n
1029 help
1030 Enable verbose logging for Intel Management Engine driver that
1031 is present on Intel 6-series chipsets.
1032endif
1033
Rudolf Marek7f0e9302011-09-02 23:23:41 +02001034config TRACE
1035 bool "Trace function calls"
1036 default n
1037 help
1038 If enabled, every function will print information to console once
1039 the function is entered. The syntax is ~0xaaaabbbb(0xccccdddd)
1040 the 0xaaaabbbb is the actual function and 0xccccdddd is EIP
1041 of calling function. Please note some printk releated functions
1042 are omitted from trace to have good looking console dumps.
Stefan Reinauerd37ab452012-12-18 16:23:28 -08001043
1044config DEBUG_COVERAGE
1045 bool "Debug code coverage"
1046 default n
1047 depends on COVERAGE
1048 help
1049 If enabled, the code coverage hooks in coreboot will output some
1050 information about the coverage data that is dumped.
1051
Uwe Hermann168b11b2009-10-07 16:15:40 +00001052endmenu
1053
Myles Watsond73c1b52009-10-26 15:14:07 +00001054# These probably belong somewhere else, but they are needed somewhere.
Myles Watsond73c1b52009-10-26 15:14:07 +00001055config ENABLE_APIC_EXT_ID
1056 bool
1057 default n
Myles Watson2e672732009-11-12 16:38:03 +00001058
1059config WARNINGS_ARE_ERRORS
1060 bool
Stefan Reinauer6f57b512010-07-08 16:41:05 +00001061 default y
Patrick Georgi436f99b2009-11-27 16:55:13 +00001062
Peter Stuge51eafde2010-10-13 06:23:02 +00001063# The four POWER_BUTTON_DEFAULT_ENABLE, POWER_BUTTON_DEFAULT_DISABLE,
1064# POWER_BUTTON_FORCE_ENABLE and POWER_BUTTON_FORCE_DISABLE options are
1065# mutually exclusive. One of these options must be selected in the
1066# mainboard Kconfig if the chipset supports enabling and disabling of
1067# the power button. Chipset code uses the ENABLE_POWER_BUTTON option set
1068# in mainboard/Kconfig to know if the button should be enabled or not.
1069
1070config POWER_BUTTON_DEFAULT_ENABLE
1071 def_bool n
1072 help
1073 Select when the board has a power button which can optionally be
1074 disabled by the user.
1075
1076config POWER_BUTTON_DEFAULT_DISABLE
1077 def_bool n
1078 help
1079 Select when the board has a power button which can optionally be
1080 enabled by the user, e.g. when the board ships with a jumper over
1081 the power switch contacts.
1082
1083config POWER_BUTTON_FORCE_ENABLE
1084 def_bool n
1085 help
1086 Select when the board requires that the power button is always
1087 enabled.
1088
1089config POWER_BUTTON_FORCE_DISABLE
1090 def_bool n
1091 help
1092 Select when the board requires that the power button is always
1093 disabled, e.g. when it has been hardwired to ground.
1094
1095config POWER_BUTTON_IS_OPTIONAL
1096 bool
1097 default y if POWER_BUTTON_DEFAULT_ENABLE || POWER_BUTTON_DEFAULT_DISABLE
1098 default n if !(POWER_BUTTON_DEFAULT_ENABLE || POWER_BUTTON_DEFAULT_DISABLE)
1099 help
1100 Internal option that controls ENABLE_POWER_BUTTON visibility.
1101
Stefan Reinauerb89a7612012-03-30 01:01:51 +02001102source src/vendorcode/Kconfig