blob: bed6c7f8ee4b501539cdd1af1017d444cd9dd7f5 [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
Myles Watsonb8e20272009-10-15 13:35:47 +0000432config HAVE_ACPI_TABLES
433 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000434 help
435 This variable specifies whether a given board has ACPI table support.
436 It is usually set in mainboard/*/Kconfig.
437 Whether or not the ACPI tables are actually generated by coreboot
438 is configurable by the user via GENERATE_ACPI_TABLES.
Myles Watsonb8e20272009-10-15 13:35:47 +0000439
440config HAVE_MP_TABLE
441 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000442 help
443 This variable specifies whether a given board has MP table support.
444 It is usually set in mainboard/*/Kconfig.
445 Whether or not the MP table is actually generated by coreboot
446 is configurable by the user via GENERATE_MP_TABLE.
Myles Watsonb8e20272009-10-15 13:35:47 +0000447
448config HAVE_PIRQ_TABLE
449 bool
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000450 help
451 This variable specifies whether a given board has PIRQ table support.
452 It is usually set in mainboard/*/Kconfig.
453 Whether or not the PIRQ table is actually generated by coreboot
454 is configurable by the user via GENERATE_PIRQ_TABLE.
Myles Watsonb8e20272009-10-15 13:35:47 +0000455
Alexandru Gagniuc70c660f2012-08-23 02:32:58 -0500456config MAX_PIRQ_LINKS
457 int
458 default 4
459 help
460 This variable specifies the number of PIRQ interrupt links which are
461 routable. On most chipsets, this is 4, INTA through INTD. Some
462 chipsets offer more than four links, commonly up to INTH. They may
463 also have a separate link for ATA or IOAPIC interrupts. When the PIRQ
464 table specifies links greater than 4, pirq_route_irqs will not
465 function properly, unless this variable is correctly set.
466
Myles Watsond73c1b52009-10-26 15:14:07 +0000467#These Options are here to avoid "undefined" warnings.
468#The actual selection and help texts are in the following menu.
469
Uwe Hermann168b11b2009-10-07 16:15:40 +0000470menu "System tables"
Myles Watson45bb25f2009-09-22 18:49:08 +0000471
Myles Watson45bb25f2009-09-22 18:49:08 +0000472config MULTIBOOT
Uwe Hermann168b11b2009-10-07 16:15:40 +0000473 bool "Generate Multiboot tables (for GRUB2)"
Ronald G. Minnich7f91d922009-11-09 17:56:47 +0000474 default y
Stefan Reinauera957b7a2013-02-14 13:39:25 -0800475 depends on ARCH_X86
Myles Watson45bb25f2009-09-22 18:49:08 +0000476
Myles Watsonb8e20272009-10-15 13:35:47 +0000477config GENERATE_ACPI_TABLES
Stefan Reinauer56cd70b2012-11-13 17:33:08 -0800478 prompt "Generate ACPI tables" if HAVE_ACPI_TABLES
479 bool
480 default HAVE_ACPI_TABLES
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000481 help
482 Generate ACPI tables for this board.
483
484 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000485
Myles Watsonb8e20272009-10-15 13:35:47 +0000486config GENERATE_MP_TABLE
Stefan Reinauer56cd70b2012-11-13 17:33:08 -0800487 prompt "Generate an MP table" if HAVE_MP_TABLE || DRIVERS_GENERIC_IOAPIC
488 bool
489 default HAVE_MP_TABLE || DRIVERS_GENERIC_IOAPIC
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000490 help
491 Generate an MP table (conforming to the Intel MultiProcessor
492 specification 1.4) for this board.
493
494 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000495
Myles Watsonb8e20272009-10-15 13:35:47 +0000496config GENERATE_PIRQ_TABLE
Stefan Reinauer56cd70b2012-11-13 17:33:08 -0800497 prompt "Generate a PIRQ table" if HAVE_PIRQ_TABLE
498 bool
499 default HAVE_PIRQ_TABLE
Uwe Hermann6ba13bb2009-10-15 17:49:07 +0000500 help
501 Generate a PIRQ table for this board.
502
503 If unsure, say Y.
Myles Watson45bb25f2009-09-22 18:49:08 +0000504
Sven Schnelle164bcfd2011-08-14 20:56:34 +0200505config GENERATE_SMBIOS_TABLES
506 depends on ARCH_X86
507 bool "Generate SMBIOS tables"
508 default y
509 help
510 Generate SMBIOS tables for this board.
511
512 If unsure, say Y.
513
Myles Watson45bb25f2009-09-22 18:49:08 +0000514endmenu
515
Patrick Georgi0588d192009-08-12 15:00:51 +0000516menu "Payload"
517
Patrick Georgi0588d192009-08-12 15:00:51 +0000518choice
Uwe Hermann168b11b2009-10-07 16:15:40 +0000519 prompt "Add a payload"
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000520 default PAYLOAD_NONE if !ARCH_X86
521 default PAYLOAD_SEABIOS if ARCH_X86
Patrick Georgi0588d192009-08-12 15:00:51 +0000522
Uwe Hermann168b11b2009-10-07 16:15:40 +0000523config PAYLOAD_NONE
524 bool "None"
525 help
526 Select this option if you want to create an "empty" coreboot
527 ROM image for a certain mainboard, i.e. a coreboot ROM image
528 which does not yet contain a payload.
529
530 For such an image to be useful, you have to use 'cbfstool'
531 to add a payload to the ROM image later.
532
Patrick Georgi0588d192009-08-12 15:00:51 +0000533config PAYLOAD_ELF
Uwe Hermann168b11b2009-10-07 16:15:40 +0000534 bool "An ELF executable payload"
Patrick Georgi0588d192009-08-12 15:00:51 +0000535 help
536 Select this option if you have a payload image (an ELF file)
537 which coreboot should run as soon as the basic hardware
538 initialization is completed.
539
540 You will be able to specify the location and file name of the
541 payload image later.
Patrick Georgi0588d192009-08-12 15:00:51 +0000542
Patrick Georgi16ae95c2013-08-31 08:26:52 +0200543config PAYLOAD_LINUX
544 bool "A Linux payload"
545 help
546 Select this option if you have a Linux bzImage which coreboot
547 should run as soon as the basic hardware initialization
548 is completed.
549
550 You will be able to specify the location and file name of the
551 payload image later.
552
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000553config PAYLOAD_SEABIOS
554 bool "SeaBIOS"
555 depends on ARCH_X86
556 help
557 Select this option if you want to build a coreboot image
558 with a SeaBIOS payload. If you don't know what this is
559 about, just leave it enabled.
560
561 See http://coreboot.org/Payloads for more information.
562
Stefan Reinauere50952f2011-04-15 03:34:05 +0000563config PAYLOAD_FILO
564 bool "FILO"
565 help
566 Select this option if you want to build a coreboot image
567 with a FILO payload. If you don't know what this is
568 about, just leave it enabled.
569
570 See http://coreboot.org/Payloads for more information.
571
Vladimir Serbinenko113a3662013-11-14 12:10:08 +0100572config PAYLOAD_GRUB2
573 bool "GRUB2"
574 help
575 Select this option if you want to build a coreboot image
576 with a GRUB2 payload. If you don't know what this is
577 about, just leave it enabled.
578
579 See http://coreboot.org/Payloads for more information.
580
Stefan Reinauercc5b3442013-01-15 17:02:58 -0800581config PAYLOAD_TIANOCORE
582 bool "Tiano Core"
583 help
584 Select this option if you want to build a coreboot image
585 with a Tiano Core payload. If you don't know what this is
586 about, just leave it enabled.
587
588 See http://coreboot.org/Payloads for more information.
589
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000590endchoice
591
592choice
593 prompt "SeaBIOS version"
594 default SEABIOS_STABLE
595 depends on PAYLOAD_SEABIOS
596
597config SEABIOS_STABLE
Idwer Vollering1a433092013-03-02 18:27:05 +0100598 bool "1.7.2.1"
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000599 help
600 Stable SeaBIOS version
601config SEABIOS_MASTER
602 bool "master"
603 help
604 Newest SeaBIOS version
Patrick Georgi0588d192009-08-12 15:00:51 +0000605endchoice
606
Peter Stugef0408582013-07-09 19:43:09 +0200607config SEABIOS_PS2_TIMEOUT
608 prompt "PS/2 keyboard controller initialization timeout (milliseconds)" if PAYLOAD_SEABIOS
Patrick Georgi1e44c3f2013-08-16 10:14:38 +0200609 default 0
Peter Stugef0408582013-07-09 19:43:09 +0200610 depends on EXPERT
611 int
612 help
613 Some PS/2 keyboard controllers don't respond to commands immediately
614 after powering on. This specifies how long SeaBIOS will wait for the
615 keyboard controller to become ready before giving up.
616
Stefan Reinauere50952f2011-04-15 03:34:05 +0000617choice
Vladimir Serbinenko113a3662013-11-14 12:10:08 +0100618 prompt "GRUB2 version"
619 default GRUB2_MASTER
620 depends on PAYLOAD_GRUB2
621
622config GRUB2_MASTER
623 bool "HEAD"
624 help
625 Newest GRUB2 version
626endchoice
627
628choice
Stefan Reinauere50952f2011-04-15 03:34:05 +0000629 prompt "FILO version"
630 default FILO_STABLE
631 depends on PAYLOAD_FILO
632
633config FILO_STABLE
634 bool "0.6.0"
635 help
636 Stable FILO version
637config FILO_MASTER
638 bool "HEAD"
639 help
640 Newest FILO version
641endchoice
642
Stefan Reinauerbccbbe62010-12-19 21:20:14 +0000643config PAYLOAD_FILE
Cristi Magherusanb5034d42009-08-17 14:47:32 +0000644 string "Payload path and filename"
Patrick Georgi0588d192009-08-12 15:00:51 +0000645 depends on PAYLOAD_ELF
646 default "payload.elf"
647 help
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000648 The path and filename of the ELF executable file to use as payload.
Patrick Georgi0588d192009-08-12 15:00:51 +0000649
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000650config PAYLOAD_FILE
Patrick Georgi16ae95c2013-08-31 08:26:52 +0200651 string "Linux path and filename"
652 depends on PAYLOAD_LINUX
653 default "bzImage"
654 help
655 The path and filename of the bzImage kernel to use as payload.
656
657config PAYLOAD_FILE
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000658 depends on PAYLOAD_SEABIOS
Stefan Reinaueraff6dc22012-01-21 10:34:22 -0800659 default "$(obj)/seabios/out/bios.bin.elf"
Stefan Reinauerf1939bb2010-12-30 17:39:50 +0000660
Stefan Reinauere50952f2011-04-15 03:34:05 +0000661config PAYLOAD_FILE
662 depends on PAYLOAD_FILO
663 default "payloads/external/FILO/filo/build/filo.elf"
664
Stefan Reinauer275fb632013-02-05 13:58:29 -0800665config PAYLOAD_FILE
Vladimir Serbinenko113a3662013-11-14 12:10:08 +0100666 depends on PAYLOAD_GRUB2
667 default "payloads/external/GRUB2/grub2/build/default_payload.elf"
668
669config PAYLOAD_FILE
Stefan Reinauer275fb632013-02-05 13:58:29 -0800670 string "Tianocore firmware volume"
671 depends on PAYLOAD_TIANOCORE
672 default "COREBOOT.fd"
673 help
674 The result of a corebootPkg build
675
Uwe Hermann168b11b2009-10-07 16:15:40 +0000676# TODO: Defined if no payload? Breaks build?
677config COMPRESSED_PAYLOAD_LZMA
678 bool "Use LZMA compression for payloads"
679 default y
Vladimir Serbinenko113a3662013-11-14 12:10:08 +0100680 depends on PAYLOAD_ELF || PAYLOAD_SEABIOS || PAYLOAD_FILO || PAYLOAD_TIANOCORE || PAYLOAD_GRUB2
Uwe Hermann168b11b2009-10-07 16:15:40 +0000681 help
682 In order to reduce the size payloads take up in the ROM chip
683 coreboot can compress them using the LZMA algorithm.
684
Patrick Georgi16ae95c2013-08-31 08:26:52 +0200685config LINUX_COMMAND_LINE
686 string "Linux command line"
687 depends on PAYLOAD_LINUX
688 default ""
689 help
690 A command line to add to the Linux kernel.
691
692config LINUX_INITRD
693 string "Linux initrd"
694 depends on PAYLOAD_LINUX
695 default ""
696 help
697 An initrd image to add to the Linux kernel.
698
Peter Stugea758ca22009-09-17 16:21:31 +0000699endmenu
700
Uwe Hermann168b11b2009-10-07 16:15:40 +0000701menu "Debugging"
702
703# TODO: Better help text and detailed instructions.
Patrick Georgi0588d192009-08-12 15:00:51 +0000704config GDB_STUB
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000705 bool "GDB debugging support"
Rudolf Marek65888022012-03-25 20:51:16 +0200706 default n
Patrick Georgi0588d192009-08-12 15:00:51 +0000707 help
Uwe Hermann5ec2c2b2009-08-25 00:53:22 +0000708 If enabled, you will be able to set breakpoints for gdb debugging.
Stefan Reinauer8677a232010-12-11 20:33:41 +0000709 See src/arch/x86/lib/c_start.S for details.
Patrick Georgi0588d192009-08-12 15:00:51 +0000710
Denis 'GNUtoo' Cariklie4cece02012-06-22 15:56:37 +0200711config GDB_WAIT
712 bool "Wait for a GDB connection"
713 default n
714 depends on GDB_STUB
715 help
716 If enabled, coreboot will wait for a GDB connection.
717
Stefan Reinauerfe422182012-05-02 16:33:18 -0700718config DEBUG_CBFS
719 bool "Output verbose CBFS debug messages"
720 default n
Stefan Reinauerfe422182012-05-02 16:33:18 -0700721 help
722 This option enables additional CBFS related debug messages.
723
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000724config HAVE_DEBUG_RAM_SETUP
725 def_bool n
726
Uwe Hermann01ce6012010-03-05 10:03:50 +0000727config DEBUG_RAM_SETUP
728 bool "Output verbose RAM init debug messages"
729 default n
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000730 depends on HAVE_DEBUG_RAM_SETUP
Uwe Hermann01ce6012010-03-05 10:03:50 +0000731 help
732 This option enables additional RAM init related debug messages.
733 It is recommended to enable this when debugging issues on your
734 board which might be RAM init related.
735
736 Note: This option will increase the size of the coreboot image.
737
738 If unsure, say N.
739
Patrick Georgie82618d2010-10-01 14:50:12 +0000740config HAVE_DEBUG_CAR
741 def_bool n
742
Peter Stuge5015f792010-11-10 02:00:32 +0000743config DEBUG_CAR
744 def_bool n
745 depends on HAVE_DEBUG_CAR
746
747if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
Uwe Hermanna953f372010-11-10 00:14:32 +0000748# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
749# printk(BIOS_DEBUG, ...) calls.
Patrick Georgie82618d2010-10-01 14:50:12 +0000750config DEBUG_CAR
751 bool "Output verbose Cache-as-RAM debug messages"
752 default n
Peter Stuge5015f792010-11-10 02:00:32 +0000753 depends on HAVE_DEBUG_CAR
Patrick Georgie82618d2010-10-01 14:50:12 +0000754 help
755 This option enables additional CAR related debug messages.
Peter Stuge5015f792010-11-10 02:00:32 +0000756endif
Patrick Georgie82618d2010-10-01 14:50:12 +0000757
Myles Watson80e914ff2010-06-01 19:25:31 +0000758config DEBUG_PIRQ
759 bool "Check PIRQ table consistency"
760 default n
761 depends on GENERATE_PIRQ_TABLE
762 help
763 If unsure, say N.
764
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000765config HAVE_DEBUG_SMBUS
766 def_bool n
767
Uwe Hermann01ce6012010-03-05 10:03:50 +0000768config DEBUG_SMBUS
769 bool "Output verbose SMBus debug messages"
770 default n
Jens Rottmann0d11f2d2010-08-26 12:46:02 +0000771 depends on HAVE_DEBUG_SMBUS
Uwe Hermann01ce6012010-03-05 10:03:50 +0000772 help
773 This option enables additional SMBus (and SPD) debug messages.
774
775 Note: This option will increase the size of the coreboot image.
776
777 If unsure, say N.
778
779config DEBUG_SMI
780 bool "Output verbose SMI debug messages"
781 default n
782 depends on HAVE_SMI_HANDLER
783 help
784 This option enables additional SMI related debug messages.
785
786 Note: This option will increase the size of the coreboot image.
787
788 If unsure, say N.
789
Stefan Reinauerbc0f7a62010-08-01 15:41:14 +0000790config DEBUG_SMM_RELOCATION
791 bool "Debug SMM relocation code"
792 default n
793 depends on HAVE_SMI_HANDLER
794 help
795 This option enables additional SMM handler relocation related
796 debug messages.
797
798 Note: This option will increase the size of the coreboot image.
799
800 If unsure, say N.
801
Uwe Hermanna953f372010-11-10 00:14:32 +0000802# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
803# printk(BIOS_DEBUG, ...) calls.
804config DEBUG_MALLOC
Stefan Reinauer95a63962012-11-13 17:00:01 -0800805 prompt "Output verbose malloc debug messages" if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
806 bool
Uwe Hermanna953f372010-11-10 00:14:32 +0000807 default n
Uwe Hermanna953f372010-11-10 00:14:32 +0000808 help
809 This option enables additional malloc related debug messages.
810
811 Note: This option will increase the size of the coreboot image.
812
813 If unsure, say N.
Cristian Măgherușan-Stanciu9f52ea42011-07-02 00:44:39 +0300814
815# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
816# printk(BIOS_DEBUG, ...) calls.
Cristian Măgherușan-Stanciu9f52ea42011-07-02 00:44:39 +0300817config DEBUG_ACPI
Stefan Reinauer95a63962012-11-13 17:00:01 -0800818 prompt "Output verbose ACPI debug messages" if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
819 bool
Cristian Măgherușan-Stanciu9f52ea42011-07-02 00:44:39 +0300820 default n
821 help
822 This option enables additional ACPI related debug messages.
823
824 Note: This option will slightly increase the size of the coreboot image.
825
826 If unsure, say N.
Cristian Măgherușan-Stanciu9f52ea42011-07-02 00:44:39 +0300827
Uwe Hermanna953f372010-11-10 00:14:32 +0000828# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
829# printk(BIOS_DEBUG, ...) calls.
Myles Watson6c9bc012010-09-07 22:30:15 +0000830config REALMODE_DEBUG
Stefan Reinauer95a63962012-11-13 17:00:01 -0800831 prompt "Enable debug messages for option ROM execution" if DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
832 bool
Myles Watson6c9bc012010-09-07 22:30:15 +0000833 default n
Peter Stuge5015f792010-11-10 02:00:32 +0000834 depends on PCI_OPTION_ROM_RUN_REALMODE
Myles Watson6c9bc012010-09-07 22:30:15 +0000835 help
836 This option enables additional x86emu related debug messages.
837
838 Note: This option will increase the time to emulate a ROM.
839
840 If unsure, say N.
841
Uwe Hermann01ce6012010-03-05 10:03:50 +0000842config X86EMU_DEBUG
843 bool "Output verbose x86emu debug messages"
844 default n
845 depends on PCI_OPTION_ROM_RUN_YABEL
846 help
847 This option enables additional x86emu related debug messages.
848
849 Note: This option will increase the size of the coreboot image.
850
851 If unsure, say N.
852
853config X86EMU_DEBUG_JMP
854 bool "Trace JMP/RETF"
855 default n
856 depends on X86EMU_DEBUG
857 help
858 Print information about JMP and RETF opcodes from x86emu.
859
860 Note: This option will increase the size of the coreboot image.
861
862 If unsure, say N.
863
864config X86EMU_DEBUG_TRACE
865 bool "Trace all opcodes"
866 default n
867 depends on X86EMU_DEBUG
868 help
869 Print _all_ opcodes that are executed by x86emu.
Stefan Reinauer14e22772010-04-27 06:56:47 +0000870
Uwe Hermann01ce6012010-03-05 10:03:50 +0000871 WARNING: This will produce a LOT of output and take a long time.
872
873 Note: This option will increase the size of the coreboot image.
874
875 If unsure, say N.
876
877config X86EMU_DEBUG_PNP
878 bool "Log Plug&Play accesses"
879 default n
880 depends on X86EMU_DEBUG
881 help
882 Print Plug And Play accesses made by option ROMs.
883
884 Note: This option will increase the size of the coreboot image.
885
886 If unsure, say N.
887
888config X86EMU_DEBUG_DISK
889 bool "Log Disk I/O"
890 default n
891 depends on X86EMU_DEBUG
892 help
893 Print Disk I/O related messages.
894
895 Note: This option will increase the size of the coreboot image.
896
897 If unsure, say N.
898
899config X86EMU_DEBUG_PMM
900 bool "Log PMM"
901 default n
902 depends on X86EMU_DEBUG
903 help
904 Print messages related to POST Memory Manager (PMM).
905
906 Note: This option will increase the size of the coreboot image.
907
908 If unsure, say N.
909
910
911config X86EMU_DEBUG_VBE
912 bool "Debug VESA BIOS Extensions"
913 default n
914 depends on X86EMU_DEBUG
915 help
916 Print messages related to VESA BIOS Extension (VBE) functions.
917
918 Note: This option will increase the size of the coreboot image.
919
920 If unsure, say N.
921
922config X86EMU_DEBUG_INT10
923 bool "Redirect INT10 output to console"
924 default n
925 depends on X86EMU_DEBUG
926 help
927 Let INT10 (i.e. character output) calls print messages to debug output.
928
929 Note: This option will increase the size of the coreboot image.
930
931 If unsure, say N.
932
933config X86EMU_DEBUG_INTERRUPTS
934 bool "Log intXX calls"
935 default n
936 depends on X86EMU_DEBUG
937 help
938 Print messages related to interrupt handling.
939
940 Note: This option will increase the size of the coreboot image.
941
942 If unsure, say N.
943
944config X86EMU_DEBUG_CHECK_VMEM_ACCESS
945 bool "Log special memory accesses"
946 default n
947 depends on X86EMU_DEBUG
948 help
949 Print messages related to accesses to certain areas of the virtual
950 memory (e.g. BDA (BIOS Data Area) or interrupt vectors)
951
952 Note: This option will increase the size of the coreboot image.
953
954 If unsure, say N.
955
956config X86EMU_DEBUG_MEM
957 bool "Log all memory accesses"
958 default n
959 depends on X86EMU_DEBUG
960 help
961 Print memory accesses made by option ROM.
962 Note: This also includes accesses to fetch instructions.
963
964 Note: This option will increase the size of the coreboot image.
965
966 If unsure, say N.
967
968config X86EMU_DEBUG_IO
969 bool "Log IO accesses"
970 default n
971 depends on X86EMU_DEBUG
972 help
973 Print I/O accesses made by option ROM.
974
975 Note: This option will increase the size of the coreboot image.
976
977 If unsure, say N.
978
Denis 'GNUtoo' Carikli4cdc5d62013-05-15 00:19:49 +0200979config X86EMU_DEBUG_TIMINGS
980 bool "Output timing information"
981 default n
982 depends on X86EMU_DEBUG && UDELAY_LAPIC && HAVE_MONOTONIC_TIMER
983 help
984 Print timing information needed by i915tool.
985
986 If unsure, say N.
987
Stefan Reinauerdfb098d2011-11-17 12:50:54 -0800988config DEBUG_TPM
989 bool "Output verbose TPM debug messages"
990 default n
991 depends on TPM
992 help
993 This option enables additional TPM related debug messages.
994
Stefan Reinauer1c56d9b2012-05-10 11:27:32 -0700995config DEBUG_SPI_FLASH
996 bool "Output verbose SPI flash debug messages"
997 default n
998 depends on SPI_FLASH
999 help
1000 This option enables additional SPI flash related debug messages.
1001
Kyösti Mälkki3be80cc2013-06-06 10:46:37 +03001002config DEBUG_USBDEBUG
1003 bool "Output verbose USB 2.0 EHCI debug dongle messages"
1004 default n
1005 depends on USBDEBUG
1006 help
1007 This option enables additional USB 2.0 debug dongle related messages.
1008
1009 Select this to debug the connection of usbdebug dongle. Note that
1010 you need some other working console to receive the messages.
1011
Stefan Reinauer8e073822012-04-04 00:07:22 +02001012if SOUTHBRIDGE_INTEL_BD82X6X && DEFAULT_CONSOLE_LOGLEVEL_8
1013# Only visible with the right southbridge and loglevel.
1014config DEBUG_INTEL_ME
1015 bool "Verbose logging for Intel Management Engine"
1016 default n
1017 help
1018 Enable verbose logging for Intel Management Engine driver that
1019 is present on Intel 6-series chipsets.
1020endif
1021
Rudolf Marek7f0e9302011-09-02 23:23:41 +02001022config TRACE
1023 bool "Trace function calls"
1024 default n
1025 help
1026 If enabled, every function will print information to console once
1027 the function is entered. The syntax is ~0xaaaabbbb(0xccccdddd)
1028 the 0xaaaabbbb is the actual function and 0xccccdddd is EIP
1029 of calling function. Please note some printk releated functions
1030 are omitted from trace to have good looking console dumps.
Stefan Reinauerd37ab452012-12-18 16:23:28 -08001031
1032config DEBUG_COVERAGE
1033 bool "Debug code coverage"
1034 default n
1035 depends on COVERAGE
1036 help
1037 If enabled, the code coverage hooks in coreboot will output some
1038 information about the coverage data that is dumped.
1039
Uwe Hermann168b11b2009-10-07 16:15:40 +00001040endmenu
1041
Myles Watsond73c1b52009-10-26 15:14:07 +00001042# These probably belong somewhere else, but they are needed somewhere.
Myles Watsond73c1b52009-10-26 15:14:07 +00001043config ENABLE_APIC_EXT_ID
1044 bool
1045 default n
Myles Watson2e672732009-11-12 16:38:03 +00001046
1047config WARNINGS_ARE_ERRORS
1048 bool
Stefan Reinauer6f57b512010-07-08 16:41:05 +00001049 default y
Patrick Georgi436f99b2009-11-27 16:55:13 +00001050
Peter Stuge51eafde2010-10-13 06:23:02 +00001051# The four POWER_BUTTON_DEFAULT_ENABLE, POWER_BUTTON_DEFAULT_DISABLE,
1052# POWER_BUTTON_FORCE_ENABLE and POWER_BUTTON_FORCE_DISABLE options are
1053# mutually exclusive. One of these options must be selected in the
1054# mainboard Kconfig if the chipset supports enabling and disabling of
1055# the power button. Chipset code uses the ENABLE_POWER_BUTTON option set
1056# in mainboard/Kconfig to know if the button should be enabled or not.
1057
1058config POWER_BUTTON_DEFAULT_ENABLE
1059 def_bool n
1060 help
1061 Select when the board has a power button which can optionally be
1062 disabled by the user.
1063
1064config POWER_BUTTON_DEFAULT_DISABLE
1065 def_bool n
1066 help
1067 Select when the board has a power button which can optionally be
1068 enabled by the user, e.g. when the board ships with a jumper over
1069 the power switch contacts.
1070
1071config POWER_BUTTON_FORCE_ENABLE
1072 def_bool n
1073 help
1074 Select when the board requires that the power button is always
1075 enabled.
1076
1077config POWER_BUTTON_FORCE_DISABLE
1078 def_bool n
1079 help
1080 Select when the board requires that the power button is always
1081 disabled, e.g. when it has been hardwired to ground.
1082
1083config POWER_BUTTON_IS_OPTIONAL
1084 bool
1085 default y if POWER_BUTTON_DEFAULT_ENABLE || POWER_BUTTON_DEFAULT_DISABLE
1086 default n if !(POWER_BUTTON_DEFAULT_ENABLE || POWER_BUTTON_DEFAULT_DISABLE)
1087 help
1088 Internal option that controls ENABLE_POWER_BUTTON visibility.
1089
Stefan Reinauerb89a7612012-03-30 01:01:51 +02001090source src/vendorcode/Kconfig